From 6c5f32cdd60afd726f4605382884812345edd741 Mon Sep 17 00:00:00 2001 From: Migara Ekanayake <2110772+migara@users.noreply.github.com> Date: Wed, 22 Jan 2025 18:21:33 +0000 Subject: [PATCH] auto-genereated rc.3 --- crypto/ike/gateway/entry.go | 204 +- device/adminrole/entry.go | 7558 ++++++------- device/dynamicupdates/config.go | 1454 +-- device/services/dns/config.go | 6 +- device/services/ntp/config.go | 52 +- network/interface/aggregate/entry.go | 2768 ++--- network/interface/ethernet/entry.go | 5342 +++++----- network/interface/ethernet/location.go | 6 +- network/interface/loopback/entry.go | 44 +- network/interface/tunnel/entry.go | 86 +- network/interface/vlan/entry.go | 2130 ++-- network/tunnel/ipsec/entry.go | 1074 +- network/virtual_router/entry.go | 10522 +++++++++---------- network/zone/entry.go | 120 +- objects/extdynlist/entry.go | 1114 +- objects/profiles/antivirus/entry.go | 42 +- objects/profiles/fileblocking/entry.go | 16 +- objects/profiles/ikecrypto/entry.go | 6 +- objects/profiles/ipseccrypto/entry.go | 66 +- objects/profiles/logforwarding/entry.go | 164 +- objects/profiles/urlfiltering/entry.go | 98 +- objects/profiles/vulnerability/entry.go | 486 +- objects/profiles/wildfireanalysis/entry.go | 28 +- objects/service/entry.go | 32 +- panorama/devicegroup/entry.go | 12 +- panorama/template_variable/entry.go | 80 +- policies/rules/decryption/entry.go | 36 +- policies/rules/nat/entry.go | 98 +- policies/rules/security/entry.go | 140 +- security/profiles/spyware/entry.go | 674 +- 30 files changed, 17229 insertions(+), 17229 deletions(-) diff --git a/crypto/ike/gateway/entry.go b/crypto/ike/gateway/entry.go index 0ce2826..00b92e2 100644 --- a/crypto/ike/gateway/entry.go +++ b/crypto/ike/gateway/entry.go @@ -308,9 +308,6 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["AuthenticationCertificate"]; ok { nestedAuthentication.Certificate.Misc = o.Misc["AuthenticationCertificate"] } - if o.Authentication.Certificate.AllowIdPayloadMismatch != nil { - nestedAuthentication.Certificate.AllowIdPayloadMismatch = util.YesNo(o.Authentication.Certificate.AllowIdPayloadMismatch, nil) - } if o.Authentication.Certificate.CertificateProfile != nil { nestedAuthentication.Certificate.CertificateProfile = o.Authentication.Certificate.CertificateProfile } @@ -341,6 +338,9 @@ func specifyEntry(o *Entry) (any, error) { if o.Authentication.Certificate.UseManagementAsSource != nil { nestedAuthentication.Certificate.UseManagementAsSource = util.YesNo(o.Authentication.Certificate.UseManagementAsSource, nil) } + if o.Authentication.Certificate.AllowIdPayloadMismatch != nil { + nestedAuthentication.Certificate.AllowIdPayloadMismatch = util.YesNo(o.Authentication.Certificate.AllowIdPayloadMismatch, nil) + } } if o.Authentication.PreSharedKey != nil { nestedAuthentication.PreSharedKey = &AuthenticationPreSharedKeyXml{} @@ -396,9 +396,6 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["PeerAddress"]; ok { nestedPeerAddress.Misc = o.Misc["PeerAddress"] } - if o.PeerAddress.Ip != nil { - nestedPeerAddress.Ip = o.PeerAddress.Ip - } if o.PeerAddress.Dynamic != nil { nestedPeerAddress.Dynamic = &PeerAddressDynamicXml{} if _, ok := o.Misc["PeerAddressDynamic"]; ok { @@ -408,6 +405,9 @@ func specifyEntry(o *Entry) (any, error) { if o.PeerAddress.Fqdn != nil { nestedPeerAddress.Fqdn = o.PeerAddress.Fqdn } + if o.PeerAddress.Ip != nil { + nestedPeerAddress.Ip = o.PeerAddress.Ip + } } entry.PeerAddress = nestedPeerAddress @@ -435,60 +435,60 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["Protocol"]; ok { nestedProtocol.Misc = o.Misc["Protocol"] } - if o.Protocol.Ikev2 != nil { - nestedProtocol.Ikev2 = &ProtocolIkev2Xml{} - if _, ok := o.Misc["ProtocolIkev2"]; ok { - nestedProtocol.Ikev2.Misc = o.Misc["ProtocolIkev2"] - } - if o.Protocol.Ikev2.Dpd != nil { - nestedProtocol.Ikev2.Dpd = &ProtocolIkev2DpdXml{} - if _, ok := o.Misc["ProtocolIkev2Dpd"]; ok { - nestedProtocol.Ikev2.Dpd.Misc = o.Misc["ProtocolIkev2Dpd"] - } - if o.Protocol.Ikev2.Dpd.Enable != nil { - nestedProtocol.Ikev2.Dpd.Enable = util.YesNo(o.Protocol.Ikev2.Dpd.Enable, nil) - } - if o.Protocol.Ikev2.Dpd.Interval != nil { - nestedProtocol.Ikev2.Dpd.Interval = o.Protocol.Ikev2.Dpd.Interval - } - } - if o.Protocol.Ikev2.IkeCryptoProfile != nil { - nestedProtocol.Ikev2.IkeCryptoProfile = o.Protocol.Ikev2.IkeCryptoProfile - } - if o.Protocol.Ikev2.RequireCookie != nil { - nestedProtocol.Ikev2.RequireCookie = util.YesNo(o.Protocol.Ikev2.RequireCookie, nil) - } - } - if o.Protocol.Version != nil { - nestedProtocol.Version = o.Protocol.Version - } if o.Protocol.Ikev1 != nil { nestedProtocol.Ikev1 = &ProtocolIkev1Xml{} if _, ok := o.Misc["ProtocolIkev1"]; ok { nestedProtocol.Ikev1.Misc = o.Misc["ProtocolIkev1"] } + if o.Protocol.Ikev1.IkeCryptoProfile != nil { + nestedProtocol.Ikev1.IkeCryptoProfile = o.Protocol.Ikev1.IkeCryptoProfile + } if o.Protocol.Ikev1.Dpd != nil { nestedProtocol.Ikev1.Dpd = &ProtocolIkev1DpdXml{} if _, ok := o.Misc["ProtocolIkev1Dpd"]; ok { nestedProtocol.Ikev1.Dpd.Misc = o.Misc["ProtocolIkev1Dpd"] } + if o.Protocol.Ikev1.Dpd.Interval != nil { + nestedProtocol.Ikev1.Dpd.Interval = o.Protocol.Ikev1.Dpd.Interval + } if o.Protocol.Ikev1.Dpd.Retry != nil { nestedProtocol.Ikev1.Dpd.Retry = o.Protocol.Ikev1.Dpd.Retry } if o.Protocol.Ikev1.Dpd.Enable != nil { nestedProtocol.Ikev1.Dpd.Enable = util.YesNo(o.Protocol.Ikev1.Dpd.Enable, nil) } - if o.Protocol.Ikev1.Dpd.Interval != nil { - nestedProtocol.Ikev1.Dpd.Interval = o.Protocol.Ikev1.Dpd.Interval - } } if o.Protocol.Ikev1.ExchangeMode != nil { nestedProtocol.Ikev1.ExchangeMode = o.Protocol.Ikev1.ExchangeMode } - if o.Protocol.Ikev1.IkeCryptoProfile != nil { - nestedProtocol.Ikev1.IkeCryptoProfile = o.Protocol.Ikev1.IkeCryptoProfile + } + if o.Protocol.Ikev2 != nil { + nestedProtocol.Ikev2 = &ProtocolIkev2Xml{} + if _, ok := o.Misc["ProtocolIkev2"]; ok { + nestedProtocol.Ikev2.Misc = o.Misc["ProtocolIkev2"] + } + if o.Protocol.Ikev2.IkeCryptoProfile != nil { + nestedProtocol.Ikev2.IkeCryptoProfile = o.Protocol.Ikev2.IkeCryptoProfile + } + if o.Protocol.Ikev2.RequireCookie != nil { + nestedProtocol.Ikev2.RequireCookie = util.YesNo(o.Protocol.Ikev2.RequireCookie, nil) + } + if o.Protocol.Ikev2.Dpd != nil { + nestedProtocol.Ikev2.Dpd = &ProtocolIkev2DpdXml{} + if _, ok := o.Misc["ProtocolIkev2Dpd"]; ok { + nestedProtocol.Ikev2.Dpd.Misc = o.Misc["ProtocolIkev2Dpd"] + } + if o.Protocol.Ikev2.Dpd.Enable != nil { + nestedProtocol.Ikev2.Dpd.Enable = util.YesNo(o.Protocol.Ikev2.Dpd.Enable, nil) + } + if o.Protocol.Ikev2.Dpd.Interval != nil { + nestedProtocol.Ikev2.Dpd.Interval = o.Protocol.Ikev2.Dpd.Interval + } } } + if o.Protocol.Version != nil { + nestedProtocol.Version = o.Protocol.Version + } } entry.Protocol = nestedProtocol @@ -546,23 +546,11 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Authentication.Misc != nil { entry.Misc["Authentication"] = o.Authentication.Misc } - if o.Authentication.PreSharedKey != nil { - nestedAuthentication.PreSharedKey = &AuthenticationPreSharedKey{} - if o.Authentication.PreSharedKey.Misc != nil { - entry.Misc["AuthenticationPreSharedKey"] = o.Authentication.PreSharedKey.Misc - } - if o.Authentication.PreSharedKey.Key != nil { - nestedAuthentication.PreSharedKey.Key = o.Authentication.PreSharedKey.Key - } - } if o.Authentication.Certificate != nil { nestedAuthentication.Certificate = &AuthenticationCertificate{} if o.Authentication.Certificate.Misc != nil { entry.Misc["AuthenticationCertificate"] = o.Authentication.Certificate.Misc } - if o.Authentication.Certificate.AllowIdPayloadMismatch != nil { - nestedAuthentication.Certificate.AllowIdPayloadMismatch = util.AsBool(o.Authentication.Certificate.AllowIdPayloadMismatch, nil) - } if o.Authentication.Certificate.CertificateProfile != nil { nestedAuthentication.Certificate.CertificateProfile = o.Authentication.Certificate.CertificateProfile } @@ -593,6 +581,18 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Authentication.Certificate.UseManagementAsSource != nil { nestedAuthentication.Certificate.UseManagementAsSource = util.AsBool(o.Authentication.Certificate.UseManagementAsSource, nil) } + if o.Authentication.Certificate.AllowIdPayloadMismatch != nil { + nestedAuthentication.Certificate.AllowIdPayloadMismatch = util.AsBool(o.Authentication.Certificate.AllowIdPayloadMismatch, nil) + } + } + if o.Authentication.PreSharedKey != nil { + nestedAuthentication.PreSharedKey = &AuthenticationPreSharedKey{} + if o.Authentication.PreSharedKey.Misc != nil { + entry.Misc["AuthenticationPreSharedKey"] = o.Authentication.PreSharedKey.Misc + } + if o.Authentication.PreSharedKey.Key != nil { + nestedAuthentication.PreSharedKey.Key = o.Authentication.PreSharedKey.Key + } } } entry.Authentication = nestedAuthentication @@ -678,31 +678,34 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Protocol.Misc != nil { entry.Misc["Protocol"] = o.Protocol.Misc } + if o.Protocol.Version != nil { + nestedProtocol.Version = o.Protocol.Version + } if o.Protocol.Ikev1 != nil { nestedProtocol.Ikev1 = &ProtocolIkev1{} if o.Protocol.Ikev1.Misc != nil { entry.Misc["ProtocolIkev1"] = o.Protocol.Ikev1.Misc } + if o.Protocol.Ikev1.ExchangeMode != nil { + nestedProtocol.Ikev1.ExchangeMode = o.Protocol.Ikev1.ExchangeMode + } + if o.Protocol.Ikev1.IkeCryptoProfile != nil { + nestedProtocol.Ikev1.IkeCryptoProfile = o.Protocol.Ikev1.IkeCryptoProfile + } if o.Protocol.Ikev1.Dpd != nil { nestedProtocol.Ikev1.Dpd = &ProtocolIkev1Dpd{} if o.Protocol.Ikev1.Dpd.Misc != nil { entry.Misc["ProtocolIkev1Dpd"] = o.Protocol.Ikev1.Dpd.Misc } - if o.Protocol.Ikev1.Dpd.Retry != nil { - nestedProtocol.Ikev1.Dpd.Retry = o.Protocol.Ikev1.Dpd.Retry - } if o.Protocol.Ikev1.Dpd.Enable != nil { nestedProtocol.Ikev1.Dpd.Enable = util.AsBool(o.Protocol.Ikev1.Dpd.Enable, nil) } if o.Protocol.Ikev1.Dpd.Interval != nil { nestedProtocol.Ikev1.Dpd.Interval = o.Protocol.Ikev1.Dpd.Interval } - } - if o.Protocol.Ikev1.ExchangeMode != nil { - nestedProtocol.Ikev1.ExchangeMode = o.Protocol.Ikev1.ExchangeMode - } - if o.Protocol.Ikev1.IkeCryptoProfile != nil { - nestedProtocol.Ikev1.IkeCryptoProfile = o.Protocol.Ikev1.IkeCryptoProfile + if o.Protocol.Ikev1.Dpd.Retry != nil { + nestedProtocol.Ikev1.Dpd.Retry = o.Protocol.Ikev1.Dpd.Retry + } } } if o.Protocol.Ikev2 != nil { @@ -729,9 +732,6 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { nestedProtocol.Ikev2.RequireCookie = util.AsBool(o.Protocol.Ikev2.RequireCookie, nil) } } - if o.Protocol.Version != nil { - nestedProtocol.Version = o.Protocol.Version - } } entry.Protocol = nestedProtocol @@ -821,6 +821,23 @@ func SpecMatches(a, b *Entry) bool { return true } +func matchPeerId(a *PeerId, b *PeerId) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + if !util.StringsMatch(a.Id, b.Id) { + return false + } + if !util.StringsMatch(a.Matching, b.Matching) { + return false + } + if !util.StringsMatch(a.Type, b.Type) { + return false + } + return true +} func matchLocalAddress(a *LocalAddress, b *LocalAddress) bool { if a == nil && b != nil || a != nil && b == nil { return false @@ -852,18 +869,18 @@ func matchPeerAddress(a *PeerAddress, b *PeerAddress) bool { } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Ip, b.Ip) { - return false - } if !matchPeerAddressDynamic(a.Dynamic, b.Dynamic) { return false } if !util.StringsMatch(a.Fqdn, b.Fqdn) { return false } + if !util.StringsMatch(a.Ip, b.Ip) { + return false + } return true } -func matchPeerId(a *PeerId, b *PeerId) bool { +func matchLocalId(a *LocalId, b *LocalId) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -872,9 +889,6 @@ func matchPeerId(a *PeerId, b *PeerId) bool { if !util.StringsMatch(a.Id, b.Id) { return false } - if !util.StringsMatch(a.Matching, b.Matching) { - return false - } if !util.StringsMatch(a.Type, b.Type) { return false } @@ -934,15 +948,15 @@ func matchProtocolIkev2(a *ProtocolIkev2, b *ProtocolIkev2) bool { } else if a == nil && b == nil { return true } - if !matchProtocolIkev2Dpd(a.Dpd, b.Dpd) { - return false - } if !util.StringsMatch(a.IkeCryptoProfile, b.IkeCryptoProfile) { return false } if !util.BoolsMatch(a.RequireCookie, b.RequireCookie) { return false } + if !matchProtocolIkev2Dpd(a.Dpd, b.Dpd) { + return false + } return true } func matchProtocol(a *Protocol, b *Protocol) bool { @@ -951,18 +965,18 @@ func matchProtocol(a *Protocol, b *Protocol) bool { } else if a == nil && b == nil { return true } - if !matchProtocolIkev1(a.Ikev1, b.Ikev1) { - return false - } if !matchProtocolIkev2(a.Ikev2, b.Ikev2) { return false } if !util.StringsMatch(a.Version, b.Version) { return false } + if !matchProtocolIkev1(a.Ikev1, b.Ikev1) { + return false + } return true } -func matchProtocolCommonNatTraversal(a *ProtocolCommonNatTraversal, b *ProtocolCommonNatTraversal) bool { +func matchProtocolCommonFragmentation(a *ProtocolCommonFragmentation, b *ProtocolCommonFragmentation) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -971,15 +985,9 @@ func matchProtocolCommonNatTraversal(a *ProtocolCommonNatTraversal, b *ProtocolC if !util.BoolsMatch(a.Enable, b.Enable) { return false } - if !util.Ints64Match(a.KeepAliveInterval, b.KeepAliveInterval) { - return false - } - if !util.BoolsMatch(a.UdpChecksumEnable, b.UdpChecksumEnable) { - return false - } return true } -func matchProtocolCommonFragmentation(a *ProtocolCommonFragmentation, b *ProtocolCommonFragmentation) bool { +func matchProtocolCommonNatTraversal(a *ProtocolCommonNatTraversal, b *ProtocolCommonNatTraversal) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -988,6 +996,12 @@ func matchProtocolCommonFragmentation(a *ProtocolCommonFragmentation, b *Protoco if !util.BoolsMatch(a.Enable, b.Enable) { return false } + if !util.Ints64Match(a.KeepAliveInterval, b.KeepAliveInterval) { + return false + } + if !util.BoolsMatch(a.UdpChecksumEnable, b.UdpChecksumEnable) { + return false + } return true } func matchProtocolCommon(a *ProtocolCommon, b *ProtocolCommon) bool { @@ -1007,16 +1021,13 @@ func matchProtocolCommon(a *ProtocolCommon, b *ProtocolCommon) bool { } return true } -func matchLocalId(a *LocalId, b *LocalId) bool { +func matchAuthenticationPreSharedKey(a *AuthenticationPreSharedKey, b *AuthenticationPreSharedKey) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Id, b.Id) { - return false - } - if !util.StringsMatch(a.Type, b.Type) { + if !util.StringsMatch(a.Key, b.Key) { return false } return true @@ -1055,9 +1066,6 @@ func matchAuthenticationCertificate(a *AuthenticationCertificate, b *Authenticat } else if a == nil && b == nil { return true } - if !matchAuthenticationCertificateLocalCertificate(a.LocalCertificate, b.LocalCertificate) { - return false - } if !util.BoolsMatch(a.StrictValidationRevocation, b.StrictValidationRevocation) { return false } @@ -1070,15 +1078,7 @@ func matchAuthenticationCertificate(a *AuthenticationCertificate, b *Authenticat if !util.StringsMatch(a.CertificateProfile, b.CertificateProfile) { return false } - return true -} -func matchAuthenticationPreSharedKey(a *AuthenticationPreSharedKey, b *AuthenticationPreSharedKey) bool { - if a == nil && b != nil || a != nil && b == nil { - return false - } else if a == nil && b == nil { - return true - } - if !util.StringsMatch(a.Key, b.Key) { + if !matchAuthenticationCertificateLocalCertificate(a.LocalCertificate, b.LocalCertificate) { return false } return true @@ -1089,10 +1089,10 @@ func matchAuthentication(a *Authentication, b *Authentication) bool { } else if a == nil && b == nil { return true } - if !matchAuthenticationPreSharedKey(a.PreSharedKey, b.PreSharedKey) { + if !matchAuthenticationCertificate(a.Certificate, b.Certificate) { return false } - if !matchAuthenticationCertificate(a.Certificate, b.Certificate) { + if !matchAuthenticationPreSharedKey(a.PreSharedKey, b.PreSharedKey) { return false } return true diff --git a/device/adminrole/entry.go b/device/adminrole/entry.go index 12bc162..4bbb2c6 100644 --- a/device/adminrole/entry.go +++ b/device/adminrole/entry.go @@ -1817,339 +1817,468 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["RoleDevice"]; ok { nestedRole.Device.Misc = o.Misc["RoleDevice"] } - if o.Role.Device.Cli != nil { - nestedRole.Device.Cli = o.Role.Device.Cli - } - if o.Role.Device.Restapi != nil { - nestedRole.Device.Restapi = &RoleDeviceRestapiXml{} - if _, ok := o.Misc["RoleDeviceRestapi"]; ok { - nestedRole.Device.Restapi.Misc = o.Misc["RoleDeviceRestapi"] + if o.Role.Device.Webui != nil { + nestedRole.Device.Webui = &RoleDeviceWebuiXml{} + if _, ok := o.Misc["RoleDeviceWebui"]; ok { + nestedRole.Device.Webui.Misc = o.Misc["RoleDeviceWebui"] } - if o.Role.Device.Restapi.Network != nil { - nestedRole.Device.Restapi.Network = &RoleDeviceRestapiNetworkXml{} - if _, ok := o.Misc["RoleDeviceRestapiNetwork"]; ok { - nestedRole.Device.Restapi.Network.Misc = o.Misc["RoleDeviceRestapiNetwork"] - } - if o.Role.Device.Restapi.Network.DhcpRelays != nil { - nestedRole.Device.Restapi.Network.DhcpRelays = o.Role.Device.Restapi.Network.DhcpRelays - } - if o.Role.Device.Restapi.Network.GlobalprotectMdmServers != nil { - nestedRole.Device.Restapi.Network.GlobalprotectMdmServers = o.Role.Device.Restapi.Network.GlobalprotectMdmServers + if o.Role.Device.Webui.Acc != nil { + nestedRole.Device.Webui.Acc = o.Role.Device.Webui.Acc + } + if o.Role.Device.Webui.Dashboard != nil { + nestedRole.Device.Webui.Dashboard = o.Role.Device.Webui.Dashboard + } + if o.Role.Device.Webui.Network != nil { + nestedRole.Device.Webui.Network = &RoleDeviceWebuiNetworkXml{} + if _, ok := o.Misc["RoleDeviceWebuiNetwork"]; ok { + nestedRole.Device.Webui.Network.Misc = o.Misc["RoleDeviceWebuiNetwork"] } - if o.Role.Device.Restapi.Network.InterfaceManagementNetworkProfiles != nil { - nestedRole.Device.Restapi.Network.InterfaceManagementNetworkProfiles = o.Role.Device.Restapi.Network.InterfaceManagementNetworkProfiles + if o.Role.Device.Webui.Network.GreTunnels != nil { + nestedRole.Device.Webui.Network.GreTunnels = o.Role.Device.Webui.Network.GreTunnels } - if o.Role.Device.Restapi.Network.QosNetworkProfiles != nil { - nestedRole.Device.Restapi.Network.QosNetworkProfiles = o.Role.Device.Restapi.Network.QosNetworkProfiles + if o.Role.Device.Webui.Network.Lldp != nil { + nestedRole.Device.Webui.Network.Lldp = o.Role.Device.Webui.Network.Lldp } - if o.Role.Device.Restapi.Network.GlobalprotectClientlessAppGroups != nil { - nestedRole.Device.Restapi.Network.GlobalprotectClientlessAppGroups = o.Role.Device.Restapi.Network.GlobalprotectClientlessAppGroups + if o.Role.Device.Webui.Network.Qos != nil { + nestedRole.Device.Webui.Network.Qos = o.Role.Device.Webui.Network.Qos } - if o.Role.Device.Restapi.Network.TunnelInterfaces != nil { - nestedRole.Device.Restapi.Network.TunnelInterfaces = o.Role.Device.Restapi.Network.TunnelInterfaces + if o.Role.Device.Webui.Network.VirtualRouters != nil { + nestedRole.Device.Webui.Network.VirtualRouters = o.Role.Device.Webui.Network.VirtualRouters } - if o.Role.Device.Restapi.Network.VirtualWires != nil { - nestedRole.Device.Restapi.Network.VirtualWires = o.Role.Device.Restapi.Network.VirtualWires + if o.Role.Device.Webui.Network.Dhcp != nil { + nestedRole.Device.Webui.Network.Dhcp = o.Role.Device.Webui.Network.Dhcp } - if o.Role.Device.Restapi.Network.BgpRoutingProfiles != nil { - nestedRole.Device.Restapi.Network.BgpRoutingProfiles = o.Role.Device.Restapi.Network.BgpRoutingProfiles + if o.Role.Device.Webui.Network.GlobalProtect != nil { + nestedRole.Device.Webui.Network.GlobalProtect = &RoleDeviceWebuiNetworkGlobalProtectXml{} + if _, ok := o.Misc["RoleDeviceWebuiNetworkGlobalProtect"]; ok { + nestedRole.Device.Webui.Network.GlobalProtect.Misc = o.Misc["RoleDeviceWebuiNetworkGlobalProtect"] + } + if o.Role.Device.Webui.Network.GlobalProtect.ClientlessAppGroups != nil { + nestedRole.Device.Webui.Network.GlobalProtect.ClientlessAppGroups = o.Role.Device.Webui.Network.GlobalProtect.ClientlessAppGroups + } + if o.Role.Device.Webui.Network.GlobalProtect.ClientlessApps != nil { + nestedRole.Device.Webui.Network.GlobalProtect.ClientlessApps = o.Role.Device.Webui.Network.GlobalProtect.ClientlessApps + } + if o.Role.Device.Webui.Network.GlobalProtect.Gateways != nil { + nestedRole.Device.Webui.Network.GlobalProtect.Gateways = o.Role.Device.Webui.Network.GlobalProtect.Gateways + } + if o.Role.Device.Webui.Network.GlobalProtect.Mdm != nil { + nestedRole.Device.Webui.Network.GlobalProtect.Mdm = o.Role.Device.Webui.Network.GlobalProtect.Mdm + } + if o.Role.Device.Webui.Network.GlobalProtect.Portals != nil { + nestedRole.Device.Webui.Network.GlobalProtect.Portals = o.Role.Device.Webui.Network.GlobalProtect.Portals + } } - if o.Role.Device.Restapi.Network.GlobalprotectClientlessApps != nil { - nestedRole.Device.Restapi.Network.GlobalprotectClientlessApps = o.Role.Device.Restapi.Network.GlobalprotectClientlessApps + if o.Role.Device.Webui.Network.Zones != nil { + nestedRole.Device.Webui.Network.Zones = o.Role.Device.Webui.Network.Zones } - if o.Role.Device.Restapi.Network.GreTunnels != nil { - nestedRole.Device.Restapi.Network.GreTunnels = o.Role.Device.Restapi.Network.GreTunnels + if o.Role.Device.Webui.Network.DnsProxy != nil { + nestedRole.Device.Webui.Network.DnsProxy = o.Role.Device.Webui.Network.DnsProxy } - if o.Role.Device.Restapi.Network.IkeCryptoNetworkProfiles != nil { - nestedRole.Device.Restapi.Network.IkeCryptoNetworkProfiles = o.Role.Device.Restapi.Network.IkeCryptoNetworkProfiles + if o.Role.Device.Webui.Network.Interfaces != nil { + nestedRole.Device.Webui.Network.Interfaces = o.Role.Device.Webui.Network.Interfaces } - if o.Role.Device.Restapi.Network.LogicalRouters != nil { - nestedRole.Device.Restapi.Network.LogicalRouters = o.Role.Device.Restapi.Network.LogicalRouters + if o.Role.Device.Webui.Network.Routing != nil { + nestedRole.Device.Webui.Network.Routing = &RoleDeviceWebuiNetworkRoutingXml{} + if _, ok := o.Misc["RoleDeviceWebuiNetworkRouting"]; ok { + nestedRole.Device.Webui.Network.Routing.Misc = o.Misc["RoleDeviceWebuiNetworkRouting"] + } + if o.Role.Device.Webui.Network.Routing.LogicalRouters != nil { + nestedRole.Device.Webui.Network.Routing.LogicalRouters = o.Role.Device.Webui.Network.Routing.LogicalRouters + } + if o.Role.Device.Webui.Network.Routing.RoutingProfiles != nil { + nestedRole.Device.Webui.Network.Routing.RoutingProfiles = &RoleDeviceWebuiNetworkRoutingRoutingProfilesXml{} + if _, ok := o.Misc["RoleDeviceWebuiNetworkRoutingRoutingProfiles"]; ok { + nestedRole.Device.Webui.Network.Routing.RoutingProfiles.Misc = o.Misc["RoleDeviceWebuiNetworkRoutingRoutingProfiles"] + } + if o.Role.Device.Webui.Network.Routing.RoutingProfiles.Bgp != nil { + nestedRole.Device.Webui.Network.Routing.RoutingProfiles.Bgp = o.Role.Device.Webui.Network.Routing.RoutingProfiles.Bgp + } + if o.Role.Device.Webui.Network.Routing.RoutingProfiles.Filters != nil { + nestedRole.Device.Webui.Network.Routing.RoutingProfiles.Filters = o.Role.Device.Webui.Network.Routing.RoutingProfiles.Filters + } + if o.Role.Device.Webui.Network.Routing.RoutingProfiles.Multicast != nil { + nestedRole.Device.Webui.Network.Routing.RoutingProfiles.Multicast = o.Role.Device.Webui.Network.Routing.RoutingProfiles.Multicast + } + if o.Role.Device.Webui.Network.Routing.RoutingProfiles.Ospf != nil { + nestedRole.Device.Webui.Network.Routing.RoutingProfiles.Ospf = o.Role.Device.Webui.Network.Routing.RoutingProfiles.Ospf + } + if o.Role.Device.Webui.Network.Routing.RoutingProfiles.Ospfv3 != nil { + nestedRole.Device.Webui.Network.Routing.RoutingProfiles.Ospfv3 = o.Role.Device.Webui.Network.Routing.RoutingProfiles.Ospfv3 + } + if o.Role.Device.Webui.Network.Routing.RoutingProfiles.Ripv2 != nil { + nestedRole.Device.Webui.Network.Routing.RoutingProfiles.Ripv2 = o.Role.Device.Webui.Network.Routing.RoutingProfiles.Ripv2 + } + if o.Role.Device.Webui.Network.Routing.RoutingProfiles.Bfd != nil { + nestedRole.Device.Webui.Network.Routing.RoutingProfiles.Bfd = o.Role.Device.Webui.Network.Routing.RoutingProfiles.Bfd + } + } } - if o.Role.Device.Restapi.Network.LoopbackInterfaces != nil { - nestedRole.Device.Restapi.Network.LoopbackInterfaces = o.Role.Device.Restapi.Network.LoopbackInterfaces + if o.Role.Device.Webui.Network.VirtualWires != nil { + nestedRole.Device.Webui.Network.VirtualWires = o.Role.Device.Webui.Network.VirtualWires } - if o.Role.Device.Restapi.Network.SdwanInterfaceProfiles != nil { - nestedRole.Device.Restapi.Network.SdwanInterfaceProfiles = o.Role.Device.Restapi.Network.SdwanInterfaceProfiles + if o.Role.Device.Webui.Network.IpsecTunnels != nil { + nestedRole.Device.Webui.Network.IpsecTunnels = o.Role.Device.Webui.Network.IpsecTunnels } - if o.Role.Device.Restapi.Network.AggregateEthernetInterfaces != nil { - nestedRole.Device.Restapi.Network.AggregateEthernetInterfaces = o.Role.Device.Restapi.Network.AggregateEthernetInterfaces + if o.Role.Device.Webui.Network.NetworkProfiles != nil { + nestedRole.Device.Webui.Network.NetworkProfiles = &RoleDeviceWebuiNetworkNetworkProfilesXml{} + if _, ok := o.Misc["RoleDeviceWebuiNetworkNetworkProfiles"]; ok { + nestedRole.Device.Webui.Network.NetworkProfiles.Misc = o.Misc["RoleDeviceWebuiNetworkNetworkProfiles"] + } + if o.Role.Device.Webui.Network.NetworkProfiles.TunnelMonitor != nil { + nestedRole.Device.Webui.Network.NetworkProfiles.TunnelMonitor = o.Role.Device.Webui.Network.NetworkProfiles.TunnelMonitor + } + if o.Role.Device.Webui.Network.NetworkProfiles.ZoneProtection != nil { + nestedRole.Device.Webui.Network.NetworkProfiles.ZoneProtection = o.Role.Device.Webui.Network.NetworkProfiles.ZoneProtection + } + if o.Role.Device.Webui.Network.NetworkProfiles.BfdProfile != nil { + nestedRole.Device.Webui.Network.NetworkProfiles.BfdProfile = o.Role.Device.Webui.Network.NetworkProfiles.BfdProfile + } + if o.Role.Device.Webui.Network.NetworkProfiles.IkeCrypto != nil { + nestedRole.Device.Webui.Network.NetworkProfiles.IkeCrypto = o.Role.Device.Webui.Network.NetworkProfiles.IkeCrypto + } + if o.Role.Device.Webui.Network.NetworkProfiles.QosProfile != nil { + nestedRole.Device.Webui.Network.NetworkProfiles.QosProfile = o.Role.Device.Webui.Network.NetworkProfiles.QosProfile + } + if o.Role.Device.Webui.Network.NetworkProfiles.IpsecCrypto != nil { + nestedRole.Device.Webui.Network.NetworkProfiles.IpsecCrypto = o.Role.Device.Webui.Network.NetworkProfiles.IpsecCrypto + } + if o.Role.Device.Webui.Network.NetworkProfiles.LldpProfile != nil { + nestedRole.Device.Webui.Network.NetworkProfiles.LldpProfile = o.Role.Device.Webui.Network.NetworkProfiles.LldpProfile + } + if o.Role.Device.Webui.Network.NetworkProfiles.GpAppIpsecCrypto != nil { + nestedRole.Device.Webui.Network.NetworkProfiles.GpAppIpsecCrypto = o.Role.Device.Webui.Network.NetworkProfiles.GpAppIpsecCrypto + } + if o.Role.Device.Webui.Network.NetworkProfiles.IkeGateways != nil { + nestedRole.Device.Webui.Network.NetworkProfiles.IkeGateways = o.Role.Device.Webui.Network.NetworkProfiles.IkeGateways + } + if o.Role.Device.Webui.Network.NetworkProfiles.InterfaceMgmt != nil { + nestedRole.Device.Webui.Network.NetworkProfiles.InterfaceMgmt = o.Role.Device.Webui.Network.NetworkProfiles.InterfaceMgmt + } } - if o.Role.Device.Restapi.Network.GlobalprotectPortals != nil { - nestedRole.Device.Restapi.Network.GlobalprotectPortals = o.Role.Device.Restapi.Network.GlobalprotectPortals + if o.Role.Device.Webui.Network.SecureWebGateway != nil { + nestedRole.Device.Webui.Network.SecureWebGateway = o.Role.Device.Webui.Network.SecureWebGateway } - if o.Role.Device.Restapi.Network.TunnelMonitorNetworkProfiles != nil { - nestedRole.Device.Restapi.Network.TunnelMonitorNetworkProfiles = o.Role.Device.Restapi.Network.TunnelMonitorNetworkProfiles + if o.Role.Device.Webui.Network.SdwanInterfaceProfile != nil { + nestedRole.Device.Webui.Network.SdwanInterfaceProfile = o.Role.Device.Webui.Network.SdwanInterfaceProfile } - if o.Role.Device.Restapi.Network.BfdNetworkProfiles != nil { - nestedRole.Device.Restapi.Network.BfdNetworkProfiles = o.Role.Device.Restapi.Network.BfdNetworkProfiles + if o.Role.Device.Webui.Network.Vlans != nil { + nestedRole.Device.Webui.Network.Vlans = o.Role.Device.Webui.Network.Vlans } - if o.Role.Device.Restapi.Network.EthernetInterfaces != nil { - nestedRole.Device.Restapi.Network.EthernetInterfaces = o.Role.Device.Restapi.Network.EthernetInterfaces + } + if o.Role.Device.Webui.Privacy != nil { + nestedRole.Device.Webui.Privacy = &RoleDeviceWebuiPrivacyXml{} + if _, ok := o.Misc["RoleDeviceWebuiPrivacy"]; ok { + nestedRole.Device.Webui.Privacy.Misc = o.Misc["RoleDeviceWebuiPrivacy"] } - if o.Role.Device.Restapi.Network.DhcpServers != nil { - nestedRole.Device.Restapi.Network.DhcpServers = o.Role.Device.Restapi.Network.DhcpServers + if o.Role.Device.Webui.Privacy.ViewPcapFiles != nil { + nestedRole.Device.Webui.Privacy.ViewPcapFiles = o.Role.Device.Webui.Privacy.ViewPcapFiles } - if o.Role.Device.Restapi.Network.LldpNetworkProfiles != nil { - nestedRole.Device.Restapi.Network.LldpNetworkProfiles = o.Role.Device.Restapi.Network.LldpNetworkProfiles + if o.Role.Device.Webui.Privacy.ShowFullIpAddresses != nil { + nestedRole.Device.Webui.Privacy.ShowFullIpAddresses = o.Role.Device.Webui.Privacy.ShowFullIpAddresses } - if o.Role.Device.Restapi.Network.ZoneProtectionNetworkProfiles != nil { - nestedRole.Device.Restapi.Network.ZoneProtectionNetworkProfiles = o.Role.Device.Restapi.Network.ZoneProtectionNetworkProfiles + if o.Role.Device.Webui.Privacy.ShowUserNamesInLogsAndReports != nil { + nestedRole.Device.Webui.Privacy.ShowUserNamesInLogsAndReports = o.Role.Device.Webui.Privacy.ShowUserNamesInLogsAndReports } - if o.Role.Device.Restapi.Network.Zones != nil { - nestedRole.Device.Restapi.Network.Zones = o.Role.Device.Restapi.Network.Zones + } + if o.Role.Device.Webui.Tasks != nil { + nestedRole.Device.Webui.Tasks = o.Role.Device.Webui.Tasks + } + if o.Role.Device.Webui.Commit != nil { + nestedRole.Device.Webui.Commit = &RoleDeviceWebuiCommitXml{} + if _, ok := o.Misc["RoleDeviceWebuiCommit"]; ok { + nestedRole.Device.Webui.Commit.Misc = o.Misc["RoleDeviceWebuiCommit"] } - if o.Role.Device.Restapi.Network.GlobalprotectIpsecCryptoNetworkProfiles != nil { - nestedRole.Device.Restapi.Network.GlobalprotectIpsecCryptoNetworkProfiles = o.Role.Device.Restapi.Network.GlobalprotectIpsecCryptoNetworkProfiles + if o.Role.Device.Webui.Commit.CommitForOtherAdmins != nil { + nestedRole.Device.Webui.Commit.CommitForOtherAdmins = o.Role.Device.Webui.Commit.CommitForOtherAdmins } - if o.Role.Device.Restapi.Network.IpsecTunnels != nil { - nestedRole.Device.Restapi.Network.IpsecTunnels = o.Role.Device.Restapi.Network.IpsecTunnels + if o.Role.Device.Webui.Commit.Device != nil { + nestedRole.Device.Webui.Commit.Device = o.Role.Device.Webui.Commit.Device } - if o.Role.Device.Restapi.Network.QosInterfaces != nil { - nestedRole.Device.Restapi.Network.QosInterfaces = o.Role.Device.Restapi.Network.QosInterfaces + if o.Role.Device.Webui.Commit.ObjectLevelChanges != nil { + nestedRole.Device.Webui.Commit.ObjectLevelChanges = o.Role.Device.Webui.Commit.ObjectLevelChanges } - if o.Role.Device.Restapi.Network.SdwanInterfaces != nil { - nestedRole.Device.Restapi.Network.SdwanInterfaces = o.Role.Device.Restapi.Network.SdwanInterfaces + } + if o.Role.Device.Webui.Device != nil { + nestedRole.Device.Webui.Device = &RoleDeviceWebuiDeviceXml{} + if _, ok := o.Misc["RoleDeviceWebuiDevice"]; ok { + nestedRole.Device.Webui.Device.Misc = o.Misc["RoleDeviceWebuiDevice"] } - if o.Role.Device.Restapi.Network.VirtualRouters != nil { - nestedRole.Device.Restapi.Network.VirtualRouters = o.Role.Device.Restapi.Network.VirtualRouters + if o.Role.Device.Webui.Device.DataRedistribution != nil { + nestedRole.Device.Webui.Device.DataRedistribution = o.Role.Device.Webui.Device.DataRedistribution } - if o.Role.Device.Restapi.Network.VlanInterfaces != nil { - nestedRole.Device.Restapi.Network.VlanInterfaces = o.Role.Device.Restapi.Network.VlanInterfaces + if o.Role.Device.Webui.Device.HighAvailability != nil { + nestedRole.Device.Webui.Device.HighAvailability = o.Role.Device.Webui.Device.HighAvailability } - if o.Role.Device.Restapi.Network.Vlans != nil { - nestedRole.Device.Restapi.Network.Vlans = o.Role.Device.Restapi.Network.Vlans + if o.Role.Device.Webui.Device.LocalUserDatabase != nil { + nestedRole.Device.Webui.Device.LocalUserDatabase = &RoleDeviceWebuiDeviceLocalUserDatabaseXml{} + if _, ok := o.Misc["RoleDeviceWebuiDeviceLocalUserDatabase"]; ok { + nestedRole.Device.Webui.Device.LocalUserDatabase.Misc = o.Misc["RoleDeviceWebuiDeviceLocalUserDatabase"] + } + if o.Role.Device.Webui.Device.LocalUserDatabase.UserGroups != nil { + nestedRole.Device.Webui.Device.LocalUserDatabase.UserGroups = o.Role.Device.Webui.Device.LocalUserDatabase.UserGroups + } + if o.Role.Device.Webui.Device.LocalUserDatabase.Users != nil { + nestedRole.Device.Webui.Device.LocalUserDatabase.Users = o.Role.Device.Webui.Device.LocalUserDatabase.Users + } } - if o.Role.Device.Restapi.Network.DnsProxies != nil { - nestedRole.Device.Restapi.Network.DnsProxies = o.Role.Device.Restapi.Network.DnsProxies + if o.Role.Device.Webui.Device.MasterKey != nil { + nestedRole.Device.Webui.Device.MasterKey = o.Role.Device.Webui.Device.MasterKey } - if o.Role.Device.Restapi.Network.GlobalprotectGateways != nil { - nestedRole.Device.Restapi.Network.GlobalprotectGateways = o.Role.Device.Restapi.Network.GlobalprotectGateways + if o.Role.Device.Webui.Device.Plugins != nil { + nestedRole.Device.Webui.Device.Plugins = o.Role.Device.Webui.Device.Plugins } - if o.Role.Device.Restapi.Network.IkeGatewayNetworkProfiles != nil { - nestedRole.Device.Restapi.Network.IkeGatewayNetworkProfiles = o.Role.Device.Restapi.Network.IkeGatewayNetworkProfiles - } - if o.Role.Device.Restapi.Network.IpsecCryptoNetworkProfiles != nil { - nestedRole.Device.Restapi.Network.IpsecCryptoNetworkProfiles = o.Role.Device.Restapi.Network.IpsecCryptoNetworkProfiles - } - if o.Role.Device.Restapi.Network.Lldp != nil { - nestedRole.Device.Restapi.Network.Lldp = o.Role.Device.Restapi.Network.Lldp - } - } - if o.Role.Device.Restapi.Objects != nil { - nestedRole.Device.Restapi.Objects = &RoleDeviceRestapiObjectsXml{} - if _, ok := o.Misc["RoleDeviceRestapiObjects"]; ok { - nestedRole.Device.Restapi.Objects.Misc = o.Misc["RoleDeviceRestapiObjects"] - } - if o.Role.Device.Restapi.Objects.Regions != nil { - nestedRole.Device.Restapi.Objects.Regions = o.Role.Device.Restapi.Objects.Regions - } - if o.Role.Device.Restapi.Objects.Services != nil { - nestedRole.Device.Restapi.Objects.Services = o.Role.Device.Restapi.Objects.Services - } - if o.Role.Device.Restapi.Objects.GlobalprotectHipObjects != nil { - nestedRole.Device.Restapi.Objects.GlobalprotectHipObjects = o.Role.Device.Restapi.Objects.GlobalprotectHipObjects - } - if o.Role.Device.Restapi.Objects.PacketBrokerProfiles != nil { - nestedRole.Device.Restapi.Objects.PacketBrokerProfiles = o.Role.Device.Restapi.Objects.PacketBrokerProfiles - } - if o.Role.Device.Restapi.Objects.AntivirusSecurityProfiles != nil { - nestedRole.Device.Restapi.Objects.AntivirusSecurityProfiles = o.Role.Device.Restapi.Objects.AntivirusSecurityProfiles - } - if o.Role.Device.Restapi.Objects.CustomSpywareSignatures != nil { - nestedRole.Device.Restapi.Objects.CustomSpywareSignatures = o.Role.Device.Restapi.Objects.CustomSpywareSignatures - } - if o.Role.Device.Restapi.Objects.DecryptionProfiles != nil { - nestedRole.Device.Restapi.Objects.DecryptionProfiles = o.Role.Device.Restapi.Objects.DecryptionProfiles - } - if o.Role.Device.Restapi.Objects.Devices != nil { - nestedRole.Device.Restapi.Objects.Devices = o.Role.Device.Restapi.Objects.Devices - } - if o.Role.Device.Restapi.Objects.ExternalDynamicLists != nil { - nestedRole.Device.Restapi.Objects.ExternalDynamicLists = o.Role.Device.Restapi.Objects.ExternalDynamicLists - } - if o.Role.Device.Restapi.Objects.ServiceGroups != nil { - nestedRole.Device.Restapi.Objects.ServiceGroups = o.Role.Device.Restapi.Objects.ServiceGroups - } - if o.Role.Device.Restapi.Objects.Addresses != nil { - nestedRole.Device.Restapi.Objects.Addresses = o.Role.Device.Restapi.Objects.Addresses - } - if o.Role.Device.Restapi.Objects.AntiSpywareSecurityProfiles != nil { - nestedRole.Device.Restapi.Objects.AntiSpywareSecurityProfiles = o.Role.Device.Restapi.Objects.AntiSpywareSecurityProfiles - } - if o.Role.Device.Restapi.Objects.Tags != nil { - nestedRole.Device.Restapi.Objects.Tags = o.Role.Device.Restapi.Objects.Tags - } - if o.Role.Device.Restapi.Objects.DynamicUserGroups != nil { - nestedRole.Device.Restapi.Objects.DynamicUserGroups = o.Role.Device.Restapi.Objects.DynamicUserGroups - } - if o.Role.Device.Restapi.Objects.SdwanPathQualityProfiles != nil { - nestedRole.Device.Restapi.Objects.SdwanPathQualityProfiles = o.Role.Device.Restapi.Objects.SdwanPathQualityProfiles - } - if o.Role.Device.Restapi.Objects.SdwanTrafficDistributionProfiles != nil { - nestedRole.Device.Restapi.Objects.SdwanTrafficDistributionProfiles = o.Role.Device.Restapi.Objects.SdwanTrafficDistributionProfiles - } - if o.Role.Device.Restapi.Objects.ApplicationFilters != nil { - nestedRole.Device.Restapi.Objects.ApplicationFilters = o.Role.Device.Restapi.Objects.ApplicationFilters - } - if o.Role.Device.Restapi.Objects.CustomUrlCategories != nil { - nestedRole.Device.Restapi.Objects.CustomUrlCategories = o.Role.Device.Restapi.Objects.CustomUrlCategories - } - if o.Role.Device.Restapi.Objects.DosProtectionSecurityProfiles != nil { - nestedRole.Device.Restapi.Objects.DosProtectionSecurityProfiles = o.Role.Device.Restapi.Objects.DosProtectionSecurityProfiles - } - if o.Role.Device.Restapi.Objects.SdwanErrorCorrectionProfiles != nil { - nestedRole.Device.Restapi.Objects.SdwanErrorCorrectionProfiles = o.Role.Device.Restapi.Objects.SdwanErrorCorrectionProfiles - } - if o.Role.Device.Restapi.Objects.VulnerabilityProtectionSecurityProfiles != nil { - nestedRole.Device.Restapi.Objects.VulnerabilityProtectionSecurityProfiles = o.Role.Device.Restapi.Objects.VulnerabilityProtectionSecurityProfiles - } - if o.Role.Device.Restapi.Objects.AddressGroups != nil { - nestedRole.Device.Restapi.Objects.AddressGroups = o.Role.Device.Restapi.Objects.AddressGroups - } - if o.Role.Device.Restapi.Objects.DataFilteringSecurityProfiles != nil { - nestedRole.Device.Restapi.Objects.DataFilteringSecurityProfiles = o.Role.Device.Restapi.Objects.DataFilteringSecurityProfiles - } - if o.Role.Device.Restapi.Objects.GlobalprotectHipProfiles != nil { - nestedRole.Device.Restapi.Objects.GlobalprotectHipProfiles = o.Role.Device.Restapi.Objects.GlobalprotectHipProfiles - } - if o.Role.Device.Restapi.Objects.LogForwardingProfiles != nil { - nestedRole.Device.Restapi.Objects.LogForwardingProfiles = o.Role.Device.Restapi.Objects.LogForwardingProfiles - } - if o.Role.Device.Restapi.Objects.SctpProtectionSecurityProfiles != nil { - nestedRole.Device.Restapi.Objects.SctpProtectionSecurityProfiles = o.Role.Device.Restapi.Objects.SctpProtectionSecurityProfiles - } - if o.Role.Device.Restapi.Objects.WildfireAnalysisSecurityProfiles != nil { - nestedRole.Device.Restapi.Objects.WildfireAnalysisSecurityProfiles = o.Role.Device.Restapi.Objects.WildfireAnalysisSecurityProfiles - } - if o.Role.Device.Restapi.Objects.ApplicationGroups != nil { - nestedRole.Device.Restapi.Objects.ApplicationGroups = o.Role.Device.Restapi.Objects.ApplicationGroups - } - if o.Role.Device.Restapi.Objects.FileBlockingSecurityProfiles != nil { - nestedRole.Device.Restapi.Objects.FileBlockingSecurityProfiles = o.Role.Device.Restapi.Objects.FileBlockingSecurityProfiles - } - if o.Role.Device.Restapi.Objects.CustomVulnerabilitySignatures != nil { - nestedRole.Device.Restapi.Objects.CustomVulnerabilitySignatures = o.Role.Device.Restapi.Objects.CustomVulnerabilitySignatures - } - if o.Role.Device.Restapi.Objects.GtpProtectionSecurityProfiles != nil { - nestedRole.Device.Restapi.Objects.GtpProtectionSecurityProfiles = o.Role.Device.Restapi.Objects.GtpProtectionSecurityProfiles - } - if o.Role.Device.Restapi.Objects.SdwanSaasQualityProfiles != nil { - nestedRole.Device.Restapi.Objects.SdwanSaasQualityProfiles = o.Role.Device.Restapi.Objects.SdwanSaasQualityProfiles - } - if o.Role.Device.Restapi.Objects.SecurityProfileGroups != nil { - nestedRole.Device.Restapi.Objects.SecurityProfileGroups = o.Role.Device.Restapi.Objects.SecurityProfileGroups - } - if o.Role.Device.Restapi.Objects.Applications != nil { - nestedRole.Device.Restapi.Objects.Applications = o.Role.Device.Restapi.Objects.Applications - } - if o.Role.Device.Restapi.Objects.CustomDataPatterns != nil { - nestedRole.Device.Restapi.Objects.CustomDataPatterns = o.Role.Device.Restapi.Objects.CustomDataPatterns + if o.Role.Device.Webui.Device.PolicyRecommendations != nil { + nestedRole.Device.Webui.Device.PolicyRecommendations = &RoleDeviceWebuiDevicePolicyRecommendationsXml{} + if _, ok := o.Misc["RoleDeviceWebuiDevicePolicyRecommendations"]; ok { + nestedRole.Device.Webui.Device.PolicyRecommendations.Misc = o.Misc["RoleDeviceWebuiDevicePolicyRecommendations"] + } + if o.Role.Device.Webui.Device.PolicyRecommendations.Iot != nil { + nestedRole.Device.Webui.Device.PolicyRecommendations.Iot = o.Role.Device.Webui.Device.PolicyRecommendations.Iot + } + if o.Role.Device.Webui.Device.PolicyRecommendations.Saas != nil { + nestedRole.Device.Webui.Device.PolicyRecommendations.Saas = o.Role.Device.Webui.Device.PolicyRecommendations.Saas + } } - if o.Role.Device.Restapi.Objects.UrlFilteringSecurityProfiles != nil { - nestedRole.Device.Restapi.Objects.UrlFilteringSecurityProfiles = o.Role.Device.Restapi.Objects.UrlFilteringSecurityProfiles + if o.Role.Device.Webui.Device.ServerProfile != nil { + nestedRole.Device.Webui.Device.ServerProfile = &RoleDeviceWebuiDeviceServerProfileXml{} + if _, ok := o.Misc["RoleDeviceWebuiDeviceServerProfile"]; ok { + nestedRole.Device.Webui.Device.ServerProfile.Misc = o.Misc["RoleDeviceWebuiDeviceServerProfile"] + } + if o.Role.Device.Webui.Device.ServerProfile.Dns != nil { + nestedRole.Device.Webui.Device.ServerProfile.Dns = o.Role.Device.Webui.Device.ServerProfile.Dns + } + if o.Role.Device.Webui.Device.ServerProfile.Email != nil { + nestedRole.Device.Webui.Device.ServerProfile.Email = o.Role.Device.Webui.Device.ServerProfile.Email + } + if o.Role.Device.Webui.Device.ServerProfile.Netflow != nil { + nestedRole.Device.Webui.Device.ServerProfile.Netflow = o.Role.Device.Webui.Device.ServerProfile.Netflow + } + if o.Role.Device.Webui.Device.ServerProfile.SamlIdp != nil { + nestedRole.Device.Webui.Device.ServerProfile.SamlIdp = o.Role.Device.Webui.Device.ServerProfile.SamlIdp + } + if o.Role.Device.Webui.Device.ServerProfile.Tacplus != nil { + nestedRole.Device.Webui.Device.ServerProfile.Tacplus = o.Role.Device.Webui.Device.ServerProfile.Tacplus + } + if o.Role.Device.Webui.Device.ServerProfile.SnmpTrap != nil { + nestedRole.Device.Webui.Device.ServerProfile.SnmpTrap = o.Role.Device.Webui.Device.ServerProfile.SnmpTrap + } + if o.Role.Device.Webui.Device.ServerProfile.Syslog != nil { + nestedRole.Device.Webui.Device.ServerProfile.Syslog = o.Role.Device.Webui.Device.ServerProfile.Syslog + } + if o.Role.Device.Webui.Device.ServerProfile.Http != nil { + nestedRole.Device.Webui.Device.ServerProfile.Http = o.Role.Device.Webui.Device.ServerProfile.Http + } + if o.Role.Device.Webui.Device.ServerProfile.Kerberos != nil { + nestedRole.Device.Webui.Device.ServerProfile.Kerberos = o.Role.Device.Webui.Device.ServerProfile.Kerberos + } + if o.Role.Device.Webui.Device.ServerProfile.Ldap != nil { + nestedRole.Device.Webui.Device.ServerProfile.Ldap = o.Role.Device.Webui.Device.ServerProfile.Ldap + } + if o.Role.Device.Webui.Device.ServerProfile.Mfa != nil { + nestedRole.Device.Webui.Device.ServerProfile.Mfa = o.Role.Device.Webui.Device.ServerProfile.Mfa + } + if o.Role.Device.Webui.Device.ServerProfile.Radius != nil { + nestedRole.Device.Webui.Device.ServerProfile.Radius = o.Role.Device.Webui.Device.ServerProfile.Radius + } + if o.Role.Device.Webui.Device.ServerProfile.Scp != nil { + nestedRole.Device.Webui.Device.ServerProfile.Scp = o.Role.Device.Webui.Device.ServerProfile.Scp + } } - if o.Role.Device.Restapi.Objects.AuthenticationEnforcements != nil { - nestedRole.Device.Restapi.Objects.AuthenticationEnforcements = o.Role.Device.Restapi.Objects.AuthenticationEnforcements + if o.Role.Device.Webui.Device.ConfigAudit != nil { + nestedRole.Device.Webui.Device.ConfigAudit = o.Role.Device.Webui.Device.ConfigAudit } - if o.Role.Device.Restapi.Objects.Schedules != nil { - nestedRole.Device.Restapi.Objects.Schedules = o.Role.Device.Restapi.Objects.Schedules + if o.Role.Device.Webui.Device.Support != nil { + nestedRole.Device.Webui.Device.Support = o.Role.Device.Webui.Device.Support } - } - if o.Role.Device.Restapi.Policies != nil { - nestedRole.Device.Restapi.Policies = &RoleDeviceRestapiPoliciesXml{} - if _, ok := o.Misc["RoleDeviceRestapiPolicies"]; ok { - nestedRole.Device.Restapi.Policies.Misc = o.Misc["RoleDeviceRestapiPolicies"] + if o.Role.Device.Webui.Device.DynamicUpdates != nil { + nestedRole.Device.Webui.Device.DynamicUpdates = o.Role.Device.Webui.Device.DynamicUpdates } - if o.Role.Device.Restapi.Policies.TunnelInspectionRules != nil { - nestedRole.Device.Restapi.Policies.TunnelInspectionRules = o.Role.Device.Restapi.Policies.TunnelInspectionRules + if o.Role.Device.Webui.Device.LogSettings != nil { + nestedRole.Device.Webui.Device.LogSettings = &RoleDeviceWebuiDeviceLogSettingsXml{} + if _, ok := o.Misc["RoleDeviceWebuiDeviceLogSettings"]; ok { + nestedRole.Device.Webui.Device.LogSettings.Misc = o.Misc["RoleDeviceWebuiDeviceLogSettings"] + } + if o.Role.Device.Webui.Device.LogSettings.Correlation != nil { + nestedRole.Device.Webui.Device.LogSettings.Correlation = o.Role.Device.Webui.Device.LogSettings.Correlation + } + if o.Role.Device.Webui.Device.LogSettings.Globalprotect != nil { + nestedRole.Device.Webui.Device.LogSettings.Globalprotect = o.Role.Device.Webui.Device.LogSettings.Globalprotect + } + if o.Role.Device.Webui.Device.LogSettings.Iptag != nil { + nestedRole.Device.Webui.Device.LogSettings.Iptag = o.Role.Device.Webui.Device.LogSettings.Iptag + } + if o.Role.Device.Webui.Device.LogSettings.ManageLog != nil { + nestedRole.Device.Webui.Device.LogSettings.ManageLog = o.Role.Device.Webui.Device.LogSettings.ManageLog + } + if o.Role.Device.Webui.Device.LogSettings.UserId != nil { + nestedRole.Device.Webui.Device.LogSettings.UserId = o.Role.Device.Webui.Device.LogSettings.UserId + } + if o.Role.Device.Webui.Device.LogSettings.CcAlarm != nil { + nestedRole.Device.Webui.Device.LogSettings.CcAlarm = o.Role.Device.Webui.Device.LogSettings.CcAlarm + } + if o.Role.Device.Webui.Device.LogSettings.Config != nil { + nestedRole.Device.Webui.Device.LogSettings.Config = o.Role.Device.Webui.Device.LogSettings.Config + } + if o.Role.Device.Webui.Device.LogSettings.Hipmatch != nil { + nestedRole.Device.Webui.Device.LogSettings.Hipmatch = o.Role.Device.Webui.Device.LogSettings.Hipmatch + } + if o.Role.Device.Webui.Device.LogSettings.System != nil { + nestedRole.Device.Webui.Device.LogSettings.System = o.Role.Device.Webui.Device.LogSettings.System + } } - if o.Role.Device.Restapi.Policies.DecryptionRules != nil { - nestedRole.Device.Restapi.Policies.DecryptionRules = o.Role.Device.Restapi.Policies.DecryptionRules + if o.Role.Device.Webui.Device.VmInfoSource != nil { + nestedRole.Device.Webui.Device.VmInfoSource = o.Role.Device.Webui.Device.VmInfoSource } - if o.Role.Device.Restapi.Policies.DosRules != nil { - nestedRole.Device.Restapi.Policies.DosRules = o.Role.Device.Restapi.Policies.DosRules + if o.Role.Device.Webui.Device.AdminRoles != nil { + nestedRole.Device.Webui.Device.AdminRoles = o.Role.Device.Webui.Device.AdminRoles } - if o.Role.Device.Restapi.Policies.NetworkPacketBrokerRules != nil { - nestedRole.Device.Restapi.Policies.NetworkPacketBrokerRules = o.Role.Device.Restapi.Policies.NetworkPacketBrokerRules + if o.Role.Device.Webui.Device.Licenses != nil { + nestedRole.Device.Webui.Device.Licenses = o.Role.Device.Webui.Device.Licenses } - if o.Role.Device.Restapi.Policies.SdwanRules != nil { - nestedRole.Device.Restapi.Policies.SdwanRules = o.Role.Device.Restapi.Policies.SdwanRules + if o.Role.Device.Webui.Device.VirtualSystems != nil { + nestedRole.Device.Webui.Device.VirtualSystems = o.Role.Device.Webui.Device.VirtualSystems } - if o.Role.Device.Restapi.Policies.SecurityRules != nil { - nestedRole.Device.Restapi.Policies.SecurityRules = o.Role.Device.Restapi.Policies.SecurityRules + if o.Role.Device.Webui.Device.AuthenticationProfile != nil { + nestedRole.Device.Webui.Device.AuthenticationProfile = o.Role.Device.Webui.Device.AuthenticationProfile } - if o.Role.Device.Restapi.Policies.ApplicationOverrideRules != nil { - nestedRole.Device.Restapi.Policies.ApplicationOverrideRules = o.Role.Device.Restapi.Policies.ApplicationOverrideRules + if o.Role.Device.Webui.Device.GlobalProtectClient != nil { + nestedRole.Device.Webui.Device.GlobalProtectClient = o.Role.Device.Webui.Device.GlobalProtectClient } - if o.Role.Device.Restapi.Policies.AuthenticationRules != nil { - nestedRole.Device.Restapi.Policies.AuthenticationRules = o.Role.Device.Restapi.Policies.AuthenticationRules + if o.Role.Device.Webui.Device.BlockPages != nil { + nestedRole.Device.Webui.Device.BlockPages = o.Role.Device.Webui.Device.BlockPages } - if o.Role.Device.Restapi.Policies.NatRules != nil { - nestedRole.Device.Restapi.Policies.NatRules = o.Role.Device.Restapi.Policies.NatRules + if o.Role.Device.Webui.Device.Administrators != nil { + nestedRole.Device.Webui.Device.Administrators = o.Role.Device.Webui.Device.Administrators } - if o.Role.Device.Restapi.Policies.PolicyBasedForwardingRules != nil { - nestedRole.Device.Restapi.Policies.PolicyBasedForwardingRules = o.Role.Device.Restapi.Policies.PolicyBasedForwardingRules + if o.Role.Device.Webui.Device.AuthenticationSequence != nil { + nestedRole.Device.Webui.Device.AuthenticationSequence = o.Role.Device.Webui.Device.AuthenticationSequence } - if o.Role.Device.Restapi.Policies.QosRules != nil { - nestedRole.Device.Restapi.Policies.QosRules = o.Role.Device.Restapi.Policies.QosRules + if o.Role.Device.Webui.Device.AccessDomain != nil { + nestedRole.Device.Webui.Device.AccessDomain = o.Role.Device.Webui.Device.AccessDomain } - } - if o.Role.Device.Restapi.System != nil { - nestedRole.Device.Restapi.System = &RoleDeviceRestapiSystemXml{} - if _, ok := o.Misc["RoleDeviceRestapiSystem"]; ok { - nestedRole.Device.Restapi.System.Misc = o.Misc["RoleDeviceRestapiSystem"] + if o.Role.Device.Webui.Device.Setup != nil { + nestedRole.Device.Webui.Device.Setup = &RoleDeviceWebuiDeviceSetupXml{} + if _, ok := o.Misc["RoleDeviceWebuiDeviceSetup"]; ok { + nestedRole.Device.Webui.Device.Setup.Misc = o.Misc["RoleDeviceWebuiDeviceSetup"] + } + if o.Role.Device.Webui.Device.Setup.Wildfire != nil { + nestedRole.Device.Webui.Device.Setup.Wildfire = o.Role.Device.Webui.Device.Setup.Wildfire + } + if o.Role.Device.Webui.Device.Setup.ContentId != nil { + nestedRole.Device.Webui.Device.Setup.ContentId = o.Role.Device.Webui.Device.Setup.ContentId + } + if o.Role.Device.Webui.Device.Setup.Management != nil { + nestedRole.Device.Webui.Device.Setup.Management = o.Role.Device.Webui.Device.Setup.Management + } + if o.Role.Device.Webui.Device.Setup.Services != nil { + nestedRole.Device.Webui.Device.Setup.Services = o.Role.Device.Webui.Device.Setup.Services + } + if o.Role.Device.Webui.Device.Setup.Session != nil { + nestedRole.Device.Webui.Device.Setup.Session = o.Role.Device.Webui.Device.Setup.Session + } + if o.Role.Device.Webui.Device.Setup.Hsm != nil { + nestedRole.Device.Webui.Device.Setup.Hsm = o.Role.Device.Webui.Device.Setup.Hsm + } + if o.Role.Device.Webui.Device.Setup.Interfaces != nil { + nestedRole.Device.Webui.Device.Setup.Interfaces = o.Role.Device.Webui.Device.Setup.Interfaces + } + if o.Role.Device.Webui.Device.Setup.Operations != nil { + nestedRole.Device.Webui.Device.Setup.Operations = o.Role.Device.Webui.Device.Setup.Operations + } + if o.Role.Device.Webui.Device.Setup.Telemetry != nil { + nestedRole.Device.Webui.Device.Setup.Telemetry = o.Role.Device.Webui.Device.Setup.Telemetry + } } - if o.Role.Device.Restapi.System.Configuration != nil { - nestedRole.Device.Restapi.System.Configuration = o.Role.Device.Restapi.System.Configuration + if o.Role.Device.Webui.Device.ScheduledLogExport != nil { + nestedRole.Device.Webui.Device.ScheduledLogExport = o.Role.Device.Webui.Device.ScheduledLogExport } - } - if o.Role.Device.Restapi.Device != nil { - nestedRole.Device.Restapi.Device = &RoleDeviceRestapiDeviceXml{} - if _, ok := o.Misc["RoleDeviceRestapiDevice"]; ok { - nestedRole.Device.Restapi.Device.Misc = o.Misc["RoleDeviceRestapiDevice"] + if o.Role.Device.Webui.Device.Software != nil { + nestedRole.Device.Webui.Device.Software = o.Role.Device.Webui.Device.Software } - if o.Role.Device.Restapi.Device.HttpServerProfiles != nil { - nestedRole.Device.Restapi.Device.HttpServerProfiles = o.Role.Device.Restapi.Device.HttpServerProfiles + if o.Role.Device.Webui.Device.Troubleshooting != nil { + nestedRole.Device.Webui.Device.Troubleshooting = o.Role.Device.Webui.Device.Troubleshooting } - if o.Role.Device.Restapi.Device.LdapServerProfiles != nil { - nestedRole.Device.Restapi.Device.LdapServerProfiles = o.Role.Device.Restapi.Device.LdapServerProfiles + if o.Role.Device.Webui.Device.UserIdentification != nil { + nestedRole.Device.Webui.Device.UserIdentification = o.Role.Device.Webui.Device.UserIdentification } - if o.Role.Device.Restapi.Device.LogInterfaceSetting != nil { - nestedRole.Device.Restapi.Device.LogInterfaceSetting = o.Role.Device.Restapi.Device.LogInterfaceSetting + if o.Role.Device.Webui.Device.DhcpSyslogServer != nil { + nestedRole.Device.Webui.Device.DhcpSyslogServer = o.Role.Device.Webui.Device.DhcpSyslogServer } - if o.Role.Device.Restapi.Device.SnmpTrapServerProfiles != nil { - nestedRole.Device.Restapi.Device.SnmpTrapServerProfiles = o.Role.Device.Restapi.Device.SnmpTrapServerProfiles + if o.Role.Device.Webui.Device.CertificateManagement != nil { + nestedRole.Device.Webui.Device.CertificateManagement = &RoleDeviceWebuiDeviceCertificateManagementXml{} + if _, ok := o.Misc["RoleDeviceWebuiDeviceCertificateManagement"]; ok { + nestedRole.Device.Webui.Device.CertificateManagement.Misc = o.Misc["RoleDeviceWebuiDeviceCertificateManagement"] + } + if o.Role.Device.Webui.Device.CertificateManagement.Scep != nil { + nestedRole.Device.Webui.Device.CertificateManagement.Scep = o.Role.Device.Webui.Device.CertificateManagement.Scep + } + if o.Role.Device.Webui.Device.CertificateManagement.SshServiceProfile != nil { + nestedRole.Device.Webui.Device.CertificateManagement.SshServiceProfile = o.Role.Device.Webui.Device.CertificateManagement.SshServiceProfile + } + if o.Role.Device.Webui.Device.CertificateManagement.SslDecryptionExclusion != nil { + nestedRole.Device.Webui.Device.CertificateManagement.SslDecryptionExclusion = o.Role.Device.Webui.Device.CertificateManagement.SslDecryptionExclusion + } + if o.Role.Device.Webui.Device.CertificateManagement.SslTlsServiceProfile != nil { + nestedRole.Device.Webui.Device.CertificateManagement.SslTlsServiceProfile = o.Role.Device.Webui.Device.CertificateManagement.SslTlsServiceProfile + } + if o.Role.Device.Webui.Device.CertificateManagement.CertificateProfile != nil { + nestedRole.Device.Webui.Device.CertificateManagement.CertificateProfile = o.Role.Device.Webui.Device.CertificateManagement.CertificateProfile + } + if o.Role.Device.Webui.Device.CertificateManagement.Certificates != nil { + nestedRole.Device.Webui.Device.CertificateManagement.Certificates = o.Role.Device.Webui.Device.CertificateManagement.Certificates + } + if o.Role.Device.Webui.Device.CertificateManagement.OcspResponder != nil { + nestedRole.Device.Webui.Device.CertificateManagement.OcspResponder = o.Role.Device.Webui.Device.CertificateManagement.OcspResponder + } } - if o.Role.Device.Restapi.Device.SyslogServerProfiles != nil { - nestedRole.Device.Restapi.Device.SyslogServerProfiles = o.Role.Device.Restapi.Device.SyslogServerProfiles + if o.Role.Device.Webui.Device.LogFwdCard != nil { + nestedRole.Device.Webui.Device.LogFwdCard = o.Role.Device.Webui.Device.LogFwdCard } - if o.Role.Device.Restapi.Device.VirtualSystems != nil { - nestedRole.Device.Restapi.Device.VirtualSystems = o.Role.Device.Restapi.Device.VirtualSystems + if o.Role.Device.Webui.Device.SharedGateways != nil { + nestedRole.Device.Webui.Device.SharedGateways = o.Role.Device.Webui.Device.SharedGateways } - if o.Role.Device.Restapi.Device.EmailServerProfiles != nil { - nestedRole.Device.Restapi.Device.EmailServerProfiles = o.Role.Device.Restapi.Device.EmailServerProfiles + if o.Role.Device.Webui.Device.DeviceQuarantine != nil { + nestedRole.Device.Webui.Device.DeviceQuarantine = o.Role.Device.Webui.Device.DeviceQuarantine } } - } - if o.Role.Device.Webui != nil { - nestedRole.Device.Webui = &RoleDeviceWebuiXml{} - if _, ok := o.Misc["RoleDeviceWebui"]; ok { - nestedRole.Device.Webui.Misc = o.Misc["RoleDeviceWebui"] - } if o.Role.Device.Webui.Monitor != nil { nestedRole.Device.Webui.Monitor = &RoleDeviceWebuiMonitorXml{} if _, ok := o.Misc["RoleDeviceWebuiMonitor"]; ok { nestedRole.Device.Webui.Monitor.Misc = o.Misc["RoleDeviceWebuiMonitor"] } - if o.Role.Device.Webui.Monitor.ApplicationReports != nil { - nestedRole.Device.Webui.Monitor.ApplicationReports = o.Role.Device.Webui.Monitor.ApplicationReports + if o.Role.Device.Webui.Monitor.SctpReports != nil { + nestedRole.Device.Webui.Monitor.SctpReports = o.Role.Device.Webui.Monitor.SctpReports + } + if o.Role.Device.Webui.Monitor.SessionBrowser != nil { + nestedRole.Device.Webui.Monitor.SessionBrowser = o.Role.Device.Webui.Monitor.SessionBrowser + } + if o.Role.Device.Webui.Monitor.AutomatedCorrelationEngine != nil { + nestedRole.Device.Webui.Monitor.AutomatedCorrelationEngine = &RoleDeviceWebuiMonitorAutomatedCorrelationEngineXml{} + if _, ok := o.Misc["RoleDeviceWebuiMonitorAutomatedCorrelationEngine"]; ok { + nestedRole.Device.Webui.Monitor.AutomatedCorrelationEngine.Misc = o.Misc["RoleDeviceWebuiMonitorAutomatedCorrelationEngine"] + } + if o.Role.Device.Webui.Monitor.AutomatedCorrelationEngine.CorrelatedEvents != nil { + nestedRole.Device.Webui.Monitor.AutomatedCorrelationEngine.CorrelatedEvents = o.Role.Device.Webui.Monitor.AutomatedCorrelationEngine.CorrelatedEvents + } + if o.Role.Device.Webui.Monitor.AutomatedCorrelationEngine.CorrelationObjects != nil { + nestedRole.Device.Webui.Monitor.AutomatedCorrelationEngine.CorrelationObjects = o.Role.Device.Webui.Monitor.AutomatedCorrelationEngine.CorrelationObjects + } + } + if o.Role.Device.Webui.Monitor.BlockIpList != nil { + nestedRole.Device.Webui.Monitor.BlockIpList = o.Role.Device.Webui.Monitor.BlockIpList } if o.Role.Device.Webui.Monitor.PdfReports != nil { nestedRole.Device.Webui.Monitor.PdfReports = &RoleDeviceWebuiMonitorPdfReportsXml{} if _, ok := o.Misc["RoleDeviceWebuiMonitorPdfReports"]; ok { nestedRole.Device.Webui.Monitor.PdfReports.Misc = o.Misc["RoleDeviceWebuiMonitorPdfReports"] } + if o.Role.Device.Webui.Monitor.PdfReports.EmailScheduler != nil { + nestedRole.Device.Webui.Monitor.PdfReports.EmailScheduler = o.Role.Device.Webui.Monitor.PdfReports.EmailScheduler + } + if o.Role.Device.Webui.Monitor.PdfReports.ManagePdfSummary != nil { + nestedRole.Device.Webui.Monitor.PdfReports.ManagePdfSummary = o.Role.Device.Webui.Monitor.PdfReports.ManagePdfSummary + } if o.Role.Device.Webui.Monitor.PdfReports.PdfSummaryReports != nil { nestedRole.Device.Webui.Monitor.PdfReports.PdfSummaryReports = o.Role.Device.Webui.Monitor.PdfReports.PdfSummaryReports } @@ -2162,15 +2291,81 @@ func specifyEntry(o *Entry) (any, error) { if o.Role.Device.Webui.Monitor.PdfReports.UserActivityReport != nil { nestedRole.Device.Webui.Monitor.PdfReports.UserActivityReport = o.Role.Device.Webui.Monitor.PdfReports.UserActivityReport } - if o.Role.Device.Webui.Monitor.PdfReports.EmailScheduler != nil { - nestedRole.Device.Webui.Monitor.PdfReports.EmailScheduler = o.Role.Device.Webui.Monitor.PdfReports.EmailScheduler + } + if o.Role.Device.Webui.Monitor.CustomReports != nil { + nestedRole.Device.Webui.Monitor.CustomReports = &RoleDeviceWebuiMonitorCustomReportsXml{} + if _, ok := o.Misc["RoleDeviceWebuiMonitorCustomReports"]; ok { + nestedRole.Device.Webui.Monitor.CustomReports.Misc = o.Misc["RoleDeviceWebuiMonitorCustomReports"] } - if o.Role.Device.Webui.Monitor.PdfReports.ManagePdfSummary != nil { - nestedRole.Device.Webui.Monitor.PdfReports.ManagePdfSummary = o.Role.Device.Webui.Monitor.PdfReports.ManagePdfSummary + if o.Role.Device.Webui.Monitor.CustomReports.UrlLog != nil { + nestedRole.Device.Webui.Monitor.CustomReports.UrlLog = o.Role.Device.Webui.Monitor.CustomReports.UrlLog + } + if o.Role.Device.Webui.Monitor.CustomReports.Auth != nil { + nestedRole.Device.Webui.Monitor.CustomReports.Auth = o.Role.Device.Webui.Monitor.CustomReports.Auth + } + if o.Role.Device.Webui.Monitor.CustomReports.DataFilteringLog != nil { + nestedRole.Device.Webui.Monitor.CustomReports.DataFilteringLog = o.Role.Device.Webui.Monitor.CustomReports.DataFilteringLog + } + if o.Role.Device.Webui.Monitor.CustomReports.Globalprotect != nil { + nestedRole.Device.Webui.Monitor.CustomReports.Globalprotect = o.Role.Device.Webui.Monitor.CustomReports.Globalprotect + } + if o.Role.Device.Webui.Monitor.CustomReports.GtpSummary != nil { + nestedRole.Device.Webui.Monitor.CustomReports.GtpSummary = o.Role.Device.Webui.Monitor.CustomReports.GtpSummary + } + if o.Role.Device.Webui.Monitor.CustomReports.SctpSummary != nil { + nestedRole.Device.Webui.Monitor.CustomReports.SctpSummary = o.Role.Device.Webui.Monitor.CustomReports.SctpSummary + } + if o.Role.Device.Webui.Monitor.CustomReports.TrafficSummary != nil { + nestedRole.Device.Webui.Monitor.CustomReports.TrafficSummary = o.Role.Device.Webui.Monitor.CustomReports.TrafficSummary + } + if o.Role.Device.Webui.Monitor.CustomReports.TunnelSummary != nil { + nestedRole.Device.Webui.Monitor.CustomReports.TunnelSummary = o.Role.Device.Webui.Monitor.CustomReports.TunnelSummary + } + if o.Role.Device.Webui.Monitor.CustomReports.DecryptionLog != nil { + nestedRole.Device.Webui.Monitor.CustomReports.DecryptionLog = o.Role.Device.Webui.Monitor.CustomReports.DecryptionLog + } + if o.Role.Device.Webui.Monitor.CustomReports.DecryptionSummary != nil { + nestedRole.Device.Webui.Monitor.CustomReports.DecryptionSummary = o.Role.Device.Webui.Monitor.CustomReports.DecryptionSummary + } + if o.Role.Device.Webui.Monitor.CustomReports.Iptag != nil { + nestedRole.Device.Webui.Monitor.CustomReports.Iptag = o.Role.Device.Webui.Monitor.CustomReports.Iptag + } + if o.Role.Device.Webui.Monitor.CustomReports.SctpLog != nil { + nestedRole.Device.Webui.Monitor.CustomReports.SctpLog = o.Role.Device.Webui.Monitor.CustomReports.SctpLog + } + if o.Role.Device.Webui.Monitor.CustomReports.Userid != nil { + nestedRole.Device.Webui.Monitor.CustomReports.Userid = o.Role.Device.Webui.Monitor.CustomReports.Userid + } + if o.Role.Device.Webui.Monitor.CustomReports.GtpLog != nil { + nestedRole.Device.Webui.Monitor.CustomReports.GtpLog = o.Role.Device.Webui.Monitor.CustomReports.GtpLog + } + if o.Role.Device.Webui.Monitor.CustomReports.ThreatSummary != nil { + nestedRole.Device.Webui.Monitor.CustomReports.ThreatSummary = o.Role.Device.Webui.Monitor.CustomReports.ThreatSummary + } + if o.Role.Device.Webui.Monitor.CustomReports.UrlSummary != nil { + nestedRole.Device.Webui.Monitor.CustomReports.UrlSummary = o.Role.Device.Webui.Monitor.CustomReports.UrlSummary + } + if o.Role.Device.Webui.Monitor.CustomReports.WildfireLog != nil { + nestedRole.Device.Webui.Monitor.CustomReports.WildfireLog = o.Role.Device.Webui.Monitor.CustomReports.WildfireLog + } + if o.Role.Device.Webui.Monitor.CustomReports.ApplicationStatistics != nil { + nestedRole.Device.Webui.Monitor.CustomReports.ApplicationStatistics = o.Role.Device.Webui.Monitor.CustomReports.ApplicationStatistics + } + if o.Role.Device.Webui.Monitor.CustomReports.Hipmatch != nil { + nestedRole.Device.Webui.Monitor.CustomReports.Hipmatch = o.Role.Device.Webui.Monitor.CustomReports.Hipmatch + } + if o.Role.Device.Webui.Monitor.CustomReports.ThreatLog != nil { + nestedRole.Device.Webui.Monitor.CustomReports.ThreatLog = o.Role.Device.Webui.Monitor.CustomReports.ThreatLog + } + if o.Role.Device.Webui.Monitor.CustomReports.TrafficLog != nil { + nestedRole.Device.Webui.Monitor.CustomReports.TrafficLog = o.Role.Device.Webui.Monitor.CustomReports.TrafficLog + } + if o.Role.Device.Webui.Monitor.CustomReports.TunnelLog != nil { + nestedRole.Device.Webui.Monitor.CustomReports.TunnelLog = o.Role.Device.Webui.Monitor.CustomReports.TunnelLog } } - if o.Role.Device.Webui.Monitor.SessionBrowser != nil { - nestedRole.Device.Webui.Monitor.SessionBrowser = o.Role.Device.Webui.Monitor.SessionBrowser + if o.Role.Device.Webui.Monitor.ThreatReports != nil { + nestedRole.Device.Webui.Monitor.ThreatReports = o.Role.Device.Webui.Monitor.ThreatReports } if o.Role.Device.Webui.Monitor.ViewCustomReports != nil { nestedRole.Device.Webui.Monitor.ViewCustomReports = o.Role.Device.Webui.Monitor.ViewCustomReports @@ -2178,20 +2373,23 @@ func specifyEntry(o *Entry) (any, error) { if o.Role.Device.Webui.Monitor.AppScope != nil { nestedRole.Device.Webui.Monitor.AppScope = o.Role.Device.Webui.Monitor.AppScope } - if o.Role.Device.Webui.Monitor.AutomatedCorrelationEngine != nil { - nestedRole.Device.Webui.Monitor.AutomatedCorrelationEngine = &RoleDeviceWebuiMonitorAutomatedCorrelationEngineXml{} - if _, ok := o.Misc["RoleDeviceWebuiMonitorAutomatedCorrelationEngine"]; ok { - nestedRole.Device.Webui.Monitor.AutomatedCorrelationEngine.Misc = o.Misc["RoleDeviceWebuiMonitorAutomatedCorrelationEngine"] - } - if o.Role.Device.Webui.Monitor.AutomatedCorrelationEngine.CorrelatedEvents != nil { - nestedRole.Device.Webui.Monitor.AutomatedCorrelationEngine.CorrelatedEvents = o.Role.Device.Webui.Monitor.AutomatedCorrelationEngine.CorrelatedEvents - } - if o.Role.Device.Webui.Monitor.AutomatedCorrelationEngine.CorrelationObjects != nil { - nestedRole.Device.Webui.Monitor.AutomatedCorrelationEngine.CorrelationObjects = o.Role.Device.Webui.Monitor.AutomatedCorrelationEngine.CorrelationObjects - } + if o.Role.Device.Webui.Monitor.ApplicationReports != nil { + nestedRole.Device.Webui.Monitor.ApplicationReports = o.Role.Device.Webui.Monitor.ApplicationReports } - if o.Role.Device.Webui.Monitor.BlockIpList != nil { - nestedRole.Device.Webui.Monitor.BlockIpList = o.Role.Device.Webui.Monitor.BlockIpList + if o.Role.Device.Webui.Monitor.GtpReports != nil { + nestedRole.Device.Webui.Monitor.GtpReports = o.Role.Device.Webui.Monitor.GtpReports + } + if o.Role.Device.Webui.Monitor.PacketCapture != nil { + nestedRole.Device.Webui.Monitor.PacketCapture = o.Role.Device.Webui.Monitor.PacketCapture + } + if o.Role.Device.Webui.Monitor.TrafficReports != nil { + nestedRole.Device.Webui.Monitor.TrafficReports = o.Role.Device.Webui.Monitor.TrafficReports + } + if o.Role.Device.Webui.Monitor.UrlFilteringReports != nil { + nestedRole.Device.Webui.Monitor.UrlFilteringReports = o.Role.Device.Webui.Monitor.UrlFilteringReports + } + if o.Role.Device.Webui.Monitor.Botnet != nil { + nestedRole.Device.Webui.Monitor.Botnet = o.Role.Device.Webui.Monitor.Botnet } if o.Role.Device.Webui.Monitor.ExternalLogs != nil { nestedRole.Device.Webui.Monitor.ExternalLogs = o.Role.Device.Webui.Monitor.ExternalLogs @@ -2201,35 +2399,47 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["RoleDeviceWebuiMonitorLogs"]; ok { nestedRole.Device.Webui.Monitor.Logs.Misc = o.Misc["RoleDeviceWebuiMonitorLogs"] } - if o.Role.Device.Webui.Monitor.Logs.Configuration != nil { - nestedRole.Device.Webui.Monitor.Logs.Configuration = o.Role.Device.Webui.Monitor.Logs.Configuration + if o.Role.Device.Webui.Monitor.Logs.Decryption != nil { + nestedRole.Device.Webui.Monitor.Logs.Decryption = o.Role.Device.Webui.Monitor.Logs.Decryption + } + if o.Role.Device.Webui.Monitor.Logs.Gtp != nil { + nestedRole.Device.Webui.Monitor.Logs.Gtp = o.Role.Device.Webui.Monitor.Logs.Gtp } if o.Role.Device.Webui.Monitor.Logs.DataFiltering != nil { nestedRole.Device.Webui.Monitor.Logs.DataFiltering = o.Role.Device.Webui.Monitor.Logs.DataFiltering } - if o.Role.Device.Webui.Monitor.Logs.Gtp != nil { - nestedRole.Device.Webui.Monitor.Logs.Gtp = o.Role.Device.Webui.Monitor.Logs.Gtp + if o.Role.Device.Webui.Monitor.Logs.Iptag != nil { + nestedRole.Device.Webui.Monitor.Logs.Iptag = o.Role.Device.Webui.Monitor.Logs.Iptag + } + if o.Role.Device.Webui.Monitor.Logs.Threat != nil { + nestedRole.Device.Webui.Monitor.Logs.Threat = o.Role.Device.Webui.Monitor.Logs.Threat + } + if o.Role.Device.Webui.Monitor.Logs.Userid != nil { + nestedRole.Device.Webui.Monitor.Logs.Userid = o.Role.Device.Webui.Monitor.Logs.Userid + } + if o.Role.Device.Webui.Monitor.Logs.Configuration != nil { + nestedRole.Device.Webui.Monitor.Logs.Configuration = o.Role.Device.Webui.Monitor.Logs.Configuration } if o.Role.Device.Webui.Monitor.Logs.Sctp != nil { nestedRole.Device.Webui.Monitor.Logs.Sctp = o.Role.Device.Webui.Monitor.Logs.Sctp } - if o.Role.Device.Webui.Monitor.Logs.Alarm != nil { - nestedRole.Device.Webui.Monitor.Logs.Alarm = o.Role.Device.Webui.Monitor.Logs.Alarm - } if o.Role.Device.Webui.Monitor.Logs.System != nil { nestedRole.Device.Webui.Monitor.Logs.System = o.Role.Device.Webui.Monitor.Logs.System } - if o.Role.Device.Webui.Monitor.Logs.Threat != nil { - nestedRole.Device.Webui.Monitor.Logs.Threat = o.Role.Device.Webui.Monitor.Logs.Threat + if o.Role.Device.Webui.Monitor.Logs.Traffic != nil { + nestedRole.Device.Webui.Monitor.Logs.Traffic = o.Role.Device.Webui.Monitor.Logs.Traffic + } + if o.Role.Device.Webui.Monitor.Logs.Tunnel != nil { + nestedRole.Device.Webui.Monitor.Logs.Tunnel = o.Role.Device.Webui.Monitor.Logs.Tunnel } if o.Role.Device.Webui.Monitor.Logs.Url != nil { nestedRole.Device.Webui.Monitor.Logs.Url = o.Role.Device.Webui.Monitor.Logs.Url } - if o.Role.Device.Webui.Monitor.Logs.Wildfire != nil { - nestedRole.Device.Webui.Monitor.Logs.Wildfire = o.Role.Device.Webui.Monitor.Logs.Wildfire + if o.Role.Device.Webui.Monitor.Logs.Alarm != nil { + nestedRole.Device.Webui.Monitor.Logs.Alarm = o.Role.Device.Webui.Monitor.Logs.Alarm } - if o.Role.Device.Webui.Monitor.Logs.Decryption != nil { - nestedRole.Device.Webui.Monitor.Logs.Decryption = o.Role.Device.Webui.Monitor.Logs.Decryption + if o.Role.Device.Webui.Monitor.Logs.Authentication != nil { + nestedRole.Device.Webui.Monitor.Logs.Authentication = o.Role.Device.Webui.Monitor.Logs.Authentication } if o.Role.Device.Webui.Monitor.Logs.Globalprotect != nil { nestedRole.Device.Webui.Monitor.Logs.Globalprotect = o.Role.Device.Webui.Monitor.Logs.Globalprotect @@ -2237,120 +2447,165 @@ func specifyEntry(o *Entry) (any, error) { if o.Role.Device.Webui.Monitor.Logs.Hipmatch != nil { nestedRole.Device.Webui.Monitor.Logs.Hipmatch = o.Role.Device.Webui.Monitor.Logs.Hipmatch } - if o.Role.Device.Webui.Monitor.Logs.Iptag != nil { - nestedRole.Device.Webui.Monitor.Logs.Iptag = o.Role.Device.Webui.Monitor.Logs.Iptag - } - if o.Role.Device.Webui.Monitor.Logs.Tunnel != nil { - nestedRole.Device.Webui.Monitor.Logs.Tunnel = o.Role.Device.Webui.Monitor.Logs.Tunnel - } - if o.Role.Device.Webui.Monitor.Logs.Authentication != nil { - nestedRole.Device.Webui.Monitor.Logs.Authentication = o.Role.Device.Webui.Monitor.Logs.Authentication - } - if o.Role.Device.Webui.Monitor.Logs.Traffic != nil { - nestedRole.Device.Webui.Monitor.Logs.Traffic = o.Role.Device.Webui.Monitor.Logs.Traffic - } - if o.Role.Device.Webui.Monitor.Logs.Userid != nil { - nestedRole.Device.Webui.Monitor.Logs.Userid = o.Role.Device.Webui.Monitor.Logs.Userid + if o.Role.Device.Webui.Monitor.Logs.Wildfire != nil { + nestedRole.Device.Webui.Monitor.Logs.Wildfire = o.Role.Device.Webui.Monitor.Logs.Wildfire } } - if o.Role.Device.Webui.Monitor.UrlFilteringReports != nil { - nestedRole.Device.Webui.Monitor.UrlFilteringReports = o.Role.Device.Webui.Monitor.UrlFilteringReports + } + if o.Role.Device.Webui.Operations != nil { + nestedRole.Device.Webui.Operations = &RoleDeviceWebuiOperationsXml{} + if _, ok := o.Misc["RoleDeviceWebuiOperations"]; ok { + nestedRole.Device.Webui.Operations.Misc = o.Misc["RoleDeviceWebuiOperations"] } - if o.Role.Device.Webui.Monitor.Botnet != nil { - nestedRole.Device.Webui.Monitor.Botnet = o.Role.Device.Webui.Monitor.Botnet + if o.Role.Device.Webui.Operations.DownloadCoreFiles != nil { + nestedRole.Device.Webui.Operations.DownloadCoreFiles = o.Role.Device.Webui.Operations.DownloadCoreFiles } - if o.Role.Device.Webui.Monitor.CustomReports != nil { - nestedRole.Device.Webui.Monitor.CustomReports = &RoleDeviceWebuiMonitorCustomReportsXml{} - if _, ok := o.Misc["RoleDeviceWebuiMonitorCustomReports"]; ok { - nestedRole.Device.Webui.Monitor.CustomReports.Misc = o.Misc["RoleDeviceWebuiMonitorCustomReports"] - } - if o.Role.Device.Webui.Monitor.CustomReports.Auth != nil { - nestedRole.Device.Webui.Monitor.CustomReports.Auth = o.Role.Device.Webui.Monitor.CustomReports.Auth - } - if o.Role.Device.Webui.Monitor.CustomReports.DataFilteringLog != nil { - nestedRole.Device.Webui.Monitor.CustomReports.DataFilteringLog = o.Role.Device.Webui.Monitor.CustomReports.DataFilteringLog - } - if o.Role.Device.Webui.Monitor.CustomReports.Globalprotect != nil { - nestedRole.Device.Webui.Monitor.CustomReports.Globalprotect = o.Role.Device.Webui.Monitor.CustomReports.Globalprotect - } - if o.Role.Device.Webui.Monitor.CustomReports.UrlSummary != nil { - nestedRole.Device.Webui.Monitor.CustomReports.UrlSummary = o.Role.Device.Webui.Monitor.CustomReports.UrlSummary + if o.Role.Device.Webui.Operations.DownloadPcapFiles != nil { + nestedRole.Device.Webui.Operations.DownloadPcapFiles = o.Role.Device.Webui.Operations.DownloadPcapFiles + } + if o.Role.Device.Webui.Operations.GenerateStatsDumpFile != nil { + nestedRole.Device.Webui.Operations.GenerateStatsDumpFile = o.Role.Device.Webui.Operations.GenerateStatsDumpFile + } + if o.Role.Device.Webui.Operations.GenerateTechSupportFile != nil { + nestedRole.Device.Webui.Operations.GenerateTechSupportFile = o.Role.Device.Webui.Operations.GenerateTechSupportFile + } + if o.Role.Device.Webui.Operations.Reboot != nil { + nestedRole.Device.Webui.Operations.Reboot = o.Role.Device.Webui.Operations.Reboot + } + } + if o.Role.Device.Webui.Save != nil { + nestedRole.Device.Webui.Save = &RoleDeviceWebuiSaveXml{} + if _, ok := o.Misc["RoleDeviceWebuiSave"]; ok { + nestedRole.Device.Webui.Save.Misc = o.Misc["RoleDeviceWebuiSave"] + } + if o.Role.Device.Webui.Save.PartialSave != nil { + nestedRole.Device.Webui.Save.PartialSave = o.Role.Device.Webui.Save.PartialSave + } + if o.Role.Device.Webui.Save.SaveForOtherAdmins != nil { + nestedRole.Device.Webui.Save.SaveForOtherAdmins = o.Role.Device.Webui.Save.SaveForOtherAdmins + } + if o.Role.Device.Webui.Save.ObjectLevelChanges != nil { + nestedRole.Device.Webui.Save.ObjectLevelChanges = o.Role.Device.Webui.Save.ObjectLevelChanges + } + } + if o.Role.Device.Webui.Validate != nil { + nestedRole.Device.Webui.Validate = o.Role.Device.Webui.Validate + } + if o.Role.Device.Webui.Global != nil { + nestedRole.Device.Webui.Global = &RoleDeviceWebuiGlobalXml{} + if _, ok := o.Misc["RoleDeviceWebuiGlobal"]; ok { + nestedRole.Device.Webui.Global.Misc = o.Misc["RoleDeviceWebuiGlobal"] + } + if o.Role.Device.Webui.Global.SystemAlarms != nil { + nestedRole.Device.Webui.Global.SystemAlarms = o.Role.Device.Webui.Global.SystemAlarms + } + } + if o.Role.Device.Webui.Objects != nil { + nestedRole.Device.Webui.Objects = &RoleDeviceWebuiObjectsXml{} + if _, ok := o.Misc["RoleDeviceWebuiObjects"]; ok { + nestedRole.Device.Webui.Objects.Misc = o.Misc["RoleDeviceWebuiObjects"] + } + if o.Role.Device.Webui.Objects.DynamicUserGroups != nil { + nestedRole.Device.Webui.Objects.DynamicUserGroups = o.Role.Device.Webui.Objects.DynamicUserGroups + } + if o.Role.Device.Webui.Objects.Services != nil { + nestedRole.Device.Webui.Objects.Services = o.Role.Device.Webui.Objects.Services + } + if o.Role.Device.Webui.Objects.AddressGroups != nil { + nestedRole.Device.Webui.Objects.AddressGroups = o.Role.Device.Webui.Objects.AddressGroups + } + if o.Role.Device.Webui.Objects.ApplicationGroups != nil { + nestedRole.Device.Webui.Objects.ApplicationGroups = o.Role.Device.Webui.Objects.ApplicationGroups + } + if o.Role.Device.Webui.Objects.DynamicBlockLists != nil { + nestedRole.Device.Webui.Objects.DynamicBlockLists = o.Role.Device.Webui.Objects.DynamicBlockLists + } + if o.Role.Device.Webui.Objects.SecurityProfiles != nil { + nestedRole.Device.Webui.Objects.SecurityProfiles = &RoleDeviceWebuiObjectsSecurityProfilesXml{} + if _, ok := o.Misc["RoleDeviceWebuiObjectsSecurityProfiles"]; ok { + nestedRole.Device.Webui.Objects.SecurityProfiles.Misc = o.Misc["RoleDeviceWebuiObjectsSecurityProfiles"] } - if o.Role.Device.Webui.Monitor.CustomReports.WildfireLog != nil { - nestedRole.Device.Webui.Monitor.CustomReports.WildfireLog = o.Role.Device.Webui.Monitor.CustomReports.WildfireLog + if o.Role.Device.Webui.Objects.SecurityProfiles.SctpProtection != nil { + nestedRole.Device.Webui.Objects.SecurityProfiles.SctpProtection = o.Role.Device.Webui.Objects.SecurityProfiles.SctpProtection } - if o.Role.Device.Webui.Monitor.CustomReports.ApplicationStatistics != nil { - nestedRole.Device.Webui.Monitor.CustomReports.ApplicationStatistics = o.Role.Device.Webui.Monitor.CustomReports.ApplicationStatistics + if o.Role.Device.Webui.Objects.SecurityProfiles.UrlFiltering != nil { + nestedRole.Device.Webui.Objects.SecurityProfiles.UrlFiltering = o.Role.Device.Webui.Objects.SecurityProfiles.UrlFiltering } - if o.Role.Device.Webui.Monitor.CustomReports.SctpSummary != nil { - nestedRole.Device.Webui.Monitor.CustomReports.SctpSummary = o.Role.Device.Webui.Monitor.CustomReports.SctpSummary + if o.Role.Device.Webui.Objects.SecurityProfiles.VulnerabilityProtection != nil { + nestedRole.Device.Webui.Objects.SecurityProfiles.VulnerabilityProtection = o.Role.Device.Webui.Objects.SecurityProfiles.VulnerabilityProtection } - if o.Role.Device.Webui.Monitor.CustomReports.ThreatSummary != nil { - nestedRole.Device.Webui.Monitor.CustomReports.ThreatSummary = o.Role.Device.Webui.Monitor.CustomReports.ThreatSummary + if o.Role.Device.Webui.Objects.SecurityProfiles.WildfireAnalysis != nil { + nestedRole.Device.Webui.Objects.SecurityProfiles.WildfireAnalysis = o.Role.Device.Webui.Objects.SecurityProfiles.WildfireAnalysis } - if o.Role.Device.Webui.Monitor.CustomReports.TunnelLog != nil { - nestedRole.Device.Webui.Monitor.CustomReports.TunnelLog = o.Role.Device.Webui.Monitor.CustomReports.TunnelLog + if o.Role.Device.Webui.Objects.SecurityProfiles.AntiSpyware != nil { + nestedRole.Device.Webui.Objects.SecurityProfiles.AntiSpyware = o.Role.Device.Webui.Objects.SecurityProfiles.AntiSpyware } - if o.Role.Device.Webui.Monitor.CustomReports.UrlLog != nil { - nestedRole.Device.Webui.Monitor.CustomReports.UrlLog = o.Role.Device.Webui.Monitor.CustomReports.UrlLog + if o.Role.Device.Webui.Objects.SecurityProfiles.DataFiltering != nil { + nestedRole.Device.Webui.Objects.SecurityProfiles.DataFiltering = o.Role.Device.Webui.Objects.SecurityProfiles.DataFiltering } - if o.Role.Device.Webui.Monitor.CustomReports.GtpSummary != nil { - nestedRole.Device.Webui.Monitor.CustomReports.GtpSummary = o.Role.Device.Webui.Monitor.CustomReports.GtpSummary + if o.Role.Device.Webui.Objects.SecurityProfiles.FileBlocking != nil { + nestedRole.Device.Webui.Objects.SecurityProfiles.FileBlocking = o.Role.Device.Webui.Objects.SecurityProfiles.FileBlocking } - if o.Role.Device.Webui.Monitor.CustomReports.Iptag != nil { - nestedRole.Device.Webui.Monitor.CustomReports.Iptag = o.Role.Device.Webui.Monitor.CustomReports.Iptag + if o.Role.Device.Webui.Objects.SecurityProfiles.GtpProtection != nil { + nestedRole.Device.Webui.Objects.SecurityProfiles.GtpProtection = o.Role.Device.Webui.Objects.SecurityProfiles.GtpProtection } - if o.Role.Device.Webui.Monitor.CustomReports.TrafficSummary != nil { - nestedRole.Device.Webui.Monitor.CustomReports.TrafficSummary = o.Role.Device.Webui.Monitor.CustomReports.TrafficSummary + if o.Role.Device.Webui.Objects.SecurityProfiles.Antivirus != nil { + nestedRole.Device.Webui.Objects.SecurityProfiles.Antivirus = o.Role.Device.Webui.Objects.SecurityProfiles.Antivirus } - if o.Role.Device.Webui.Monitor.CustomReports.TrafficLog != nil { - nestedRole.Device.Webui.Monitor.CustomReports.TrafficLog = o.Role.Device.Webui.Monitor.CustomReports.TrafficLog + if o.Role.Device.Webui.Objects.SecurityProfiles.DosProtection != nil { + nestedRole.Device.Webui.Objects.SecurityProfiles.DosProtection = o.Role.Device.Webui.Objects.SecurityProfiles.DosProtection } - if o.Role.Device.Webui.Monitor.CustomReports.TunnelSummary != nil { - nestedRole.Device.Webui.Monitor.CustomReports.TunnelSummary = o.Role.Device.Webui.Monitor.CustomReports.TunnelSummary + } + if o.Role.Device.Webui.Objects.Applications != nil { + nestedRole.Device.Webui.Objects.Applications = o.Role.Device.Webui.Objects.Applications + } + if o.Role.Device.Webui.Objects.LogForwarding != nil { + nestedRole.Device.Webui.Objects.LogForwarding = o.Role.Device.Webui.Objects.LogForwarding + } + if o.Role.Device.Webui.Objects.Sdwan != nil { + nestedRole.Device.Webui.Objects.Sdwan = &RoleDeviceWebuiObjectsSdwanXml{} + if _, ok := o.Misc["RoleDeviceWebuiObjectsSdwan"]; ok { + nestedRole.Device.Webui.Objects.Sdwan.Misc = o.Misc["RoleDeviceWebuiObjectsSdwan"] } - if o.Role.Device.Webui.Monitor.CustomReports.DecryptionLog != nil { - nestedRole.Device.Webui.Monitor.CustomReports.DecryptionLog = o.Role.Device.Webui.Monitor.CustomReports.DecryptionLog + if o.Role.Device.Webui.Objects.Sdwan.SdwanProfile != nil { + nestedRole.Device.Webui.Objects.Sdwan.SdwanProfile = o.Role.Device.Webui.Objects.Sdwan.SdwanProfile } - if o.Role.Device.Webui.Monitor.CustomReports.DecryptionSummary != nil { - nestedRole.Device.Webui.Monitor.CustomReports.DecryptionSummary = o.Role.Device.Webui.Monitor.CustomReports.DecryptionSummary + if o.Role.Device.Webui.Objects.Sdwan.SdwanSaasQualityProfile != nil { + nestedRole.Device.Webui.Objects.Sdwan.SdwanSaasQualityProfile = o.Role.Device.Webui.Objects.Sdwan.SdwanSaasQualityProfile } - if o.Role.Device.Webui.Monitor.CustomReports.GtpLog != nil { - nestedRole.Device.Webui.Monitor.CustomReports.GtpLog = o.Role.Device.Webui.Monitor.CustomReports.GtpLog + if o.Role.Device.Webui.Objects.Sdwan.SdwanDistProfile != nil { + nestedRole.Device.Webui.Objects.Sdwan.SdwanDistProfile = o.Role.Device.Webui.Objects.Sdwan.SdwanDistProfile } - if o.Role.Device.Webui.Monitor.CustomReports.Hipmatch != nil { - nestedRole.Device.Webui.Monitor.CustomReports.Hipmatch = o.Role.Device.Webui.Monitor.CustomReports.Hipmatch + if o.Role.Device.Webui.Objects.Sdwan.SdwanErrorCorrectionProfile != nil { + nestedRole.Device.Webui.Objects.Sdwan.SdwanErrorCorrectionProfile = o.Role.Device.Webui.Objects.Sdwan.SdwanErrorCorrectionProfile } - if o.Role.Device.Webui.Monitor.CustomReports.SctpLog != nil { - nestedRole.Device.Webui.Monitor.CustomReports.SctpLog = o.Role.Device.Webui.Monitor.CustomReports.SctpLog + } + if o.Role.Device.Webui.Objects.GlobalProtect != nil { + nestedRole.Device.Webui.Objects.GlobalProtect = &RoleDeviceWebuiObjectsGlobalProtectXml{} + if _, ok := o.Misc["RoleDeviceWebuiObjectsGlobalProtect"]; ok { + nestedRole.Device.Webui.Objects.GlobalProtect.Misc = o.Misc["RoleDeviceWebuiObjectsGlobalProtect"] } - if o.Role.Device.Webui.Monitor.CustomReports.ThreatLog != nil { - nestedRole.Device.Webui.Monitor.CustomReports.ThreatLog = o.Role.Device.Webui.Monitor.CustomReports.ThreatLog + if o.Role.Device.Webui.Objects.GlobalProtect.HipObjects != nil { + nestedRole.Device.Webui.Objects.GlobalProtect.HipObjects = o.Role.Device.Webui.Objects.GlobalProtect.HipObjects } - if o.Role.Device.Webui.Monitor.CustomReports.Userid != nil { - nestedRole.Device.Webui.Monitor.CustomReports.Userid = o.Role.Device.Webui.Monitor.CustomReports.Userid + if o.Role.Device.Webui.Objects.GlobalProtect.HipProfiles != nil { + nestedRole.Device.Webui.Objects.GlobalProtect.HipProfiles = o.Role.Device.Webui.Objects.GlobalProtect.HipProfiles } } - if o.Role.Device.Webui.Monitor.GtpReports != nil { - nestedRole.Device.Webui.Monitor.GtpReports = o.Role.Device.Webui.Monitor.GtpReports - } - if o.Role.Device.Webui.Monitor.PacketCapture != nil { - nestedRole.Device.Webui.Monitor.PacketCapture = o.Role.Device.Webui.Monitor.PacketCapture + if o.Role.Device.Webui.Objects.PacketBrokerProfile != nil { + nestedRole.Device.Webui.Objects.PacketBrokerProfile = o.Role.Device.Webui.Objects.PacketBrokerProfile } - if o.Role.Device.Webui.Monitor.SctpReports != nil { - nestedRole.Device.Webui.Monitor.SctpReports = o.Role.Device.Webui.Monitor.SctpReports + if o.Role.Device.Webui.Objects.Regions != nil { + nestedRole.Device.Webui.Objects.Regions = o.Role.Device.Webui.Objects.Regions } - if o.Role.Device.Webui.Monitor.ThreatReports != nil { - nestedRole.Device.Webui.Monitor.ThreatReports = o.Role.Device.Webui.Monitor.ThreatReports + if o.Role.Device.Webui.Objects.Schedules != nil { + nestedRole.Device.Webui.Objects.Schedules = o.Role.Device.Webui.Objects.Schedules } - if o.Role.Device.Webui.Monitor.TrafficReports != nil { - nestedRole.Device.Webui.Monitor.TrafficReports = o.Role.Device.Webui.Monitor.TrafficReports + if o.Role.Device.Webui.Objects.ServiceGroups != nil { + nestedRole.Device.Webui.Objects.ServiceGroups = o.Role.Device.Webui.Objects.ServiceGroups } - } - if o.Role.Device.Webui.Objects != nil { - nestedRole.Device.Webui.Objects = &RoleDeviceWebuiObjectsXml{} - if _, ok := o.Misc["RoleDeviceWebuiObjects"]; ok { - nestedRole.Device.Webui.Objects.Misc = o.Misc["RoleDeviceWebuiObjects"] + if o.Role.Device.Webui.Objects.ApplicationFilters != nil { + nestedRole.Device.Webui.Objects.ApplicationFilters = o.Role.Device.Webui.Objects.ApplicationFilters } if o.Role.Device.Webui.Objects.Decryption != nil { nestedRole.Device.Webui.Objects.Decryption = &RoleDeviceWebuiObjectsDecryptionXml{} @@ -2361,35 +2616,17 @@ func specifyEntry(o *Entry) (any, error) { nestedRole.Device.Webui.Objects.Decryption.DecryptionProfile = o.Role.Device.Webui.Objects.Decryption.DecryptionProfile } } - if o.Role.Device.Webui.Objects.Tags != nil { - nestedRole.Device.Webui.Objects.Tags = o.Role.Device.Webui.Objects.Tags - } - if o.Role.Device.Webui.Objects.AddressGroups != nil { - nestedRole.Device.Webui.Objects.AddressGroups = o.Role.Device.Webui.Objects.AddressGroups - } - if o.Role.Device.Webui.Objects.ApplicationFilters != nil { - nestedRole.Device.Webui.Objects.ApplicationFilters = o.Role.Device.Webui.Objects.ApplicationFilters - } if o.Role.Device.Webui.Objects.Devices != nil { nestedRole.Device.Webui.Objects.Devices = o.Role.Device.Webui.Objects.Devices } - if o.Role.Device.Webui.Objects.DynamicUserGroups != nil { - nestedRole.Device.Webui.Objects.DynamicUserGroups = o.Role.Device.Webui.Objects.DynamicUserGroups - } - if o.Role.Device.Webui.Objects.Regions != nil { - nestedRole.Device.Webui.Objects.Regions = o.Role.Device.Webui.Objects.Regions - } - if o.Role.Device.Webui.Objects.Schedules != nil { - nestedRole.Device.Webui.Objects.Schedules = o.Role.Device.Webui.Objects.Schedules - } - if o.Role.Device.Webui.Objects.ServiceGroups != nil { - nestedRole.Device.Webui.Objects.ServiceGroups = o.Role.Device.Webui.Objects.ServiceGroups + if o.Role.Device.Webui.Objects.Tags != nil { + nestedRole.Device.Webui.Objects.Tags = o.Role.Device.Webui.Objects.Tags } - if o.Role.Device.Webui.Objects.ApplicationGroups != nil { - nestedRole.Device.Webui.Objects.ApplicationGroups = o.Role.Device.Webui.Objects.ApplicationGroups + if o.Role.Device.Webui.Objects.SecurityProfileGroups != nil { + nestedRole.Device.Webui.Objects.SecurityProfileGroups = o.Role.Device.Webui.Objects.SecurityProfileGroups } - if o.Role.Device.Webui.Objects.Applications != nil { - nestedRole.Device.Webui.Objects.Applications = o.Role.Device.Webui.Objects.Applications + if o.Role.Device.Webui.Objects.Addresses != nil { + nestedRole.Device.Webui.Objects.Addresses = o.Role.Device.Webui.Objects.Addresses } if o.Role.Device.Webui.Objects.Authentication != nil { nestedRole.Device.Webui.Objects.Authentication = o.Role.Device.Webui.Objects.Authentication @@ -2399,686 +2636,416 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["RoleDeviceWebuiObjectsCustomObjects"]; ok { nestedRole.Device.Webui.Objects.CustomObjects.Misc = o.Misc["RoleDeviceWebuiObjectsCustomObjects"] } - if o.Role.Device.Webui.Objects.CustomObjects.UrlCategory != nil { - nestedRole.Device.Webui.Objects.CustomObjects.UrlCategory = o.Role.Device.Webui.Objects.CustomObjects.UrlCategory - } - if o.Role.Device.Webui.Objects.CustomObjects.Vulnerability != nil { - nestedRole.Device.Webui.Objects.CustomObjects.Vulnerability = o.Role.Device.Webui.Objects.CustomObjects.Vulnerability - } if o.Role.Device.Webui.Objects.CustomObjects.DataPatterns != nil { nestedRole.Device.Webui.Objects.CustomObjects.DataPatterns = o.Role.Device.Webui.Objects.CustomObjects.DataPatterns } if o.Role.Device.Webui.Objects.CustomObjects.Spyware != nil { nestedRole.Device.Webui.Objects.CustomObjects.Spyware = o.Role.Device.Webui.Objects.CustomObjects.Spyware } - } - if o.Role.Device.Webui.Objects.SecurityProfiles != nil { - nestedRole.Device.Webui.Objects.SecurityProfiles = &RoleDeviceWebuiObjectsSecurityProfilesXml{} - if _, ok := o.Misc["RoleDeviceWebuiObjectsSecurityProfiles"]; ok { - nestedRole.Device.Webui.Objects.SecurityProfiles.Misc = o.Misc["RoleDeviceWebuiObjectsSecurityProfiles"] - } - if o.Role.Device.Webui.Objects.SecurityProfiles.AntiSpyware != nil { - nestedRole.Device.Webui.Objects.SecurityProfiles.AntiSpyware = o.Role.Device.Webui.Objects.SecurityProfiles.AntiSpyware - } - if o.Role.Device.Webui.Objects.SecurityProfiles.Antivirus != nil { - nestedRole.Device.Webui.Objects.SecurityProfiles.Antivirus = o.Role.Device.Webui.Objects.SecurityProfiles.Antivirus - } - if o.Role.Device.Webui.Objects.SecurityProfiles.UrlFiltering != nil { - nestedRole.Device.Webui.Objects.SecurityProfiles.UrlFiltering = o.Role.Device.Webui.Objects.SecurityProfiles.UrlFiltering - } - if o.Role.Device.Webui.Objects.SecurityProfiles.VulnerabilityProtection != nil { - nestedRole.Device.Webui.Objects.SecurityProfiles.VulnerabilityProtection = o.Role.Device.Webui.Objects.SecurityProfiles.VulnerabilityProtection - } - if o.Role.Device.Webui.Objects.SecurityProfiles.DataFiltering != nil { - nestedRole.Device.Webui.Objects.SecurityProfiles.DataFiltering = o.Role.Device.Webui.Objects.SecurityProfiles.DataFiltering - } - if o.Role.Device.Webui.Objects.SecurityProfiles.DosProtection != nil { - nestedRole.Device.Webui.Objects.SecurityProfiles.DosProtection = o.Role.Device.Webui.Objects.SecurityProfiles.DosProtection - } - if o.Role.Device.Webui.Objects.SecurityProfiles.FileBlocking != nil { - nestedRole.Device.Webui.Objects.SecurityProfiles.FileBlocking = o.Role.Device.Webui.Objects.SecurityProfiles.FileBlocking - } - if o.Role.Device.Webui.Objects.SecurityProfiles.GtpProtection != nil { - nestedRole.Device.Webui.Objects.SecurityProfiles.GtpProtection = o.Role.Device.Webui.Objects.SecurityProfiles.GtpProtection - } - if o.Role.Device.Webui.Objects.SecurityProfiles.SctpProtection != nil { - nestedRole.Device.Webui.Objects.SecurityProfiles.SctpProtection = o.Role.Device.Webui.Objects.SecurityProfiles.SctpProtection + if o.Role.Device.Webui.Objects.CustomObjects.UrlCategory != nil { + nestedRole.Device.Webui.Objects.CustomObjects.UrlCategory = o.Role.Device.Webui.Objects.CustomObjects.UrlCategory } - if o.Role.Device.Webui.Objects.SecurityProfiles.WildfireAnalysis != nil { - nestedRole.Device.Webui.Objects.SecurityProfiles.WildfireAnalysis = o.Role.Device.Webui.Objects.SecurityProfiles.WildfireAnalysis + if o.Role.Device.Webui.Objects.CustomObjects.Vulnerability != nil { + nestedRole.Device.Webui.Objects.CustomObjects.Vulnerability = o.Role.Device.Webui.Objects.CustomObjects.Vulnerability } } - if o.Role.Device.Webui.Objects.Services != nil { - nestedRole.Device.Webui.Objects.Services = o.Role.Device.Webui.Objects.Services + } + if o.Role.Device.Webui.Policies != nil { + nestedRole.Device.Webui.Policies = &RoleDeviceWebuiPoliciesXml{} + if _, ok := o.Misc["RoleDeviceWebuiPolicies"]; ok { + nestedRole.Device.Webui.Policies.Misc = o.Misc["RoleDeviceWebuiPolicies"] + } + if o.Role.Device.Webui.Policies.NatRulebase != nil { + nestedRole.Device.Webui.Policies.NatRulebase = o.Role.Device.Webui.Policies.NatRulebase + } + if o.Role.Device.Webui.Policies.NetworkPacketBrokerRulebase != nil { + nestedRole.Device.Webui.Policies.NetworkPacketBrokerRulebase = o.Role.Device.Webui.Policies.NetworkPacketBrokerRulebase + } + if o.Role.Device.Webui.Policies.SecurityRulebase != nil { + nestedRole.Device.Webui.Policies.SecurityRulebase = o.Role.Device.Webui.Policies.SecurityRulebase + } + if o.Role.Device.Webui.Policies.SslDecryptionRulebase != nil { + nestedRole.Device.Webui.Policies.SslDecryptionRulebase = o.Role.Device.Webui.Policies.SslDecryptionRulebase + } + if o.Role.Device.Webui.Policies.AuthenticationRulebase != nil { + nestedRole.Device.Webui.Policies.AuthenticationRulebase = o.Role.Device.Webui.Policies.AuthenticationRulebase + } + if o.Role.Device.Webui.Policies.DosRulebase != nil { + nestedRole.Device.Webui.Policies.DosRulebase = o.Role.Device.Webui.Policies.DosRulebase + } + if o.Role.Device.Webui.Policies.PbfRulebase != nil { + nestedRole.Device.Webui.Policies.PbfRulebase = o.Role.Device.Webui.Policies.PbfRulebase + } + if o.Role.Device.Webui.Policies.QosRulebase != nil { + nestedRole.Device.Webui.Policies.QosRulebase = o.Role.Device.Webui.Policies.QosRulebase + } + if o.Role.Device.Webui.Policies.RuleHitCountReset != nil { + nestedRole.Device.Webui.Policies.RuleHitCountReset = o.Role.Device.Webui.Policies.RuleHitCountReset + } + if o.Role.Device.Webui.Policies.SdwanRulebase != nil { + nestedRole.Device.Webui.Policies.SdwanRulebase = o.Role.Device.Webui.Policies.SdwanRulebase + } + if o.Role.Device.Webui.Policies.TunnelInspectRulebase != nil { + nestedRole.Device.Webui.Policies.TunnelInspectRulebase = o.Role.Device.Webui.Policies.TunnelInspectRulebase + } + if o.Role.Device.Webui.Policies.ApplicationOverrideRulebase != nil { + nestedRole.Device.Webui.Policies.ApplicationOverrideRulebase = o.Role.Device.Webui.Policies.ApplicationOverrideRulebase + } + } + } + if o.Role.Device.Xmlapi != nil { + nestedRole.Device.Xmlapi = &RoleDeviceXmlapiXml{} + if _, ok := o.Misc["RoleDeviceXmlapi"]; ok { + nestedRole.Device.Xmlapi.Misc = o.Misc["RoleDeviceXmlapi"] + } + if o.Role.Device.Xmlapi.Commit != nil { + nestedRole.Device.Xmlapi.Commit = o.Role.Device.Xmlapi.Commit + } + if o.Role.Device.Xmlapi.Import != nil { + nestedRole.Device.Xmlapi.Import = o.Role.Device.Xmlapi.Import + } + if o.Role.Device.Xmlapi.Op != nil { + nestedRole.Device.Xmlapi.Op = o.Role.Device.Xmlapi.Op + } + if o.Role.Device.Xmlapi.Report != nil { + nestedRole.Device.Xmlapi.Report = o.Role.Device.Xmlapi.Report + } + if o.Role.Device.Xmlapi.UserId != nil { + nestedRole.Device.Xmlapi.UserId = o.Role.Device.Xmlapi.UserId + } + if o.Role.Device.Xmlapi.Config != nil { + nestedRole.Device.Xmlapi.Config = o.Role.Device.Xmlapi.Config + } + if o.Role.Device.Xmlapi.Export != nil { + nestedRole.Device.Xmlapi.Export = o.Role.Device.Xmlapi.Export + } + if o.Role.Device.Xmlapi.Iot != nil { + nestedRole.Device.Xmlapi.Iot = o.Role.Device.Xmlapi.Iot + } + if o.Role.Device.Xmlapi.Log != nil { + nestedRole.Device.Xmlapi.Log = o.Role.Device.Xmlapi.Log + } + } + if o.Role.Device.Cli != nil { + nestedRole.Device.Cli = o.Role.Device.Cli + } + if o.Role.Device.Restapi != nil { + nestedRole.Device.Restapi = &RoleDeviceRestapiXml{} + if _, ok := o.Misc["RoleDeviceRestapi"]; ok { + nestedRole.Device.Restapi.Misc = o.Misc["RoleDeviceRestapi"] + } + if o.Role.Device.Restapi.Device != nil { + nestedRole.Device.Restapi.Device = &RoleDeviceRestapiDeviceXml{} + if _, ok := o.Misc["RoleDeviceRestapiDevice"]; ok { + nestedRole.Device.Restapi.Device.Misc = o.Misc["RoleDeviceRestapiDevice"] } - if o.Role.Device.Webui.Objects.Addresses != nil { - nestedRole.Device.Webui.Objects.Addresses = o.Role.Device.Webui.Objects.Addresses + if o.Role.Device.Restapi.Device.SyslogServerProfiles != nil { + nestedRole.Device.Restapi.Device.SyslogServerProfiles = o.Role.Device.Restapi.Device.SyslogServerProfiles } - if o.Role.Device.Webui.Objects.DynamicBlockLists != nil { - nestedRole.Device.Webui.Objects.DynamicBlockLists = o.Role.Device.Webui.Objects.DynamicBlockLists + if o.Role.Device.Restapi.Device.VirtualSystems != nil { + nestedRole.Device.Restapi.Device.VirtualSystems = o.Role.Device.Restapi.Device.VirtualSystems } - if o.Role.Device.Webui.Objects.GlobalProtect != nil { - nestedRole.Device.Webui.Objects.GlobalProtect = &RoleDeviceWebuiObjectsGlobalProtectXml{} - if _, ok := o.Misc["RoleDeviceWebuiObjectsGlobalProtect"]; ok { - nestedRole.Device.Webui.Objects.GlobalProtect.Misc = o.Misc["RoleDeviceWebuiObjectsGlobalProtect"] - } - if o.Role.Device.Webui.Objects.GlobalProtect.HipObjects != nil { - nestedRole.Device.Webui.Objects.GlobalProtect.HipObjects = o.Role.Device.Webui.Objects.GlobalProtect.HipObjects - } - if o.Role.Device.Webui.Objects.GlobalProtect.HipProfiles != nil { - nestedRole.Device.Webui.Objects.GlobalProtect.HipProfiles = o.Role.Device.Webui.Objects.GlobalProtect.HipProfiles - } + if o.Role.Device.Restapi.Device.EmailServerProfiles != nil { + nestedRole.Device.Restapi.Device.EmailServerProfiles = o.Role.Device.Restapi.Device.EmailServerProfiles } - if o.Role.Device.Webui.Objects.LogForwarding != nil { - nestedRole.Device.Webui.Objects.LogForwarding = o.Role.Device.Webui.Objects.LogForwarding + if o.Role.Device.Restapi.Device.HttpServerProfiles != nil { + nestedRole.Device.Restapi.Device.HttpServerProfiles = o.Role.Device.Restapi.Device.HttpServerProfiles } - if o.Role.Device.Webui.Objects.PacketBrokerProfile != nil { - nestedRole.Device.Webui.Objects.PacketBrokerProfile = o.Role.Device.Webui.Objects.PacketBrokerProfile + if o.Role.Device.Restapi.Device.LdapServerProfiles != nil { + nestedRole.Device.Restapi.Device.LdapServerProfiles = o.Role.Device.Restapi.Device.LdapServerProfiles } - if o.Role.Device.Webui.Objects.Sdwan != nil { - nestedRole.Device.Webui.Objects.Sdwan = &RoleDeviceWebuiObjectsSdwanXml{} - if _, ok := o.Misc["RoleDeviceWebuiObjectsSdwan"]; ok { - nestedRole.Device.Webui.Objects.Sdwan.Misc = o.Misc["RoleDeviceWebuiObjectsSdwan"] - } - if o.Role.Device.Webui.Objects.Sdwan.SdwanDistProfile != nil { - nestedRole.Device.Webui.Objects.Sdwan.SdwanDistProfile = o.Role.Device.Webui.Objects.Sdwan.SdwanDistProfile - } - if o.Role.Device.Webui.Objects.Sdwan.SdwanErrorCorrectionProfile != nil { - nestedRole.Device.Webui.Objects.Sdwan.SdwanErrorCorrectionProfile = o.Role.Device.Webui.Objects.Sdwan.SdwanErrorCorrectionProfile - } - if o.Role.Device.Webui.Objects.Sdwan.SdwanProfile != nil { - nestedRole.Device.Webui.Objects.Sdwan.SdwanProfile = o.Role.Device.Webui.Objects.Sdwan.SdwanProfile - } - if o.Role.Device.Webui.Objects.Sdwan.SdwanSaasQualityProfile != nil { - nestedRole.Device.Webui.Objects.Sdwan.SdwanSaasQualityProfile = o.Role.Device.Webui.Objects.Sdwan.SdwanSaasQualityProfile - } + if o.Role.Device.Restapi.Device.LogInterfaceSetting != nil { + nestedRole.Device.Restapi.Device.LogInterfaceSetting = o.Role.Device.Restapi.Device.LogInterfaceSetting } - if o.Role.Device.Webui.Objects.SecurityProfileGroups != nil { - nestedRole.Device.Webui.Objects.SecurityProfileGroups = o.Role.Device.Webui.Objects.SecurityProfileGroups + if o.Role.Device.Restapi.Device.SnmpTrapServerProfiles != nil { + nestedRole.Device.Restapi.Device.SnmpTrapServerProfiles = o.Role.Device.Restapi.Device.SnmpTrapServerProfiles } } - if o.Role.Device.Webui.Operations != nil { - nestedRole.Device.Webui.Operations = &RoleDeviceWebuiOperationsXml{} - if _, ok := o.Misc["RoleDeviceWebuiOperations"]; ok { - nestedRole.Device.Webui.Operations.Misc = o.Misc["RoleDeviceWebuiOperations"] - } - if o.Role.Device.Webui.Operations.DownloadCoreFiles != nil { - nestedRole.Device.Webui.Operations.DownloadCoreFiles = o.Role.Device.Webui.Operations.DownloadCoreFiles - } - if o.Role.Device.Webui.Operations.DownloadPcapFiles != nil { - nestedRole.Device.Webui.Operations.DownloadPcapFiles = o.Role.Device.Webui.Operations.DownloadPcapFiles + if o.Role.Device.Restapi.Network != nil { + nestedRole.Device.Restapi.Network = &RoleDeviceRestapiNetworkXml{} + if _, ok := o.Misc["RoleDeviceRestapiNetwork"]; ok { + nestedRole.Device.Restapi.Network.Misc = o.Misc["RoleDeviceRestapiNetwork"] } - if o.Role.Device.Webui.Operations.GenerateStatsDumpFile != nil { - nestedRole.Device.Webui.Operations.GenerateStatsDumpFile = o.Role.Device.Webui.Operations.GenerateStatsDumpFile + if o.Role.Device.Restapi.Network.Lldp != nil { + nestedRole.Device.Restapi.Network.Lldp = o.Role.Device.Restapi.Network.Lldp } - if o.Role.Device.Webui.Operations.GenerateTechSupportFile != nil { - nestedRole.Device.Webui.Operations.GenerateTechSupportFile = o.Role.Device.Webui.Operations.GenerateTechSupportFile + if o.Role.Device.Restapi.Network.QosNetworkProfiles != nil { + nestedRole.Device.Restapi.Network.QosNetworkProfiles = o.Role.Device.Restapi.Network.QosNetworkProfiles } - if o.Role.Device.Webui.Operations.Reboot != nil { - nestedRole.Device.Webui.Operations.Reboot = o.Role.Device.Webui.Operations.Reboot + if o.Role.Device.Restapi.Network.TunnelMonitorNetworkProfiles != nil { + nestedRole.Device.Restapi.Network.TunnelMonitorNetworkProfiles = o.Role.Device.Restapi.Network.TunnelMonitorNetworkProfiles } - } - if o.Role.Device.Webui.Commit != nil { - nestedRole.Device.Webui.Commit = &RoleDeviceWebuiCommitXml{} - if _, ok := o.Misc["RoleDeviceWebuiCommit"]; ok { - nestedRole.Device.Webui.Commit.Misc = o.Misc["RoleDeviceWebuiCommit"] + if o.Role.Device.Restapi.Network.BgpRoutingProfiles != nil { + nestedRole.Device.Restapi.Network.BgpRoutingProfiles = o.Role.Device.Restapi.Network.BgpRoutingProfiles } - if o.Role.Device.Webui.Commit.Device != nil { - nestedRole.Device.Webui.Commit.Device = o.Role.Device.Webui.Commit.Device + if o.Role.Device.Restapi.Network.GlobalprotectPortals != nil { + nestedRole.Device.Restapi.Network.GlobalprotectPortals = o.Role.Device.Restapi.Network.GlobalprotectPortals } - if o.Role.Device.Webui.Commit.ObjectLevelChanges != nil { - nestedRole.Device.Webui.Commit.ObjectLevelChanges = o.Role.Device.Webui.Commit.ObjectLevelChanges + if o.Role.Device.Restapi.Network.IkeGatewayNetworkProfiles != nil { + nestedRole.Device.Restapi.Network.IkeGatewayNetworkProfiles = o.Role.Device.Restapi.Network.IkeGatewayNetworkProfiles } - if o.Role.Device.Webui.Commit.CommitForOtherAdmins != nil { - nestedRole.Device.Webui.Commit.CommitForOtherAdmins = o.Role.Device.Webui.Commit.CommitForOtherAdmins + if o.Role.Device.Restapi.Network.IpsecCryptoNetworkProfiles != nil { + nestedRole.Device.Restapi.Network.IpsecCryptoNetworkProfiles = o.Role.Device.Restapi.Network.IpsecCryptoNetworkProfiles } - } - if o.Role.Device.Webui.Device != nil { - nestedRole.Device.Webui.Device = &RoleDeviceWebuiDeviceXml{} - if _, ok := o.Misc["RoleDeviceWebuiDevice"]; ok { - nestedRole.Device.Webui.Device.Misc = o.Misc["RoleDeviceWebuiDevice"] + if o.Role.Device.Restapi.Network.SdwanInterfaceProfiles != nil { + nestedRole.Device.Restapi.Network.SdwanInterfaceProfiles = o.Role.Device.Restapi.Network.SdwanInterfaceProfiles } - if o.Role.Device.Webui.Device.SharedGateways != nil { - nestedRole.Device.Webui.Device.SharedGateways = o.Role.Device.Webui.Device.SharedGateways + if o.Role.Device.Restapi.Network.DhcpServers != nil { + nestedRole.Device.Restapi.Network.DhcpServers = o.Role.Device.Restapi.Network.DhcpServers } - if o.Role.Device.Webui.Device.BlockPages != nil { - nestedRole.Device.Webui.Device.BlockPages = o.Role.Device.Webui.Device.BlockPages + if o.Role.Device.Restapi.Network.DnsProxies != nil { + nestedRole.Device.Restapi.Network.DnsProxies = o.Role.Device.Restapi.Network.DnsProxies } - if o.Role.Device.Webui.Device.Licenses != nil { - nestedRole.Device.Webui.Device.Licenses = o.Role.Device.Webui.Device.Licenses + if o.Role.Device.Restapi.Network.EthernetInterfaces != nil { + nestedRole.Device.Restapi.Network.EthernetInterfaces = o.Role.Device.Restapi.Network.EthernetInterfaces } - if o.Role.Device.Webui.Device.DataRedistribution != nil { - nestedRole.Device.Webui.Device.DataRedistribution = o.Role.Device.Webui.Device.DataRedistribution + if o.Role.Device.Restapi.Network.GlobalprotectClientlessApps != nil { + nestedRole.Device.Restapi.Network.GlobalprotectClientlessApps = o.Role.Device.Restapi.Network.GlobalprotectClientlessApps } - if o.Role.Device.Webui.Device.MasterKey != nil { - nestedRole.Device.Webui.Device.MasterKey = o.Role.Device.Webui.Device.MasterKey + if o.Role.Device.Restapi.Network.DhcpRelays != nil { + nestedRole.Device.Restapi.Network.DhcpRelays = o.Role.Device.Restapi.Network.DhcpRelays } - if o.Role.Device.Webui.Device.Setup != nil { - nestedRole.Device.Webui.Device.Setup = &RoleDeviceWebuiDeviceSetupXml{} - if _, ok := o.Misc["RoleDeviceWebuiDeviceSetup"]; ok { - nestedRole.Device.Webui.Device.Setup.Misc = o.Misc["RoleDeviceWebuiDeviceSetup"] - } - if o.Role.Device.Webui.Device.Setup.Management != nil { - nestedRole.Device.Webui.Device.Setup.Management = o.Role.Device.Webui.Device.Setup.Management - } - if o.Role.Device.Webui.Device.Setup.Operations != nil { - nestedRole.Device.Webui.Device.Setup.Operations = o.Role.Device.Webui.Device.Setup.Operations - } - if o.Role.Device.Webui.Device.Setup.Services != nil { - nestedRole.Device.Webui.Device.Setup.Services = o.Role.Device.Webui.Device.Setup.Services - } - if o.Role.Device.Webui.Device.Setup.Wildfire != nil { - nestedRole.Device.Webui.Device.Setup.Wildfire = o.Role.Device.Webui.Device.Setup.Wildfire - } - if o.Role.Device.Webui.Device.Setup.ContentId != nil { - nestedRole.Device.Webui.Device.Setup.ContentId = o.Role.Device.Webui.Device.Setup.ContentId - } - if o.Role.Device.Webui.Device.Setup.Hsm != nil { - nestedRole.Device.Webui.Device.Setup.Hsm = o.Role.Device.Webui.Device.Setup.Hsm - } - if o.Role.Device.Webui.Device.Setup.Interfaces != nil { - nestedRole.Device.Webui.Device.Setup.Interfaces = o.Role.Device.Webui.Device.Setup.Interfaces - } - if o.Role.Device.Webui.Device.Setup.Session != nil { - nestedRole.Device.Webui.Device.Setup.Session = o.Role.Device.Webui.Device.Setup.Session - } - if o.Role.Device.Webui.Device.Setup.Telemetry != nil { - nestedRole.Device.Webui.Device.Setup.Telemetry = o.Role.Device.Webui.Device.Setup.Telemetry - } + if o.Role.Device.Restapi.Network.LogicalRouters != nil { + nestedRole.Device.Restapi.Network.LogicalRouters = o.Role.Device.Restapi.Network.LogicalRouters } - if o.Role.Device.Webui.Device.Support != nil { - nestedRole.Device.Webui.Device.Support = o.Role.Device.Webui.Device.Support + if o.Role.Device.Restapi.Network.SdwanInterfaces != nil { + nestedRole.Device.Restapi.Network.SdwanInterfaces = o.Role.Device.Restapi.Network.SdwanInterfaces } - if o.Role.Device.Webui.Device.Troubleshooting != nil { - nestedRole.Device.Webui.Device.Troubleshooting = o.Role.Device.Webui.Device.Troubleshooting + if o.Role.Device.Restapi.Network.Vlans != nil { + nestedRole.Device.Restapi.Network.Vlans = o.Role.Device.Restapi.Network.Vlans } - if o.Role.Device.Webui.Device.AccessDomain != nil { - nestedRole.Device.Webui.Device.AccessDomain = o.Role.Device.Webui.Device.AccessDomain + if o.Role.Device.Restapi.Network.AggregateEthernetInterfaces != nil { + nestedRole.Device.Restapi.Network.AggregateEthernetInterfaces = o.Role.Device.Restapi.Network.AggregateEthernetInterfaces } - if o.Role.Device.Webui.Device.DynamicUpdates != nil { - nestedRole.Device.Webui.Device.DynamicUpdates = o.Role.Device.Webui.Device.DynamicUpdates + if o.Role.Device.Restapi.Network.GlobalprotectIpsecCryptoNetworkProfiles != nil { + nestedRole.Device.Restapi.Network.GlobalprotectIpsecCryptoNetworkProfiles = o.Role.Device.Restapi.Network.GlobalprotectIpsecCryptoNetworkProfiles } - if o.Role.Device.Webui.Device.HighAvailability != nil { - nestedRole.Device.Webui.Device.HighAvailability = o.Role.Device.Webui.Device.HighAvailability + if o.Role.Device.Restapi.Network.LoopbackInterfaces != nil { + nestedRole.Device.Restapi.Network.LoopbackInterfaces = o.Role.Device.Restapi.Network.LoopbackInterfaces } - if o.Role.Device.Webui.Device.AuthenticationProfile != nil { - nestedRole.Device.Webui.Device.AuthenticationProfile = o.Role.Device.Webui.Device.AuthenticationProfile + if o.Role.Device.Restapi.Network.QosInterfaces != nil { + nestedRole.Device.Restapi.Network.QosInterfaces = o.Role.Device.Restapi.Network.QosInterfaces } - if o.Role.Device.Webui.Device.ConfigAudit != nil { - nestedRole.Device.Webui.Device.ConfigAudit = o.Role.Device.Webui.Device.ConfigAudit + if o.Role.Device.Restapi.Network.LldpNetworkProfiles != nil { + nestedRole.Device.Restapi.Network.LldpNetworkProfiles = o.Role.Device.Restapi.Network.LldpNetworkProfiles } - if o.Role.Device.Webui.Device.ServerProfile != nil { - nestedRole.Device.Webui.Device.ServerProfile = &RoleDeviceWebuiDeviceServerProfileXml{} - if _, ok := o.Misc["RoleDeviceWebuiDeviceServerProfile"]; ok { - nestedRole.Device.Webui.Device.ServerProfile.Misc = o.Misc["RoleDeviceWebuiDeviceServerProfile"] - } - if o.Role.Device.Webui.Device.ServerProfile.Netflow != nil { - nestedRole.Device.Webui.Device.ServerProfile.Netflow = o.Role.Device.Webui.Device.ServerProfile.Netflow - } - if o.Role.Device.Webui.Device.ServerProfile.Radius != nil { - nestedRole.Device.Webui.Device.ServerProfile.Radius = o.Role.Device.Webui.Device.ServerProfile.Radius - } - if o.Role.Device.Webui.Device.ServerProfile.Scp != nil { - nestedRole.Device.Webui.Device.ServerProfile.Scp = o.Role.Device.Webui.Device.ServerProfile.Scp - } - if o.Role.Device.Webui.Device.ServerProfile.Syslog != nil { - nestedRole.Device.Webui.Device.ServerProfile.Syslog = o.Role.Device.Webui.Device.ServerProfile.Syslog - } - if o.Role.Device.Webui.Device.ServerProfile.Email != nil { - nestedRole.Device.Webui.Device.ServerProfile.Email = o.Role.Device.Webui.Device.ServerProfile.Email - } - if o.Role.Device.Webui.Device.ServerProfile.Http != nil { - nestedRole.Device.Webui.Device.ServerProfile.Http = o.Role.Device.Webui.Device.ServerProfile.Http - } - if o.Role.Device.Webui.Device.ServerProfile.Ldap != nil { - nestedRole.Device.Webui.Device.ServerProfile.Ldap = o.Role.Device.Webui.Device.ServerProfile.Ldap - } - if o.Role.Device.Webui.Device.ServerProfile.Mfa != nil { - nestedRole.Device.Webui.Device.ServerProfile.Mfa = o.Role.Device.Webui.Device.ServerProfile.Mfa - } - if o.Role.Device.Webui.Device.ServerProfile.Tacplus != nil { - nestedRole.Device.Webui.Device.ServerProfile.Tacplus = o.Role.Device.Webui.Device.ServerProfile.Tacplus - } - if o.Role.Device.Webui.Device.ServerProfile.Dns != nil { - nestedRole.Device.Webui.Device.ServerProfile.Dns = o.Role.Device.Webui.Device.ServerProfile.Dns - } - if o.Role.Device.Webui.Device.ServerProfile.Kerberos != nil { - nestedRole.Device.Webui.Device.ServerProfile.Kerberos = o.Role.Device.Webui.Device.ServerProfile.Kerberos - } - if o.Role.Device.Webui.Device.ServerProfile.SamlIdp != nil { - nestedRole.Device.Webui.Device.ServerProfile.SamlIdp = o.Role.Device.Webui.Device.ServerProfile.SamlIdp - } - if o.Role.Device.Webui.Device.ServerProfile.SnmpTrap != nil { - nestedRole.Device.Webui.Device.ServerProfile.SnmpTrap = o.Role.Device.Webui.Device.ServerProfile.SnmpTrap - } + if o.Role.Device.Restapi.Network.VlanInterfaces != nil { + nestedRole.Device.Restapi.Network.VlanInterfaces = o.Role.Device.Restapi.Network.VlanInterfaces } - if o.Role.Device.Webui.Device.UserIdentification != nil { - nestedRole.Device.Webui.Device.UserIdentification = o.Role.Device.Webui.Device.UserIdentification + if o.Role.Device.Restapi.Network.Zones != nil { + nestedRole.Device.Restapi.Network.Zones = o.Role.Device.Restapi.Network.Zones } - if o.Role.Device.Webui.Device.VmInfoSource != nil { - nestedRole.Device.Webui.Device.VmInfoSource = o.Role.Device.Webui.Device.VmInfoSource + if o.Role.Device.Restapi.Network.BfdNetworkProfiles != nil { + nestedRole.Device.Restapi.Network.BfdNetworkProfiles = o.Role.Device.Restapi.Network.BfdNetworkProfiles } - if o.Role.Device.Webui.Device.AuthenticationSequence != nil { - nestedRole.Device.Webui.Device.AuthenticationSequence = o.Role.Device.Webui.Device.AuthenticationSequence + if o.Role.Device.Restapi.Network.GreTunnels != nil { + nestedRole.Device.Restapi.Network.GreTunnels = o.Role.Device.Restapi.Network.GreTunnels } - if o.Role.Device.Webui.Device.DeviceQuarantine != nil { - nestedRole.Device.Webui.Device.DeviceQuarantine = o.Role.Device.Webui.Device.DeviceQuarantine + if o.Role.Device.Restapi.Network.IkeCryptoNetworkProfiles != nil { + nestedRole.Device.Restapi.Network.IkeCryptoNetworkProfiles = o.Role.Device.Restapi.Network.IkeCryptoNetworkProfiles } - if o.Role.Device.Webui.Device.Plugins != nil { - nestedRole.Device.Webui.Device.Plugins = o.Role.Device.Webui.Device.Plugins + if o.Role.Device.Restapi.Network.IpsecTunnels != nil { + nestedRole.Device.Restapi.Network.IpsecTunnels = o.Role.Device.Restapi.Network.IpsecTunnels } - if o.Role.Device.Webui.Device.DhcpSyslogServer != nil { - nestedRole.Device.Webui.Device.DhcpSyslogServer = o.Role.Device.Webui.Device.DhcpSyslogServer + if o.Role.Device.Restapi.Network.GlobalprotectClientlessAppGroups != nil { + nestedRole.Device.Restapi.Network.GlobalprotectClientlessAppGroups = o.Role.Device.Restapi.Network.GlobalprotectClientlessAppGroups } - if o.Role.Device.Webui.Device.GlobalProtectClient != nil { - nestedRole.Device.Webui.Device.GlobalProtectClient = o.Role.Device.Webui.Device.GlobalProtectClient + if o.Role.Device.Restapi.Network.GlobalprotectGateways != nil { + nestedRole.Device.Restapi.Network.GlobalprotectGateways = o.Role.Device.Restapi.Network.GlobalprotectGateways } - if o.Role.Device.Webui.Device.LocalUserDatabase != nil { - nestedRole.Device.Webui.Device.LocalUserDatabase = &RoleDeviceWebuiDeviceLocalUserDatabaseXml{} - if _, ok := o.Misc["RoleDeviceWebuiDeviceLocalUserDatabase"]; ok { - nestedRole.Device.Webui.Device.LocalUserDatabase.Misc = o.Misc["RoleDeviceWebuiDeviceLocalUserDatabase"] - } - if o.Role.Device.Webui.Device.LocalUserDatabase.UserGroups != nil { - nestedRole.Device.Webui.Device.LocalUserDatabase.UserGroups = o.Role.Device.Webui.Device.LocalUserDatabase.UserGroups - } - if o.Role.Device.Webui.Device.LocalUserDatabase.Users != nil { - nestedRole.Device.Webui.Device.LocalUserDatabase.Users = o.Role.Device.Webui.Device.LocalUserDatabase.Users - } + if o.Role.Device.Restapi.Network.GlobalprotectMdmServers != nil { + nestedRole.Device.Restapi.Network.GlobalprotectMdmServers = o.Role.Device.Restapi.Network.GlobalprotectMdmServers } - if o.Role.Device.Webui.Device.PolicyRecommendations != nil { - nestedRole.Device.Webui.Device.PolicyRecommendations = &RoleDeviceWebuiDevicePolicyRecommendationsXml{} - if _, ok := o.Misc["RoleDeviceWebuiDevicePolicyRecommendations"]; ok { - nestedRole.Device.Webui.Device.PolicyRecommendations.Misc = o.Misc["RoleDeviceWebuiDevicePolicyRecommendations"] - } - if o.Role.Device.Webui.Device.PolicyRecommendations.Iot != nil { - nestedRole.Device.Webui.Device.PolicyRecommendations.Iot = o.Role.Device.Webui.Device.PolicyRecommendations.Iot - } - if o.Role.Device.Webui.Device.PolicyRecommendations.Saas != nil { - nestedRole.Device.Webui.Device.PolicyRecommendations.Saas = o.Role.Device.Webui.Device.PolicyRecommendations.Saas - } + if o.Role.Device.Restapi.Network.ZoneProtectionNetworkProfiles != nil { + nestedRole.Device.Restapi.Network.ZoneProtectionNetworkProfiles = o.Role.Device.Restapi.Network.ZoneProtectionNetworkProfiles } - if o.Role.Device.Webui.Device.Software != nil { - nestedRole.Device.Webui.Device.Software = o.Role.Device.Webui.Device.Software + if o.Role.Device.Restapi.Network.InterfaceManagementNetworkProfiles != nil { + nestedRole.Device.Restapi.Network.InterfaceManagementNetworkProfiles = o.Role.Device.Restapi.Network.InterfaceManagementNetworkProfiles } - if o.Role.Device.Webui.Device.CertificateManagement != nil { - nestedRole.Device.Webui.Device.CertificateManagement = &RoleDeviceWebuiDeviceCertificateManagementXml{} - if _, ok := o.Misc["RoleDeviceWebuiDeviceCertificateManagement"]; ok { - nestedRole.Device.Webui.Device.CertificateManagement.Misc = o.Misc["RoleDeviceWebuiDeviceCertificateManagement"] - } - if o.Role.Device.Webui.Device.CertificateManagement.CertificateProfile != nil { - nestedRole.Device.Webui.Device.CertificateManagement.CertificateProfile = o.Role.Device.Webui.Device.CertificateManagement.CertificateProfile - } - if o.Role.Device.Webui.Device.CertificateManagement.Certificates != nil { - nestedRole.Device.Webui.Device.CertificateManagement.Certificates = o.Role.Device.Webui.Device.CertificateManagement.Certificates - } - if o.Role.Device.Webui.Device.CertificateManagement.OcspResponder != nil { - nestedRole.Device.Webui.Device.CertificateManagement.OcspResponder = o.Role.Device.Webui.Device.CertificateManagement.OcspResponder - } - if o.Role.Device.Webui.Device.CertificateManagement.Scep != nil { - nestedRole.Device.Webui.Device.CertificateManagement.Scep = o.Role.Device.Webui.Device.CertificateManagement.Scep - } - if o.Role.Device.Webui.Device.CertificateManagement.SshServiceProfile != nil { - nestedRole.Device.Webui.Device.CertificateManagement.SshServiceProfile = o.Role.Device.Webui.Device.CertificateManagement.SshServiceProfile - } - if o.Role.Device.Webui.Device.CertificateManagement.SslDecryptionExclusion != nil { - nestedRole.Device.Webui.Device.CertificateManagement.SslDecryptionExclusion = o.Role.Device.Webui.Device.CertificateManagement.SslDecryptionExclusion - } - if o.Role.Device.Webui.Device.CertificateManagement.SslTlsServiceProfile != nil { - nestedRole.Device.Webui.Device.CertificateManagement.SslTlsServiceProfile = o.Role.Device.Webui.Device.CertificateManagement.SslTlsServiceProfile - } + if o.Role.Device.Restapi.Network.TunnelInterfaces != nil { + nestedRole.Device.Restapi.Network.TunnelInterfaces = o.Role.Device.Restapi.Network.TunnelInterfaces } - if o.Role.Device.Webui.Device.LogFwdCard != nil { - nestedRole.Device.Webui.Device.LogFwdCard = o.Role.Device.Webui.Device.LogFwdCard + if o.Role.Device.Restapi.Network.VirtualRouters != nil { + nestedRole.Device.Restapi.Network.VirtualRouters = o.Role.Device.Restapi.Network.VirtualRouters } - if o.Role.Device.Webui.Device.LogSettings != nil { - nestedRole.Device.Webui.Device.LogSettings = &RoleDeviceWebuiDeviceLogSettingsXml{} - if _, ok := o.Misc["RoleDeviceWebuiDeviceLogSettings"]; ok { - nestedRole.Device.Webui.Device.LogSettings.Misc = o.Misc["RoleDeviceWebuiDeviceLogSettings"] - } - if o.Role.Device.Webui.Device.LogSettings.Hipmatch != nil { - nestedRole.Device.Webui.Device.LogSettings.Hipmatch = o.Role.Device.Webui.Device.LogSettings.Hipmatch - } - if o.Role.Device.Webui.Device.LogSettings.Iptag != nil { - nestedRole.Device.Webui.Device.LogSettings.Iptag = o.Role.Device.Webui.Device.LogSettings.Iptag - } - if o.Role.Device.Webui.Device.LogSettings.ManageLog != nil { - nestedRole.Device.Webui.Device.LogSettings.ManageLog = o.Role.Device.Webui.Device.LogSettings.ManageLog - } - if o.Role.Device.Webui.Device.LogSettings.System != nil { - nestedRole.Device.Webui.Device.LogSettings.System = o.Role.Device.Webui.Device.LogSettings.System - } - if o.Role.Device.Webui.Device.LogSettings.UserId != nil { - nestedRole.Device.Webui.Device.LogSettings.UserId = o.Role.Device.Webui.Device.LogSettings.UserId - } - if o.Role.Device.Webui.Device.LogSettings.Correlation != nil { - nestedRole.Device.Webui.Device.LogSettings.Correlation = o.Role.Device.Webui.Device.LogSettings.Correlation - } - if o.Role.Device.Webui.Device.LogSettings.Globalprotect != nil { - nestedRole.Device.Webui.Device.LogSettings.Globalprotect = o.Role.Device.Webui.Device.LogSettings.Globalprotect - } - if o.Role.Device.Webui.Device.LogSettings.CcAlarm != nil { - nestedRole.Device.Webui.Device.LogSettings.CcAlarm = o.Role.Device.Webui.Device.LogSettings.CcAlarm - } - if o.Role.Device.Webui.Device.LogSettings.Config != nil { - nestedRole.Device.Webui.Device.LogSettings.Config = o.Role.Device.Webui.Device.LogSettings.Config - } + if o.Role.Device.Restapi.Network.VirtualWires != nil { + nestedRole.Device.Restapi.Network.VirtualWires = o.Role.Device.Restapi.Network.VirtualWires } - if o.Role.Device.Webui.Device.ScheduledLogExport != nil { - nestedRole.Device.Webui.Device.ScheduledLogExport = o.Role.Device.Webui.Device.ScheduledLogExport + } + if o.Role.Device.Restapi.Objects != nil { + nestedRole.Device.Restapi.Objects = &RoleDeviceRestapiObjectsXml{} + if _, ok := o.Misc["RoleDeviceRestapiObjects"]; ok { + nestedRole.Device.Restapi.Objects.Misc = o.Misc["RoleDeviceRestapiObjects"] } - if o.Role.Device.Webui.Device.VirtualSystems != nil { - nestedRole.Device.Webui.Device.VirtualSystems = o.Role.Device.Webui.Device.VirtualSystems + if o.Role.Device.Restapi.Objects.ExternalDynamicLists != nil { + nestedRole.Device.Restapi.Objects.ExternalDynamicLists = o.Role.Device.Restapi.Objects.ExternalDynamicLists } - if o.Role.Device.Webui.Device.AdminRoles != nil { - nestedRole.Device.Webui.Device.AdminRoles = o.Role.Device.Webui.Device.AdminRoles + if o.Role.Device.Restapi.Objects.AddressGroups != nil { + nestedRole.Device.Restapi.Objects.AddressGroups = o.Role.Device.Restapi.Objects.AddressGroups } - if o.Role.Device.Webui.Device.Administrators != nil { - nestedRole.Device.Webui.Device.Administrators = o.Role.Device.Webui.Device.Administrators + if o.Role.Device.Restapi.Objects.AntivirusSecurityProfiles != nil { + nestedRole.Device.Restapi.Objects.AntivirusSecurityProfiles = o.Role.Device.Restapi.Objects.AntivirusSecurityProfiles } - } - if o.Role.Device.Webui.Global != nil { - nestedRole.Device.Webui.Global = &RoleDeviceWebuiGlobalXml{} - if _, ok := o.Misc["RoleDeviceWebuiGlobal"]; ok { - nestedRole.Device.Webui.Global.Misc = o.Misc["RoleDeviceWebuiGlobal"] + if o.Role.Device.Restapi.Objects.SecurityProfileGroups != nil { + nestedRole.Device.Restapi.Objects.SecurityProfileGroups = o.Role.Device.Restapi.Objects.SecurityProfileGroups } - if o.Role.Device.Webui.Global.SystemAlarms != nil { - nestedRole.Device.Webui.Global.SystemAlarms = o.Role.Device.Webui.Global.SystemAlarms + if o.Role.Device.Restapi.Objects.ServiceGroups != nil { + nestedRole.Device.Restapi.Objects.ServiceGroups = o.Role.Device.Restapi.Objects.ServiceGroups } - } - if o.Role.Device.Webui.Save != nil { - nestedRole.Device.Webui.Save = &RoleDeviceWebuiSaveXml{} - if _, ok := o.Misc["RoleDeviceWebuiSave"]; ok { - nestedRole.Device.Webui.Save.Misc = o.Misc["RoleDeviceWebuiSave"] + if o.Role.Device.Restapi.Objects.Addresses != nil { + nestedRole.Device.Restapi.Objects.Addresses = o.Role.Device.Restapi.Objects.Addresses } - if o.Role.Device.Webui.Save.PartialSave != nil { - nestedRole.Device.Webui.Save.PartialSave = o.Role.Device.Webui.Save.PartialSave + if o.Role.Device.Restapi.Objects.ApplicationFilters != nil { + nestedRole.Device.Restapi.Objects.ApplicationFilters = o.Role.Device.Restapi.Objects.ApplicationFilters } - if o.Role.Device.Webui.Save.SaveForOtherAdmins != nil { - nestedRole.Device.Webui.Save.SaveForOtherAdmins = o.Role.Device.Webui.Save.SaveForOtherAdmins + if o.Role.Device.Restapi.Objects.AuthenticationEnforcements != nil { + nestedRole.Device.Restapi.Objects.AuthenticationEnforcements = o.Role.Device.Restapi.Objects.AuthenticationEnforcements } - if o.Role.Device.Webui.Save.ObjectLevelChanges != nil { - nestedRole.Device.Webui.Save.ObjectLevelChanges = o.Role.Device.Webui.Save.ObjectLevelChanges + if o.Role.Device.Restapi.Objects.FileBlockingSecurityProfiles != nil { + nestedRole.Device.Restapi.Objects.FileBlockingSecurityProfiles = o.Role.Device.Restapi.Objects.FileBlockingSecurityProfiles } - } - if o.Role.Device.Webui.Tasks != nil { - nestedRole.Device.Webui.Tasks = o.Role.Device.Webui.Tasks - } - if o.Role.Device.Webui.Acc != nil { - nestedRole.Device.Webui.Acc = o.Role.Device.Webui.Acc - } - if o.Role.Device.Webui.Network != nil { - nestedRole.Device.Webui.Network = &RoleDeviceWebuiNetworkXml{} - if _, ok := o.Misc["RoleDeviceWebuiNetwork"]; ok { - nestedRole.Device.Webui.Network.Misc = o.Misc["RoleDeviceWebuiNetwork"] + if o.Role.Device.Restapi.Objects.PacketBrokerProfiles != nil { + nestedRole.Device.Restapi.Objects.PacketBrokerProfiles = o.Role.Device.Restapi.Objects.PacketBrokerProfiles } - if o.Role.Device.Webui.Network.SecureWebGateway != nil { - nestedRole.Device.Webui.Network.SecureWebGateway = o.Role.Device.Webui.Network.SecureWebGateway + if o.Role.Device.Restapi.Objects.Schedules != nil { + nestedRole.Device.Restapi.Objects.Schedules = o.Role.Device.Restapi.Objects.Schedules } - if o.Role.Device.Webui.Network.DnsProxy != nil { - nestedRole.Device.Webui.Network.DnsProxy = o.Role.Device.Webui.Network.DnsProxy + if o.Role.Device.Restapi.Objects.SctpProtectionSecurityProfiles != nil { + nestedRole.Device.Restapi.Objects.SctpProtectionSecurityProfiles = o.Role.Device.Restapi.Objects.SctpProtectionSecurityProfiles } - if o.Role.Device.Webui.Network.Interfaces != nil { - nestedRole.Device.Webui.Network.Interfaces = o.Role.Device.Webui.Network.Interfaces + if o.Role.Device.Restapi.Objects.SdwanSaasQualityProfiles != nil { + nestedRole.Device.Restapi.Objects.SdwanSaasQualityProfiles = o.Role.Device.Restapi.Objects.SdwanSaasQualityProfiles } - if o.Role.Device.Webui.Network.Routing != nil { - nestedRole.Device.Webui.Network.Routing = &RoleDeviceWebuiNetworkRoutingXml{} - if _, ok := o.Misc["RoleDeviceWebuiNetworkRouting"]; ok { - nestedRole.Device.Webui.Network.Routing.Misc = o.Misc["RoleDeviceWebuiNetworkRouting"] - } - if o.Role.Device.Webui.Network.Routing.LogicalRouters != nil { - nestedRole.Device.Webui.Network.Routing.LogicalRouters = o.Role.Device.Webui.Network.Routing.LogicalRouters - } - if o.Role.Device.Webui.Network.Routing.RoutingProfiles != nil { - nestedRole.Device.Webui.Network.Routing.RoutingProfiles = &RoleDeviceWebuiNetworkRoutingRoutingProfilesXml{} - if _, ok := o.Misc["RoleDeviceWebuiNetworkRoutingRoutingProfiles"]; ok { - nestedRole.Device.Webui.Network.Routing.RoutingProfiles.Misc = o.Misc["RoleDeviceWebuiNetworkRoutingRoutingProfiles"] - } - if o.Role.Device.Webui.Network.Routing.RoutingProfiles.Bfd != nil { - nestedRole.Device.Webui.Network.Routing.RoutingProfiles.Bfd = o.Role.Device.Webui.Network.Routing.RoutingProfiles.Bfd - } - if o.Role.Device.Webui.Network.Routing.RoutingProfiles.Bgp != nil { - nestedRole.Device.Webui.Network.Routing.RoutingProfiles.Bgp = o.Role.Device.Webui.Network.Routing.RoutingProfiles.Bgp - } - if o.Role.Device.Webui.Network.Routing.RoutingProfiles.Filters != nil { - nestedRole.Device.Webui.Network.Routing.RoutingProfiles.Filters = o.Role.Device.Webui.Network.Routing.RoutingProfiles.Filters - } - if o.Role.Device.Webui.Network.Routing.RoutingProfiles.Multicast != nil { - nestedRole.Device.Webui.Network.Routing.RoutingProfiles.Multicast = o.Role.Device.Webui.Network.Routing.RoutingProfiles.Multicast - } - if o.Role.Device.Webui.Network.Routing.RoutingProfiles.Ospf != nil { - nestedRole.Device.Webui.Network.Routing.RoutingProfiles.Ospf = o.Role.Device.Webui.Network.Routing.RoutingProfiles.Ospf - } - if o.Role.Device.Webui.Network.Routing.RoutingProfiles.Ospfv3 != nil { - nestedRole.Device.Webui.Network.Routing.RoutingProfiles.Ospfv3 = o.Role.Device.Webui.Network.Routing.RoutingProfiles.Ospfv3 - } - if o.Role.Device.Webui.Network.Routing.RoutingProfiles.Ripv2 != nil { - nestedRole.Device.Webui.Network.Routing.RoutingProfiles.Ripv2 = o.Role.Device.Webui.Network.Routing.RoutingProfiles.Ripv2 - } - } + if o.Role.Device.Restapi.Objects.AntiSpywareSecurityProfiles != nil { + nestedRole.Device.Restapi.Objects.AntiSpywareSecurityProfiles = o.Role.Device.Restapi.Objects.AntiSpywareSecurityProfiles + } + if o.Role.Device.Restapi.Objects.ApplicationGroups != nil { + nestedRole.Device.Restapi.Objects.ApplicationGroups = o.Role.Device.Restapi.Objects.ApplicationGroups + } + if o.Role.Device.Restapi.Objects.CustomDataPatterns != nil { + nestedRole.Device.Restapi.Objects.CustomDataPatterns = o.Role.Device.Restapi.Objects.CustomDataPatterns + } + if o.Role.Device.Restapi.Objects.DataFilteringSecurityProfiles != nil { + nestedRole.Device.Restapi.Objects.DataFilteringSecurityProfiles = o.Role.Device.Restapi.Objects.DataFilteringSecurityProfiles + } + if o.Role.Device.Restapi.Objects.GlobalprotectHipProfiles != nil { + nestedRole.Device.Restapi.Objects.GlobalprotectHipProfiles = o.Role.Device.Restapi.Objects.GlobalprotectHipProfiles + } + if o.Role.Device.Restapi.Objects.LogForwardingProfiles != nil { + nestedRole.Device.Restapi.Objects.LogForwardingProfiles = o.Role.Device.Restapi.Objects.LogForwardingProfiles + } + if o.Role.Device.Restapi.Objects.WildfireAnalysisSecurityProfiles != nil { + nestedRole.Device.Restapi.Objects.WildfireAnalysisSecurityProfiles = o.Role.Device.Restapi.Objects.WildfireAnalysisSecurityProfiles + } + if o.Role.Device.Restapi.Objects.CustomSpywareSignatures != nil { + nestedRole.Device.Restapi.Objects.CustomSpywareSignatures = o.Role.Device.Restapi.Objects.CustomSpywareSignatures } - if o.Role.Device.Webui.Network.VirtualRouters != nil { - nestedRole.Device.Webui.Network.VirtualRouters = o.Role.Device.Webui.Network.VirtualRouters + if o.Role.Device.Restapi.Objects.DecryptionProfiles != nil { + nestedRole.Device.Restapi.Objects.DecryptionProfiles = o.Role.Device.Restapi.Objects.DecryptionProfiles } - if o.Role.Device.Webui.Network.VirtualWires != nil { - nestedRole.Device.Webui.Network.VirtualWires = o.Role.Device.Webui.Network.VirtualWires + if o.Role.Device.Restapi.Objects.DynamicUserGroups != nil { + nestedRole.Device.Restapi.Objects.DynamicUserGroups = o.Role.Device.Restapi.Objects.DynamicUserGroups } - if o.Role.Device.Webui.Network.GlobalProtect != nil { - nestedRole.Device.Webui.Network.GlobalProtect = &RoleDeviceWebuiNetworkGlobalProtectXml{} - if _, ok := o.Misc["RoleDeviceWebuiNetworkGlobalProtect"]; ok { - nestedRole.Device.Webui.Network.GlobalProtect.Misc = o.Misc["RoleDeviceWebuiNetworkGlobalProtect"] - } - if o.Role.Device.Webui.Network.GlobalProtect.ClientlessAppGroups != nil { - nestedRole.Device.Webui.Network.GlobalProtect.ClientlessAppGroups = o.Role.Device.Webui.Network.GlobalProtect.ClientlessAppGroups - } - if o.Role.Device.Webui.Network.GlobalProtect.ClientlessApps != nil { - nestedRole.Device.Webui.Network.GlobalProtect.ClientlessApps = o.Role.Device.Webui.Network.GlobalProtect.ClientlessApps - } - if o.Role.Device.Webui.Network.GlobalProtect.Gateways != nil { - nestedRole.Device.Webui.Network.GlobalProtect.Gateways = o.Role.Device.Webui.Network.GlobalProtect.Gateways - } - if o.Role.Device.Webui.Network.GlobalProtect.Mdm != nil { - nestedRole.Device.Webui.Network.GlobalProtect.Mdm = o.Role.Device.Webui.Network.GlobalProtect.Mdm - } - if o.Role.Device.Webui.Network.GlobalProtect.Portals != nil { - nestedRole.Device.Webui.Network.GlobalProtect.Portals = o.Role.Device.Webui.Network.GlobalProtect.Portals - } + if o.Role.Device.Restapi.Objects.UrlFilteringSecurityProfiles != nil { + nestedRole.Device.Restapi.Objects.UrlFilteringSecurityProfiles = o.Role.Device.Restapi.Objects.UrlFilteringSecurityProfiles } - if o.Role.Device.Webui.Network.NetworkProfiles != nil { - nestedRole.Device.Webui.Network.NetworkProfiles = &RoleDeviceWebuiNetworkNetworkProfilesXml{} - if _, ok := o.Misc["RoleDeviceWebuiNetworkNetworkProfiles"]; ok { - nestedRole.Device.Webui.Network.NetworkProfiles.Misc = o.Misc["RoleDeviceWebuiNetworkNetworkProfiles"] - } - if o.Role.Device.Webui.Network.NetworkProfiles.InterfaceMgmt != nil { - nestedRole.Device.Webui.Network.NetworkProfiles.InterfaceMgmt = o.Role.Device.Webui.Network.NetworkProfiles.InterfaceMgmt - } - if o.Role.Device.Webui.Network.NetworkProfiles.LldpProfile != nil { - nestedRole.Device.Webui.Network.NetworkProfiles.LldpProfile = o.Role.Device.Webui.Network.NetworkProfiles.LldpProfile - } - if o.Role.Device.Webui.Network.NetworkProfiles.IkeCrypto != nil { - nestedRole.Device.Webui.Network.NetworkProfiles.IkeCrypto = o.Role.Device.Webui.Network.NetworkProfiles.IkeCrypto - } - if o.Role.Device.Webui.Network.NetworkProfiles.IkeGateways != nil { - nestedRole.Device.Webui.Network.NetworkProfiles.IkeGateways = o.Role.Device.Webui.Network.NetworkProfiles.IkeGateways - } - if o.Role.Device.Webui.Network.NetworkProfiles.IpsecCrypto != nil { - nestedRole.Device.Webui.Network.NetworkProfiles.IpsecCrypto = o.Role.Device.Webui.Network.NetworkProfiles.IpsecCrypto - } - if o.Role.Device.Webui.Network.NetworkProfiles.QosProfile != nil { - nestedRole.Device.Webui.Network.NetworkProfiles.QosProfile = o.Role.Device.Webui.Network.NetworkProfiles.QosProfile - } - if o.Role.Device.Webui.Network.NetworkProfiles.TunnelMonitor != nil { - nestedRole.Device.Webui.Network.NetworkProfiles.TunnelMonitor = o.Role.Device.Webui.Network.NetworkProfiles.TunnelMonitor - } - if o.Role.Device.Webui.Network.NetworkProfiles.ZoneProtection != nil { - nestedRole.Device.Webui.Network.NetworkProfiles.ZoneProtection = o.Role.Device.Webui.Network.NetworkProfiles.ZoneProtection - } - if o.Role.Device.Webui.Network.NetworkProfiles.BfdProfile != nil { - nestedRole.Device.Webui.Network.NetworkProfiles.BfdProfile = o.Role.Device.Webui.Network.NetworkProfiles.BfdProfile - } - if o.Role.Device.Webui.Network.NetworkProfiles.GpAppIpsecCrypto != nil { - nestedRole.Device.Webui.Network.NetworkProfiles.GpAppIpsecCrypto = o.Role.Device.Webui.Network.NetworkProfiles.GpAppIpsecCrypto - } + if o.Role.Device.Restapi.Objects.SdwanPathQualityProfiles != nil { + nestedRole.Device.Restapi.Objects.SdwanPathQualityProfiles = o.Role.Device.Restapi.Objects.SdwanPathQualityProfiles } - if o.Role.Device.Webui.Network.Zones != nil { - nestedRole.Device.Webui.Network.Zones = o.Role.Device.Webui.Network.Zones + if o.Role.Device.Restapi.Objects.SdwanTrafficDistributionProfiles != nil { + nestedRole.Device.Restapi.Objects.SdwanTrafficDistributionProfiles = o.Role.Device.Restapi.Objects.SdwanTrafficDistributionProfiles } - if o.Role.Device.Webui.Network.Dhcp != nil { - nestedRole.Device.Webui.Network.Dhcp = o.Role.Device.Webui.Network.Dhcp + if o.Role.Device.Restapi.Objects.VulnerabilityProtectionSecurityProfiles != nil { + nestedRole.Device.Restapi.Objects.VulnerabilityProtectionSecurityProfiles = o.Role.Device.Restapi.Objects.VulnerabilityProtectionSecurityProfiles } - if o.Role.Device.Webui.Network.GreTunnels != nil { - nestedRole.Device.Webui.Network.GreTunnels = o.Role.Device.Webui.Network.GreTunnels + if o.Role.Device.Restapi.Objects.Applications != nil { + nestedRole.Device.Restapi.Objects.Applications = o.Role.Device.Restapi.Objects.Applications } - if o.Role.Device.Webui.Network.IpsecTunnels != nil { - nestedRole.Device.Webui.Network.IpsecTunnels = o.Role.Device.Webui.Network.IpsecTunnels + if o.Role.Device.Restapi.Objects.CustomVulnerabilitySignatures != nil { + nestedRole.Device.Restapi.Objects.CustomVulnerabilitySignatures = o.Role.Device.Restapi.Objects.CustomVulnerabilitySignatures } - if o.Role.Device.Webui.Network.Lldp != nil { - nestedRole.Device.Webui.Network.Lldp = o.Role.Device.Webui.Network.Lldp + if o.Role.Device.Restapi.Objects.GlobalprotectHipObjects != nil { + nestedRole.Device.Restapi.Objects.GlobalprotectHipObjects = o.Role.Device.Restapi.Objects.GlobalprotectHipObjects } - if o.Role.Device.Webui.Network.SdwanInterfaceProfile != nil { - nestedRole.Device.Webui.Network.SdwanInterfaceProfile = o.Role.Device.Webui.Network.SdwanInterfaceProfile + if o.Role.Device.Restapi.Objects.SdwanErrorCorrectionProfiles != nil { + nestedRole.Device.Restapi.Objects.SdwanErrorCorrectionProfiles = o.Role.Device.Restapi.Objects.SdwanErrorCorrectionProfiles } - if o.Role.Device.Webui.Network.Qos != nil { - nestedRole.Device.Webui.Network.Qos = o.Role.Device.Webui.Network.Qos + if o.Role.Device.Restapi.Objects.Services != nil { + nestedRole.Device.Restapi.Objects.Services = o.Role.Device.Restapi.Objects.Services } - if o.Role.Device.Webui.Network.Vlans != nil { - nestedRole.Device.Webui.Network.Vlans = o.Role.Device.Webui.Network.Vlans + if o.Role.Device.Restapi.Objects.Tags != nil { + nestedRole.Device.Restapi.Objects.Tags = o.Role.Device.Restapi.Objects.Tags } - } - if o.Role.Device.Webui.Validate != nil { - nestedRole.Device.Webui.Validate = o.Role.Device.Webui.Validate - } - if o.Role.Device.Webui.Dashboard != nil { - nestedRole.Device.Webui.Dashboard = o.Role.Device.Webui.Dashboard - } - if o.Role.Device.Webui.Privacy != nil { - nestedRole.Device.Webui.Privacy = &RoleDeviceWebuiPrivacyXml{} - if _, ok := o.Misc["RoleDeviceWebuiPrivacy"]; ok { - nestedRole.Device.Webui.Privacy.Misc = o.Misc["RoleDeviceWebuiPrivacy"] + if o.Role.Device.Restapi.Objects.CustomUrlCategories != nil { + nestedRole.Device.Restapi.Objects.CustomUrlCategories = o.Role.Device.Restapi.Objects.CustomUrlCategories } - if o.Role.Device.Webui.Privacy.ShowFullIpAddresses != nil { - nestedRole.Device.Webui.Privacy.ShowFullIpAddresses = o.Role.Device.Webui.Privacy.ShowFullIpAddresses + if o.Role.Device.Restapi.Objects.Devices != nil { + nestedRole.Device.Restapi.Objects.Devices = o.Role.Device.Restapi.Objects.Devices } - if o.Role.Device.Webui.Privacy.ShowUserNamesInLogsAndReports != nil { - nestedRole.Device.Webui.Privacy.ShowUserNamesInLogsAndReports = o.Role.Device.Webui.Privacy.ShowUserNamesInLogsAndReports + if o.Role.Device.Restapi.Objects.DosProtectionSecurityProfiles != nil { + nestedRole.Device.Restapi.Objects.DosProtectionSecurityProfiles = o.Role.Device.Restapi.Objects.DosProtectionSecurityProfiles } - if o.Role.Device.Webui.Privacy.ViewPcapFiles != nil { - nestedRole.Device.Webui.Privacy.ViewPcapFiles = o.Role.Device.Webui.Privacy.ViewPcapFiles + if o.Role.Device.Restapi.Objects.GtpProtectionSecurityProfiles != nil { + nestedRole.Device.Restapi.Objects.GtpProtectionSecurityProfiles = o.Role.Device.Restapi.Objects.GtpProtectionSecurityProfiles } - } - if o.Role.Device.Webui.Policies != nil { - nestedRole.Device.Webui.Policies = &RoleDeviceWebuiPoliciesXml{} - if _, ok := o.Misc["RoleDeviceWebuiPolicies"]; ok { - nestedRole.Device.Webui.Policies.Misc = o.Misc["RoleDeviceWebuiPolicies"] + if o.Role.Device.Restapi.Objects.Regions != nil { + nestedRole.Device.Restapi.Objects.Regions = o.Role.Device.Restapi.Objects.Regions } - if o.Role.Device.Webui.Policies.DosRulebase != nil { - nestedRole.Device.Webui.Policies.DosRulebase = o.Role.Device.Webui.Policies.DosRulebase + } + if o.Role.Device.Restapi.Policies != nil { + nestedRole.Device.Restapi.Policies = &RoleDeviceRestapiPoliciesXml{} + if _, ok := o.Misc["RoleDeviceRestapiPolicies"]; ok { + nestedRole.Device.Restapi.Policies.Misc = o.Misc["RoleDeviceRestapiPolicies"] } - if o.Role.Device.Webui.Policies.PbfRulebase != nil { - nestedRole.Device.Webui.Policies.PbfRulebase = o.Role.Device.Webui.Policies.PbfRulebase + if o.Role.Device.Restapi.Policies.TunnelInspectionRules != nil { + nestedRole.Device.Restapi.Policies.TunnelInspectionRules = o.Role.Device.Restapi.Policies.TunnelInspectionRules } - if o.Role.Device.Webui.Policies.SdwanRulebase != nil { - nestedRole.Device.Webui.Policies.SdwanRulebase = o.Role.Device.Webui.Policies.SdwanRulebase + if o.Role.Device.Restapi.Policies.AuthenticationRules != nil { + nestedRole.Device.Restapi.Policies.AuthenticationRules = o.Role.Device.Restapi.Policies.AuthenticationRules } - if o.Role.Device.Webui.Policies.SecurityRulebase != nil { - nestedRole.Device.Webui.Policies.SecurityRulebase = o.Role.Device.Webui.Policies.SecurityRulebase + if o.Role.Device.Restapi.Policies.DosRules != nil { + nestedRole.Device.Restapi.Policies.DosRules = o.Role.Device.Restapi.Policies.DosRules } - if o.Role.Device.Webui.Policies.SslDecryptionRulebase != nil { - nestedRole.Device.Webui.Policies.SslDecryptionRulebase = o.Role.Device.Webui.Policies.SslDecryptionRulebase + if o.Role.Device.Restapi.Policies.NatRules != nil { + nestedRole.Device.Restapi.Policies.NatRules = o.Role.Device.Restapi.Policies.NatRules } - if o.Role.Device.Webui.Policies.TunnelInspectRulebase != nil { - nestedRole.Device.Webui.Policies.TunnelInspectRulebase = o.Role.Device.Webui.Policies.TunnelInspectRulebase + if o.Role.Device.Restapi.Policies.NetworkPacketBrokerRules != nil { + nestedRole.Device.Restapi.Policies.NetworkPacketBrokerRules = o.Role.Device.Restapi.Policies.NetworkPacketBrokerRules } - if o.Role.Device.Webui.Policies.ApplicationOverrideRulebase != nil { - nestedRole.Device.Webui.Policies.ApplicationOverrideRulebase = o.Role.Device.Webui.Policies.ApplicationOverrideRulebase + if o.Role.Device.Restapi.Policies.SdwanRules != nil { + nestedRole.Device.Restapi.Policies.SdwanRules = o.Role.Device.Restapi.Policies.SdwanRules } - if o.Role.Device.Webui.Policies.AuthenticationRulebase != nil { - nestedRole.Device.Webui.Policies.AuthenticationRulebase = o.Role.Device.Webui.Policies.AuthenticationRulebase + if o.Role.Device.Restapi.Policies.SecurityRules != nil { + nestedRole.Device.Restapi.Policies.SecurityRules = o.Role.Device.Restapi.Policies.SecurityRules } - if o.Role.Device.Webui.Policies.QosRulebase != nil { - nestedRole.Device.Webui.Policies.QosRulebase = o.Role.Device.Webui.Policies.QosRulebase + if o.Role.Device.Restapi.Policies.ApplicationOverrideRules != nil { + nestedRole.Device.Restapi.Policies.ApplicationOverrideRules = o.Role.Device.Restapi.Policies.ApplicationOverrideRules } - if o.Role.Device.Webui.Policies.RuleHitCountReset != nil { - nestedRole.Device.Webui.Policies.RuleHitCountReset = o.Role.Device.Webui.Policies.RuleHitCountReset + if o.Role.Device.Restapi.Policies.DecryptionRules != nil { + nestedRole.Device.Restapi.Policies.DecryptionRules = o.Role.Device.Restapi.Policies.DecryptionRules } - if o.Role.Device.Webui.Policies.NatRulebase != nil { - nestedRole.Device.Webui.Policies.NatRulebase = o.Role.Device.Webui.Policies.NatRulebase + if o.Role.Device.Restapi.Policies.PolicyBasedForwardingRules != nil { + nestedRole.Device.Restapi.Policies.PolicyBasedForwardingRules = o.Role.Device.Restapi.Policies.PolicyBasedForwardingRules } - if o.Role.Device.Webui.Policies.NetworkPacketBrokerRulebase != nil { - nestedRole.Device.Webui.Policies.NetworkPacketBrokerRulebase = o.Role.Device.Webui.Policies.NetworkPacketBrokerRulebase + if o.Role.Device.Restapi.Policies.QosRules != nil { + nestedRole.Device.Restapi.Policies.QosRules = o.Role.Device.Restapi.Policies.QosRules } } - } - if o.Role.Device.Xmlapi != nil { - nestedRole.Device.Xmlapi = &RoleDeviceXmlapiXml{} - if _, ok := o.Misc["RoleDeviceXmlapi"]; ok { - nestedRole.Device.Xmlapi.Misc = o.Misc["RoleDeviceXmlapi"] - } - if o.Role.Device.Xmlapi.Report != nil { - nestedRole.Device.Xmlapi.Report = o.Role.Device.Xmlapi.Report - } - if o.Role.Device.Xmlapi.Commit != nil { - nestedRole.Device.Xmlapi.Commit = o.Role.Device.Xmlapi.Commit - } - if o.Role.Device.Xmlapi.Config != nil { - nestedRole.Device.Xmlapi.Config = o.Role.Device.Xmlapi.Config - } - if o.Role.Device.Xmlapi.Export != nil { - nestedRole.Device.Xmlapi.Export = o.Role.Device.Xmlapi.Export - } - if o.Role.Device.Xmlapi.Import != nil { - nestedRole.Device.Xmlapi.Import = o.Role.Device.Xmlapi.Import - } - if o.Role.Device.Xmlapi.Iot != nil { - nestedRole.Device.Xmlapi.Iot = o.Role.Device.Xmlapi.Iot - } - if o.Role.Device.Xmlapi.Op != nil { - nestedRole.Device.Xmlapi.Op = o.Role.Device.Xmlapi.Op - } - if o.Role.Device.Xmlapi.Log != nil { - nestedRole.Device.Xmlapi.Log = o.Role.Device.Xmlapi.Log - } - if o.Role.Device.Xmlapi.UserId != nil { - nestedRole.Device.Xmlapi.UserId = o.Role.Device.Xmlapi.UserId + if o.Role.Device.Restapi.System != nil { + nestedRole.Device.Restapi.System = &RoleDeviceRestapiSystemXml{} + if _, ok := o.Misc["RoleDeviceRestapiSystem"]; ok { + nestedRole.Device.Restapi.System.Misc = o.Misc["RoleDeviceRestapiSystem"] + } + if o.Role.Device.Restapi.System.Configuration != nil { + nestedRole.Device.Restapi.System.Configuration = o.Role.Device.Restapi.System.Configuration + } } } } if o.Role.Vsys != nil { nestedRole.Vsys = &RoleVsysXml{} if _, ok := o.Misc["RoleVsys"]; ok { - nestedRole.Vsys.Misc = o.Misc["RoleVsys"] - } - if o.Role.Vsys.Xmlapi != nil { - nestedRole.Vsys.Xmlapi = &RoleVsysXmlapiXml{} - if _, ok := o.Misc["RoleVsysXmlapi"]; ok { - nestedRole.Vsys.Xmlapi.Misc = o.Misc["RoleVsysXmlapi"] - } - if o.Role.Vsys.Xmlapi.Commit != nil { - nestedRole.Vsys.Xmlapi.Commit = o.Role.Vsys.Xmlapi.Commit - } - if o.Role.Vsys.Xmlapi.Export != nil { - nestedRole.Vsys.Xmlapi.Export = o.Role.Vsys.Xmlapi.Export - } - if o.Role.Vsys.Xmlapi.Iot != nil { - nestedRole.Vsys.Xmlapi.Iot = o.Role.Vsys.Xmlapi.Iot - } - if o.Role.Vsys.Xmlapi.Op != nil { - nestedRole.Vsys.Xmlapi.Op = o.Role.Vsys.Xmlapi.Op - } - if o.Role.Vsys.Xmlapi.Report != nil { - nestedRole.Vsys.Xmlapi.Report = o.Role.Vsys.Xmlapi.Report - } - if o.Role.Vsys.Xmlapi.Config != nil { - nestedRole.Vsys.Xmlapi.Config = o.Role.Vsys.Xmlapi.Config - } - if o.Role.Vsys.Xmlapi.Import != nil { - nestedRole.Vsys.Xmlapi.Import = o.Role.Vsys.Xmlapi.Import - } - if o.Role.Vsys.Xmlapi.Log != nil { - nestedRole.Vsys.Xmlapi.Log = o.Role.Vsys.Xmlapi.Log - } - if o.Role.Vsys.Xmlapi.UserId != nil { - nestedRole.Vsys.Xmlapi.UserId = o.Role.Vsys.Xmlapi.UserId - } + nestedRole.Vsys.Misc = o.Misc["RoleVsys"] } if o.Role.Vsys.Cli != nil { nestedRole.Vsys.Cli = o.Role.Vsys.Cli @@ -3088,124 +3055,178 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["RoleVsysRestapi"]; ok { nestedRole.Vsys.Restapi.Misc = o.Misc["RoleVsysRestapi"] } - if o.Role.Vsys.Restapi.Objects != nil { - nestedRole.Vsys.Restapi.Objects = &RoleVsysRestapiObjectsXml{} - if _, ok := o.Misc["RoleVsysRestapiObjects"]; ok { - nestedRole.Vsys.Restapi.Objects.Misc = o.Misc["RoleVsysRestapiObjects"] + if o.Role.Vsys.Restapi.Device != nil { + nestedRole.Vsys.Restapi.Device = &RoleVsysRestapiDeviceXml{} + if _, ok := o.Misc["RoleVsysRestapiDevice"]; ok { + nestedRole.Vsys.Restapi.Device.Misc = o.Misc["RoleVsysRestapiDevice"] } - if o.Role.Vsys.Restapi.Objects.SdwanErrorCorrectionProfiles != nil { - nestedRole.Vsys.Restapi.Objects.SdwanErrorCorrectionProfiles = o.Role.Vsys.Restapi.Objects.SdwanErrorCorrectionProfiles + if o.Role.Vsys.Restapi.Device.VirtualSystems != nil { + nestedRole.Vsys.Restapi.Device.VirtualSystems = o.Role.Vsys.Restapi.Device.VirtualSystems } - if o.Role.Vsys.Restapi.Objects.SdwanPathQualityProfiles != nil { - nestedRole.Vsys.Restapi.Objects.SdwanPathQualityProfiles = o.Role.Vsys.Restapi.Objects.SdwanPathQualityProfiles + if o.Role.Vsys.Restapi.Device.EmailServerProfiles != nil { + nestedRole.Vsys.Restapi.Device.EmailServerProfiles = o.Role.Vsys.Restapi.Device.EmailServerProfiles } - if o.Role.Vsys.Restapi.Objects.ExternalDynamicLists != nil { - nestedRole.Vsys.Restapi.Objects.ExternalDynamicLists = o.Role.Vsys.Restapi.Objects.ExternalDynamicLists + if o.Role.Vsys.Restapi.Device.HttpServerProfiles != nil { + nestedRole.Vsys.Restapi.Device.HttpServerProfiles = o.Role.Vsys.Restapi.Device.HttpServerProfiles } - if o.Role.Vsys.Restapi.Objects.Schedules != nil { - nestedRole.Vsys.Restapi.Objects.Schedules = o.Role.Vsys.Restapi.Objects.Schedules + if o.Role.Vsys.Restapi.Device.LdapServerProfiles != nil { + nestedRole.Vsys.Restapi.Device.LdapServerProfiles = o.Role.Vsys.Restapi.Device.LdapServerProfiles } - if o.Role.Vsys.Restapi.Objects.Applications != nil { - nestedRole.Vsys.Restapi.Objects.Applications = o.Role.Vsys.Restapi.Objects.Applications + if o.Role.Vsys.Restapi.Device.LogInterfaceSetting != nil { + nestedRole.Vsys.Restapi.Device.LogInterfaceSetting = o.Role.Vsys.Restapi.Device.LogInterfaceSetting } - if o.Role.Vsys.Restapi.Objects.CustomUrlCategories != nil { - nestedRole.Vsys.Restapi.Objects.CustomUrlCategories = o.Role.Vsys.Restapi.Objects.CustomUrlCategories + if o.Role.Vsys.Restapi.Device.SnmpTrapServerProfiles != nil { + nestedRole.Vsys.Restapi.Device.SnmpTrapServerProfiles = o.Role.Vsys.Restapi.Device.SnmpTrapServerProfiles } - if o.Role.Vsys.Restapi.Objects.Devices != nil { - nestedRole.Vsys.Restapi.Objects.Devices = o.Role.Vsys.Restapi.Objects.Devices + if o.Role.Vsys.Restapi.Device.SyslogServerProfiles != nil { + nestedRole.Vsys.Restapi.Device.SyslogServerProfiles = o.Role.Vsys.Restapi.Device.SyslogServerProfiles } - if o.Role.Vsys.Restapi.Objects.DosProtectionSecurityProfiles != nil { - nestedRole.Vsys.Restapi.Objects.DosProtectionSecurityProfiles = o.Role.Vsys.Restapi.Objects.DosProtectionSecurityProfiles + } + if o.Role.Vsys.Restapi.Network != nil { + nestedRole.Vsys.Restapi.Network = &RoleVsysRestapiNetworkXml{} + if _, ok := o.Misc["RoleVsysRestapiNetwork"]; ok { + nestedRole.Vsys.Restapi.Network.Misc = o.Misc["RoleVsysRestapiNetwork"] } - if o.Role.Vsys.Restapi.Objects.Services != nil { - nestedRole.Vsys.Restapi.Objects.Services = o.Role.Vsys.Restapi.Objects.Services + if o.Role.Vsys.Restapi.Network.Zones != nil { + nestedRole.Vsys.Restapi.Network.Zones = o.Role.Vsys.Restapi.Network.Zones } - if o.Role.Vsys.Restapi.Objects.Addresses != nil { - nestedRole.Vsys.Restapi.Objects.Addresses = o.Role.Vsys.Restapi.Objects.Addresses + if o.Role.Vsys.Restapi.Network.SdwanInterfaceProfiles != nil { + nestedRole.Vsys.Restapi.Network.SdwanInterfaceProfiles = o.Role.Vsys.Restapi.Network.SdwanInterfaceProfiles } - if o.Role.Vsys.Restapi.Objects.ApplicationFilters != nil { - nestedRole.Vsys.Restapi.Objects.ApplicationFilters = o.Role.Vsys.Restapi.Objects.ApplicationFilters + if o.Role.Vsys.Restapi.Network.GlobalprotectClientlessAppGroups != nil { + nestedRole.Vsys.Restapi.Network.GlobalprotectClientlessAppGroups = o.Role.Vsys.Restapi.Network.GlobalprotectClientlessAppGroups } - if o.Role.Vsys.Restapi.Objects.SdwanTrafficDistributionProfiles != nil { - nestedRole.Vsys.Restapi.Objects.SdwanTrafficDistributionProfiles = o.Role.Vsys.Restapi.Objects.SdwanTrafficDistributionProfiles + if o.Role.Vsys.Restapi.Network.GlobalprotectClientlessApps != nil { + nestedRole.Vsys.Restapi.Network.GlobalprotectClientlessApps = o.Role.Vsys.Restapi.Network.GlobalprotectClientlessApps } - if o.Role.Vsys.Restapi.Objects.DataFilteringSecurityProfiles != nil { - nestedRole.Vsys.Restapi.Objects.DataFilteringSecurityProfiles = o.Role.Vsys.Restapi.Objects.DataFilteringSecurityProfiles + if o.Role.Vsys.Restapi.Network.GlobalprotectGateways != nil { + nestedRole.Vsys.Restapi.Network.GlobalprotectGateways = o.Role.Vsys.Restapi.Network.GlobalprotectGateways } - if o.Role.Vsys.Restapi.Objects.GlobalprotectHipProfiles != nil { - nestedRole.Vsys.Restapi.Objects.GlobalprotectHipProfiles = o.Role.Vsys.Restapi.Objects.GlobalprotectHipProfiles + if o.Role.Vsys.Restapi.Network.GlobalprotectMdmServers != nil { + nestedRole.Vsys.Restapi.Network.GlobalprotectMdmServers = o.Role.Vsys.Restapi.Network.GlobalprotectMdmServers } - if o.Role.Vsys.Restapi.Objects.CustomSpywareSignatures != nil { - nestedRole.Vsys.Restapi.Objects.CustomSpywareSignatures = o.Role.Vsys.Restapi.Objects.CustomSpywareSignatures + if o.Role.Vsys.Restapi.Network.GlobalprotectPortals != nil { + nestedRole.Vsys.Restapi.Network.GlobalprotectPortals = o.Role.Vsys.Restapi.Network.GlobalprotectPortals + } + } + if o.Role.Vsys.Restapi.Objects != nil { + nestedRole.Vsys.Restapi.Objects = &RoleVsysRestapiObjectsXml{} + if _, ok := o.Misc["RoleVsysRestapiObjects"]; ok { + nestedRole.Vsys.Restapi.Objects.Misc = o.Misc["RoleVsysRestapiObjects"] + } + if o.Role.Vsys.Restapi.Objects.SdwanErrorCorrectionProfiles != nil { + nestedRole.Vsys.Restapi.Objects.SdwanErrorCorrectionProfiles = o.Role.Vsys.Restapi.Objects.SdwanErrorCorrectionProfiles + } + if o.Role.Vsys.Restapi.Objects.Tags != nil { + nestedRole.Vsys.Restapi.Objects.Tags = o.Role.Vsys.Restapi.Objects.Tags + } + if o.Role.Vsys.Restapi.Objects.SdwanSaasQualityProfiles != nil { + nestedRole.Vsys.Restapi.Objects.SdwanSaasQualityProfiles = o.Role.Vsys.Restapi.Objects.SdwanSaasQualityProfiles + } + if o.Role.Vsys.Restapi.Objects.CustomDataPatterns != nil { + nestedRole.Vsys.Restapi.Objects.CustomDataPatterns = o.Role.Vsys.Restapi.Objects.CustomDataPatterns } if o.Role.Vsys.Restapi.Objects.CustomVulnerabilitySignatures != nil { nestedRole.Vsys.Restapi.Objects.CustomVulnerabilitySignatures = o.Role.Vsys.Restapi.Objects.CustomVulnerabilitySignatures } + if o.Role.Vsys.Restapi.Objects.DynamicUserGroups != nil { + nestedRole.Vsys.Restapi.Objects.DynamicUserGroups = o.Role.Vsys.Restapi.Objects.DynamicUserGroups + } if o.Role.Vsys.Restapi.Objects.FileBlockingSecurityProfiles != nil { nestedRole.Vsys.Restapi.Objects.FileBlockingSecurityProfiles = o.Role.Vsys.Restapi.Objects.FileBlockingSecurityProfiles } - if o.Role.Vsys.Restapi.Objects.SctpProtectionSecurityProfiles != nil { - nestedRole.Vsys.Restapi.Objects.SctpProtectionSecurityProfiles = o.Role.Vsys.Restapi.Objects.SctpProtectionSecurityProfiles + if o.Role.Vsys.Restapi.Objects.GlobalprotectHipProfiles != nil { + nestedRole.Vsys.Restapi.Objects.GlobalprotectHipProfiles = o.Role.Vsys.Restapi.Objects.GlobalprotectHipProfiles } - if o.Role.Vsys.Restapi.Objects.ServiceGroups != nil { - nestedRole.Vsys.Restapi.Objects.ServiceGroups = o.Role.Vsys.Restapi.Objects.ServiceGroups + if o.Role.Vsys.Restapi.Objects.LogForwardingProfiles != nil { + nestedRole.Vsys.Restapi.Objects.LogForwardingProfiles = o.Role.Vsys.Restapi.Objects.LogForwardingProfiles } - if o.Role.Vsys.Restapi.Objects.VulnerabilityProtectionSecurityProfiles != nil { - nestedRole.Vsys.Restapi.Objects.VulnerabilityProtectionSecurityProfiles = o.Role.Vsys.Restapi.Objects.VulnerabilityProtectionSecurityProfiles + if o.Role.Vsys.Restapi.Objects.SdwanPathQualityProfiles != nil { + nestedRole.Vsys.Restapi.Objects.SdwanPathQualityProfiles = o.Role.Vsys.Restapi.Objects.SdwanPathQualityProfiles } - if o.Role.Vsys.Restapi.Objects.AddressGroups != nil { - nestedRole.Vsys.Restapi.Objects.AddressGroups = o.Role.Vsys.Restapi.Objects.AddressGroups + if o.Role.Vsys.Restapi.Objects.AntivirusSecurityProfiles != nil { + nestedRole.Vsys.Restapi.Objects.AntivirusSecurityProfiles = o.Role.Vsys.Restapi.Objects.AntivirusSecurityProfiles + } + if o.Role.Vsys.Restapi.Objects.CustomSpywareSignatures != nil { + nestedRole.Vsys.Restapi.Objects.CustomSpywareSignatures = o.Role.Vsys.Restapi.Objects.CustomSpywareSignatures + } + if o.Role.Vsys.Restapi.Objects.DosProtectionSecurityProfiles != nil { + nestedRole.Vsys.Restapi.Objects.DosProtectionSecurityProfiles = o.Role.Vsys.Restapi.Objects.DosProtectionSecurityProfiles + } + if o.Role.Vsys.Restapi.Objects.PacketBrokerProfiles != nil { + nestedRole.Vsys.Restapi.Objects.PacketBrokerProfiles = o.Role.Vsys.Restapi.Objects.PacketBrokerProfiles + } + if o.Role.Vsys.Restapi.Objects.SdwanTrafficDistributionProfiles != nil { + nestedRole.Vsys.Restapi.Objects.SdwanTrafficDistributionProfiles = o.Role.Vsys.Restapi.Objects.SdwanTrafficDistributionProfiles } if o.Role.Vsys.Restapi.Objects.AntiSpywareSecurityProfiles != nil { nestedRole.Vsys.Restapi.Objects.AntiSpywareSecurityProfiles = o.Role.Vsys.Restapi.Objects.AntiSpywareSecurityProfiles } + if o.Role.Vsys.Restapi.Objects.Applications != nil { + nestedRole.Vsys.Restapi.Objects.Applications = o.Role.Vsys.Restapi.Objects.Applications + } if o.Role.Vsys.Restapi.Objects.Regions != nil { nestedRole.Vsys.Restapi.Objects.Regions = o.Role.Vsys.Restapi.Objects.Regions } - if o.Role.Vsys.Restapi.Objects.SdwanSaasQualityProfiles != nil { - nestedRole.Vsys.Restapi.Objects.SdwanSaasQualityProfiles = o.Role.Vsys.Restapi.Objects.SdwanSaasQualityProfiles + if o.Role.Vsys.Restapi.Objects.VulnerabilityProtectionSecurityProfiles != nil { + nestedRole.Vsys.Restapi.Objects.VulnerabilityProtectionSecurityProfiles = o.Role.Vsys.Restapi.Objects.VulnerabilityProtectionSecurityProfiles } - if o.Role.Vsys.Restapi.Objects.ApplicationGroups != nil { - nestedRole.Vsys.Restapi.Objects.ApplicationGroups = o.Role.Vsys.Restapi.Objects.ApplicationGroups + if o.Role.Vsys.Restapi.Objects.AuthenticationEnforcements != nil { + nestedRole.Vsys.Restapi.Objects.AuthenticationEnforcements = o.Role.Vsys.Restapi.Objects.AuthenticationEnforcements } - if o.Role.Vsys.Restapi.Objects.CustomDataPatterns != nil { - nestedRole.Vsys.Restapi.Objects.CustomDataPatterns = o.Role.Vsys.Restapi.Objects.CustomDataPatterns + if o.Role.Vsys.Restapi.Objects.DataFilteringSecurityProfiles != nil { + nestedRole.Vsys.Restapi.Objects.DataFilteringSecurityProfiles = o.Role.Vsys.Restapi.Objects.DataFilteringSecurityProfiles } - if o.Role.Vsys.Restapi.Objects.AntivirusSecurityProfiles != nil { - nestedRole.Vsys.Restapi.Objects.AntivirusSecurityProfiles = o.Role.Vsys.Restapi.Objects.AntivirusSecurityProfiles + if o.Role.Vsys.Restapi.Objects.ApplicationGroups != nil { + nestedRole.Vsys.Restapi.Objects.ApplicationGroups = o.Role.Vsys.Restapi.Objects.ApplicationGroups } - if o.Role.Vsys.Restapi.Objects.GlobalprotectHipObjects != nil { - nestedRole.Vsys.Restapi.Objects.GlobalprotectHipObjects = o.Role.Vsys.Restapi.Objects.GlobalprotectHipObjects + if o.Role.Vsys.Restapi.Objects.Devices != nil { + nestedRole.Vsys.Restapi.Objects.Devices = o.Role.Vsys.Restapi.Objects.Devices } - if o.Role.Vsys.Restapi.Objects.GtpProtectionSecurityProfiles != nil { - nestedRole.Vsys.Restapi.Objects.GtpProtectionSecurityProfiles = o.Role.Vsys.Restapi.Objects.GtpProtectionSecurityProfiles + if o.Role.Vsys.Restapi.Objects.Schedules != nil { + nestedRole.Vsys.Restapi.Objects.Schedules = o.Role.Vsys.Restapi.Objects.Schedules } if o.Role.Vsys.Restapi.Objects.SecurityProfileGroups != nil { nestedRole.Vsys.Restapi.Objects.SecurityProfileGroups = o.Role.Vsys.Restapi.Objects.SecurityProfileGroups } - if o.Role.Vsys.Restapi.Objects.UrlFilteringSecurityProfiles != nil { - nestedRole.Vsys.Restapi.Objects.UrlFilteringSecurityProfiles = o.Role.Vsys.Restapi.Objects.UrlFilteringSecurityProfiles + if o.Role.Vsys.Restapi.Objects.Services != nil { + nestedRole.Vsys.Restapi.Objects.Services = o.Role.Vsys.Restapi.Objects.Services } if o.Role.Vsys.Restapi.Objects.WildfireAnalysisSecurityProfiles != nil { nestedRole.Vsys.Restapi.Objects.WildfireAnalysisSecurityProfiles = o.Role.Vsys.Restapi.Objects.WildfireAnalysisSecurityProfiles } + if o.Role.Vsys.Restapi.Objects.AddressGroups != nil { + nestedRole.Vsys.Restapi.Objects.AddressGroups = o.Role.Vsys.Restapi.Objects.AddressGroups + } + if o.Role.Vsys.Restapi.Objects.ApplicationFilters != nil { + nestedRole.Vsys.Restapi.Objects.ApplicationFilters = o.Role.Vsys.Restapi.Objects.ApplicationFilters + } if o.Role.Vsys.Restapi.Objects.DecryptionProfiles != nil { nestedRole.Vsys.Restapi.Objects.DecryptionProfiles = o.Role.Vsys.Restapi.Objects.DecryptionProfiles } - if o.Role.Vsys.Restapi.Objects.DynamicUserGroups != nil { - nestedRole.Vsys.Restapi.Objects.DynamicUserGroups = o.Role.Vsys.Restapi.Objects.DynamicUserGroups + if o.Role.Vsys.Restapi.Objects.GlobalprotectHipObjects != nil { + nestedRole.Vsys.Restapi.Objects.GlobalprotectHipObjects = o.Role.Vsys.Restapi.Objects.GlobalprotectHipObjects } - if o.Role.Vsys.Restapi.Objects.PacketBrokerProfiles != nil { - nestedRole.Vsys.Restapi.Objects.PacketBrokerProfiles = o.Role.Vsys.Restapi.Objects.PacketBrokerProfiles + if o.Role.Vsys.Restapi.Objects.GtpProtectionSecurityProfiles != nil { + nestedRole.Vsys.Restapi.Objects.GtpProtectionSecurityProfiles = o.Role.Vsys.Restapi.Objects.GtpProtectionSecurityProfiles } - if o.Role.Vsys.Restapi.Objects.Tags != nil { - nestedRole.Vsys.Restapi.Objects.Tags = o.Role.Vsys.Restapi.Objects.Tags + if o.Role.Vsys.Restapi.Objects.ServiceGroups != nil { + nestedRole.Vsys.Restapi.Objects.ServiceGroups = o.Role.Vsys.Restapi.Objects.ServiceGroups } - if o.Role.Vsys.Restapi.Objects.AuthenticationEnforcements != nil { - nestedRole.Vsys.Restapi.Objects.AuthenticationEnforcements = o.Role.Vsys.Restapi.Objects.AuthenticationEnforcements + if o.Role.Vsys.Restapi.Objects.Addresses != nil { + nestedRole.Vsys.Restapi.Objects.Addresses = o.Role.Vsys.Restapi.Objects.Addresses } - if o.Role.Vsys.Restapi.Objects.LogForwardingProfiles != nil { - nestedRole.Vsys.Restapi.Objects.LogForwardingProfiles = o.Role.Vsys.Restapi.Objects.LogForwardingProfiles + if o.Role.Vsys.Restapi.Objects.CustomUrlCategories != nil { + nestedRole.Vsys.Restapi.Objects.CustomUrlCategories = o.Role.Vsys.Restapi.Objects.CustomUrlCategories + } + if o.Role.Vsys.Restapi.Objects.UrlFilteringSecurityProfiles != nil { + nestedRole.Vsys.Restapi.Objects.UrlFilteringSecurityProfiles = o.Role.Vsys.Restapi.Objects.UrlFilteringSecurityProfiles + } + if o.Role.Vsys.Restapi.Objects.ExternalDynamicLists != nil { + nestedRole.Vsys.Restapi.Objects.ExternalDynamicLists = o.Role.Vsys.Restapi.Objects.ExternalDynamicLists + } + if o.Role.Vsys.Restapi.Objects.SctpProtectionSecurityProfiles != nil { + nestedRole.Vsys.Restapi.Objects.SctpProtectionSecurityProfiles = o.Role.Vsys.Restapi.Objects.SctpProtectionSecurityProfiles } } if o.Role.Vsys.Restapi.Policies != nil { @@ -3213,101 +3234,47 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["RoleVsysRestapiPolicies"]; ok { nestedRole.Vsys.Restapi.Policies.Misc = o.Misc["RoleVsysRestapiPolicies"] } - if o.Role.Vsys.Restapi.Policies.NetworkPacketBrokerRules != nil { - nestedRole.Vsys.Restapi.Policies.NetworkPacketBrokerRules = o.Role.Vsys.Restapi.Policies.NetworkPacketBrokerRules - } - if o.Role.Vsys.Restapi.Policies.SdwanRules != nil { - nestedRole.Vsys.Restapi.Policies.SdwanRules = o.Role.Vsys.Restapi.Policies.SdwanRules - } - if o.Role.Vsys.Restapi.Policies.SecurityRules != nil { - nestedRole.Vsys.Restapi.Policies.SecurityRules = o.Role.Vsys.Restapi.Policies.SecurityRules - } - if o.Role.Vsys.Restapi.Policies.ApplicationOverrideRules != nil { - nestedRole.Vsys.Restapi.Policies.ApplicationOverrideRules = o.Role.Vsys.Restapi.Policies.ApplicationOverrideRules - } - if o.Role.Vsys.Restapi.Policies.AuthenticationRules != nil { - nestedRole.Vsys.Restapi.Policies.AuthenticationRules = o.Role.Vsys.Restapi.Policies.AuthenticationRules - } - if o.Role.Vsys.Restapi.Policies.DosRules != nil { - nestedRole.Vsys.Restapi.Policies.DosRules = o.Role.Vsys.Restapi.Policies.DosRules - } - if o.Role.Vsys.Restapi.Policies.NatRules != nil { - nestedRole.Vsys.Restapi.Policies.NatRules = o.Role.Vsys.Restapi.Policies.NatRules - } - if o.Role.Vsys.Restapi.Policies.DecryptionRules != nil { - nestedRole.Vsys.Restapi.Policies.DecryptionRules = o.Role.Vsys.Restapi.Policies.DecryptionRules - } if o.Role.Vsys.Restapi.Policies.PolicyBasedForwardingRules != nil { nestedRole.Vsys.Restapi.Policies.PolicyBasedForwardingRules = o.Role.Vsys.Restapi.Policies.PolicyBasedForwardingRules } if o.Role.Vsys.Restapi.Policies.QosRules != nil { nestedRole.Vsys.Restapi.Policies.QosRules = o.Role.Vsys.Restapi.Policies.QosRules } + if o.Role.Vsys.Restapi.Policies.SecurityRules != nil { + nestedRole.Vsys.Restapi.Policies.SecurityRules = o.Role.Vsys.Restapi.Policies.SecurityRules + } if o.Role.Vsys.Restapi.Policies.TunnelInspectionRules != nil { nestedRole.Vsys.Restapi.Policies.TunnelInspectionRules = o.Role.Vsys.Restapi.Policies.TunnelInspectionRules } - } - if o.Role.Vsys.Restapi.System != nil { - nestedRole.Vsys.Restapi.System = &RoleVsysRestapiSystemXml{} - if _, ok := o.Misc["RoleVsysRestapiSystem"]; ok { - nestedRole.Vsys.Restapi.System.Misc = o.Misc["RoleVsysRestapiSystem"] - } - if o.Role.Vsys.Restapi.System.Configuration != nil { - nestedRole.Vsys.Restapi.System.Configuration = o.Role.Vsys.Restapi.System.Configuration - } - } - if o.Role.Vsys.Restapi.Device != nil { - nestedRole.Vsys.Restapi.Device = &RoleVsysRestapiDeviceXml{} - if _, ok := o.Misc["RoleVsysRestapiDevice"]; ok { - nestedRole.Vsys.Restapi.Device.Misc = o.Misc["RoleVsysRestapiDevice"] - } - if o.Role.Vsys.Restapi.Device.VirtualSystems != nil { - nestedRole.Vsys.Restapi.Device.VirtualSystems = o.Role.Vsys.Restapi.Device.VirtualSystems - } - if o.Role.Vsys.Restapi.Device.EmailServerProfiles != nil { - nestedRole.Vsys.Restapi.Device.EmailServerProfiles = o.Role.Vsys.Restapi.Device.EmailServerProfiles - } - if o.Role.Vsys.Restapi.Device.HttpServerProfiles != nil { - nestedRole.Vsys.Restapi.Device.HttpServerProfiles = o.Role.Vsys.Restapi.Device.HttpServerProfiles - } - if o.Role.Vsys.Restapi.Device.LdapServerProfiles != nil { - nestedRole.Vsys.Restapi.Device.LdapServerProfiles = o.Role.Vsys.Restapi.Device.LdapServerProfiles - } - if o.Role.Vsys.Restapi.Device.LogInterfaceSetting != nil { - nestedRole.Vsys.Restapi.Device.LogInterfaceSetting = o.Role.Vsys.Restapi.Device.LogInterfaceSetting - } - if o.Role.Vsys.Restapi.Device.SnmpTrapServerProfiles != nil { - nestedRole.Vsys.Restapi.Device.SnmpTrapServerProfiles = o.Role.Vsys.Restapi.Device.SnmpTrapServerProfiles - } - if o.Role.Vsys.Restapi.Device.SyslogServerProfiles != nil { - nestedRole.Vsys.Restapi.Device.SyslogServerProfiles = o.Role.Vsys.Restapi.Device.SyslogServerProfiles - } - } - if o.Role.Vsys.Restapi.Network != nil { - nestedRole.Vsys.Restapi.Network = &RoleVsysRestapiNetworkXml{} - if _, ok := o.Misc["RoleVsysRestapiNetwork"]; ok { - nestedRole.Vsys.Restapi.Network.Misc = o.Misc["RoleVsysRestapiNetwork"] - } - if o.Role.Vsys.Restapi.Network.GlobalprotectGateways != nil { - nestedRole.Vsys.Restapi.Network.GlobalprotectGateways = o.Role.Vsys.Restapi.Network.GlobalprotectGateways + if o.Role.Vsys.Restapi.Policies.ApplicationOverrideRules != nil { + nestedRole.Vsys.Restapi.Policies.ApplicationOverrideRules = o.Role.Vsys.Restapi.Policies.ApplicationOverrideRules } - if o.Role.Vsys.Restapi.Network.GlobalprotectMdmServers != nil { - nestedRole.Vsys.Restapi.Network.GlobalprotectMdmServers = o.Role.Vsys.Restapi.Network.GlobalprotectMdmServers + if o.Role.Vsys.Restapi.Policies.AuthenticationRules != nil { + nestedRole.Vsys.Restapi.Policies.AuthenticationRules = o.Role.Vsys.Restapi.Policies.AuthenticationRules } - if o.Role.Vsys.Restapi.Network.GlobalprotectPortals != nil { - nestedRole.Vsys.Restapi.Network.GlobalprotectPortals = o.Role.Vsys.Restapi.Network.GlobalprotectPortals + if o.Role.Vsys.Restapi.Policies.DecryptionRules != nil { + nestedRole.Vsys.Restapi.Policies.DecryptionRules = o.Role.Vsys.Restapi.Policies.DecryptionRules } - if o.Role.Vsys.Restapi.Network.Zones != nil { - nestedRole.Vsys.Restapi.Network.Zones = o.Role.Vsys.Restapi.Network.Zones + if o.Role.Vsys.Restapi.Policies.NatRules != nil { + nestedRole.Vsys.Restapi.Policies.NatRules = o.Role.Vsys.Restapi.Policies.NatRules } - if o.Role.Vsys.Restapi.Network.SdwanInterfaceProfiles != nil { - nestedRole.Vsys.Restapi.Network.SdwanInterfaceProfiles = o.Role.Vsys.Restapi.Network.SdwanInterfaceProfiles + if o.Role.Vsys.Restapi.Policies.DosRules != nil { + nestedRole.Vsys.Restapi.Policies.DosRules = o.Role.Vsys.Restapi.Policies.DosRules } - if o.Role.Vsys.Restapi.Network.GlobalprotectClientlessAppGroups != nil { - nestedRole.Vsys.Restapi.Network.GlobalprotectClientlessAppGroups = o.Role.Vsys.Restapi.Network.GlobalprotectClientlessAppGroups + if o.Role.Vsys.Restapi.Policies.NetworkPacketBrokerRules != nil { + nestedRole.Vsys.Restapi.Policies.NetworkPacketBrokerRules = o.Role.Vsys.Restapi.Policies.NetworkPacketBrokerRules } - if o.Role.Vsys.Restapi.Network.GlobalprotectClientlessApps != nil { - nestedRole.Vsys.Restapi.Network.GlobalprotectClientlessApps = o.Role.Vsys.Restapi.Network.GlobalprotectClientlessApps + if o.Role.Vsys.Restapi.Policies.SdwanRules != nil { + nestedRole.Vsys.Restapi.Policies.SdwanRules = o.Role.Vsys.Restapi.Policies.SdwanRules + } + } + if o.Role.Vsys.Restapi.System != nil { + nestedRole.Vsys.Restapi.System = &RoleVsysRestapiSystemXml{} + if _, ok := o.Misc["RoleVsysRestapiSystem"]; ok { + nestedRole.Vsys.Restapi.System.Misc = o.Misc["RoleVsysRestapiSystem"] + } + if o.Role.Vsys.Restapi.System.Configuration != nil { + nestedRole.Vsys.Restapi.System.Configuration = o.Role.Vsys.Restapi.System.Configuration } } } @@ -3316,91 +3283,100 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["RoleVsysWebui"]; ok { nestedRole.Vsys.Webui.Misc = o.Misc["RoleVsysWebui"] } - if o.Role.Vsys.Webui.Acc != nil { - nestedRole.Vsys.Webui.Acc = o.Role.Vsys.Webui.Acc + if o.Role.Vsys.Webui.Network != nil { + nestedRole.Vsys.Webui.Network = &RoleVsysWebuiNetworkXml{} + if _, ok := o.Misc["RoleVsysWebuiNetwork"]; ok { + nestedRole.Vsys.Webui.Network.Misc = o.Misc["RoleVsysWebuiNetwork"] + } + if o.Role.Vsys.Webui.Network.GlobalProtect != nil { + nestedRole.Vsys.Webui.Network.GlobalProtect = &RoleVsysWebuiNetworkGlobalProtectXml{} + if _, ok := o.Misc["RoleVsysWebuiNetworkGlobalProtect"]; ok { + nestedRole.Vsys.Webui.Network.GlobalProtect.Misc = o.Misc["RoleVsysWebuiNetworkGlobalProtect"] + } + if o.Role.Vsys.Webui.Network.GlobalProtect.ClientlessAppGroups != nil { + nestedRole.Vsys.Webui.Network.GlobalProtect.ClientlessAppGroups = o.Role.Vsys.Webui.Network.GlobalProtect.ClientlessAppGroups + } + if o.Role.Vsys.Webui.Network.GlobalProtect.ClientlessApps != nil { + nestedRole.Vsys.Webui.Network.GlobalProtect.ClientlessApps = o.Role.Vsys.Webui.Network.GlobalProtect.ClientlessApps + } + if o.Role.Vsys.Webui.Network.GlobalProtect.Gateways != nil { + nestedRole.Vsys.Webui.Network.GlobalProtect.Gateways = o.Role.Vsys.Webui.Network.GlobalProtect.Gateways + } + if o.Role.Vsys.Webui.Network.GlobalProtect.Mdm != nil { + nestedRole.Vsys.Webui.Network.GlobalProtect.Mdm = o.Role.Vsys.Webui.Network.GlobalProtect.Mdm + } + if o.Role.Vsys.Webui.Network.GlobalProtect.Portals != nil { + nestedRole.Vsys.Webui.Network.GlobalProtect.Portals = o.Role.Vsys.Webui.Network.GlobalProtect.Portals + } + } + if o.Role.Vsys.Webui.Network.SdwanInterfaceProfile != nil { + nestedRole.Vsys.Webui.Network.SdwanInterfaceProfile = o.Role.Vsys.Webui.Network.SdwanInterfaceProfile + } + if o.Role.Vsys.Webui.Network.Zones != nil { + nestedRole.Vsys.Webui.Network.Zones = o.Role.Vsys.Webui.Network.Zones + } } - if o.Role.Vsys.Webui.Dashboard != nil { - nestedRole.Vsys.Webui.Dashboard = o.Role.Vsys.Webui.Dashboard + if o.Role.Vsys.Webui.Operations != nil { + nestedRole.Vsys.Webui.Operations = &RoleVsysWebuiOperationsXml{} + if _, ok := o.Misc["RoleVsysWebuiOperations"]; ok { + nestedRole.Vsys.Webui.Operations.Misc = o.Misc["RoleVsysWebuiOperations"] + } + if o.Role.Vsys.Webui.Operations.GenerateStatsDumpFile != nil { + nestedRole.Vsys.Webui.Operations.GenerateStatsDumpFile = o.Role.Vsys.Webui.Operations.GenerateStatsDumpFile + } + if o.Role.Vsys.Webui.Operations.GenerateTechSupportFile != nil { + nestedRole.Vsys.Webui.Operations.GenerateTechSupportFile = o.Role.Vsys.Webui.Operations.GenerateTechSupportFile + } + if o.Role.Vsys.Webui.Operations.Reboot != nil { + nestedRole.Vsys.Webui.Operations.Reboot = o.Role.Vsys.Webui.Operations.Reboot + } + if o.Role.Vsys.Webui.Operations.DownloadCoreFiles != nil { + nestedRole.Vsys.Webui.Operations.DownloadCoreFiles = o.Role.Vsys.Webui.Operations.DownloadCoreFiles + } + if o.Role.Vsys.Webui.Operations.DownloadPcapFiles != nil { + nestedRole.Vsys.Webui.Operations.DownloadPcapFiles = o.Role.Vsys.Webui.Operations.DownloadPcapFiles + } } if o.Role.Vsys.Webui.Policies != nil { nestedRole.Vsys.Webui.Policies = &RoleVsysWebuiPoliciesXml{} if _, ok := o.Misc["RoleVsysWebuiPolicies"]; ok { nestedRole.Vsys.Webui.Policies.Misc = o.Misc["RoleVsysWebuiPolicies"] } + if o.Role.Vsys.Webui.Policies.ApplicationOverrideRulebase != nil { + nestedRole.Vsys.Webui.Policies.ApplicationOverrideRulebase = o.Role.Vsys.Webui.Policies.ApplicationOverrideRulebase + } if o.Role.Vsys.Webui.Policies.AuthenticationRulebase != nil { nestedRole.Vsys.Webui.Policies.AuthenticationRulebase = o.Role.Vsys.Webui.Policies.AuthenticationRulebase } if o.Role.Vsys.Webui.Policies.DosRulebase != nil { nestedRole.Vsys.Webui.Policies.DosRulebase = o.Role.Vsys.Webui.Policies.DosRulebase } - if o.Role.Vsys.Webui.Policies.NatRulebase != nil { - nestedRole.Vsys.Webui.Policies.NatRulebase = o.Role.Vsys.Webui.Policies.NatRulebase - } - if o.Role.Vsys.Webui.Policies.NetworkPacketBrokerRulebase != nil { - nestedRole.Vsys.Webui.Policies.NetworkPacketBrokerRulebase = o.Role.Vsys.Webui.Policies.NetworkPacketBrokerRulebase - } if o.Role.Vsys.Webui.Policies.PbfRulebase != nil { nestedRole.Vsys.Webui.Policies.PbfRulebase = o.Role.Vsys.Webui.Policies.PbfRulebase } - if o.Role.Vsys.Webui.Policies.RuleHitCountReset != nil { - nestedRole.Vsys.Webui.Policies.RuleHitCountReset = o.Role.Vsys.Webui.Policies.RuleHitCountReset - } - if o.Role.Vsys.Webui.Policies.SdwanRulebase != nil { - nestedRole.Vsys.Webui.Policies.SdwanRulebase = o.Role.Vsys.Webui.Policies.SdwanRulebase + if o.Role.Vsys.Webui.Policies.TunnelInspectRulebase != nil { + nestedRole.Vsys.Webui.Policies.TunnelInspectRulebase = o.Role.Vsys.Webui.Policies.TunnelInspectRulebase } if o.Role.Vsys.Webui.Policies.SecurityRulebase != nil { nestedRole.Vsys.Webui.Policies.SecurityRulebase = o.Role.Vsys.Webui.Policies.SecurityRulebase } - if o.Role.Vsys.Webui.Policies.ApplicationOverrideRulebase != nil { - nestedRole.Vsys.Webui.Policies.ApplicationOverrideRulebase = o.Role.Vsys.Webui.Policies.ApplicationOverrideRulebase - } - if o.Role.Vsys.Webui.Policies.QosRulebase != nil { - nestedRole.Vsys.Webui.Policies.QosRulebase = o.Role.Vsys.Webui.Policies.QosRulebase - } if o.Role.Vsys.Webui.Policies.SslDecryptionRulebase != nil { nestedRole.Vsys.Webui.Policies.SslDecryptionRulebase = o.Role.Vsys.Webui.Policies.SslDecryptionRulebase } - if o.Role.Vsys.Webui.Policies.TunnelInspectRulebase != nil { - nestedRole.Vsys.Webui.Policies.TunnelInspectRulebase = o.Role.Vsys.Webui.Policies.TunnelInspectRulebase - } - } - if o.Role.Vsys.Webui.Validate != nil { - nestedRole.Vsys.Webui.Validate = o.Role.Vsys.Webui.Validate - } - if o.Role.Vsys.Webui.Operations != nil { - nestedRole.Vsys.Webui.Operations = &RoleVsysWebuiOperationsXml{} - if _, ok := o.Misc["RoleVsysWebuiOperations"]; ok { - nestedRole.Vsys.Webui.Operations.Misc = o.Misc["RoleVsysWebuiOperations"] - } - if o.Role.Vsys.Webui.Operations.DownloadCoreFiles != nil { - nestedRole.Vsys.Webui.Operations.DownloadCoreFiles = o.Role.Vsys.Webui.Operations.DownloadCoreFiles - } - if o.Role.Vsys.Webui.Operations.DownloadPcapFiles != nil { - nestedRole.Vsys.Webui.Operations.DownloadPcapFiles = o.Role.Vsys.Webui.Operations.DownloadPcapFiles - } - if o.Role.Vsys.Webui.Operations.GenerateStatsDumpFile != nil { - nestedRole.Vsys.Webui.Operations.GenerateStatsDumpFile = o.Role.Vsys.Webui.Operations.GenerateStatsDumpFile - } - if o.Role.Vsys.Webui.Operations.GenerateTechSupportFile != nil { - nestedRole.Vsys.Webui.Operations.GenerateTechSupportFile = o.Role.Vsys.Webui.Operations.GenerateTechSupportFile - } - if o.Role.Vsys.Webui.Operations.Reboot != nil { - nestedRole.Vsys.Webui.Operations.Reboot = o.Role.Vsys.Webui.Operations.Reboot + if o.Role.Vsys.Webui.Policies.NatRulebase != nil { + nestedRole.Vsys.Webui.Policies.NatRulebase = o.Role.Vsys.Webui.Policies.NatRulebase } - } - if o.Role.Vsys.Webui.Privacy != nil { - nestedRole.Vsys.Webui.Privacy = &RoleVsysWebuiPrivacyXml{} - if _, ok := o.Misc["RoleVsysWebuiPrivacy"]; ok { - nestedRole.Vsys.Webui.Privacy.Misc = o.Misc["RoleVsysWebuiPrivacy"] + if o.Role.Vsys.Webui.Policies.NetworkPacketBrokerRulebase != nil { + nestedRole.Vsys.Webui.Policies.NetworkPacketBrokerRulebase = o.Role.Vsys.Webui.Policies.NetworkPacketBrokerRulebase } - if o.Role.Vsys.Webui.Privacy.ShowFullIpAddresses != nil { - nestedRole.Vsys.Webui.Privacy.ShowFullIpAddresses = o.Role.Vsys.Webui.Privacy.ShowFullIpAddresses + if o.Role.Vsys.Webui.Policies.QosRulebase != nil { + nestedRole.Vsys.Webui.Policies.QosRulebase = o.Role.Vsys.Webui.Policies.QosRulebase } - if o.Role.Vsys.Webui.Privacy.ShowUserNamesInLogsAndReports != nil { - nestedRole.Vsys.Webui.Privacy.ShowUserNamesInLogsAndReports = o.Role.Vsys.Webui.Privacy.ShowUserNamesInLogsAndReports + if o.Role.Vsys.Webui.Policies.RuleHitCountReset != nil { + nestedRole.Vsys.Webui.Policies.RuleHitCountReset = o.Role.Vsys.Webui.Policies.RuleHitCountReset } - if o.Role.Vsys.Webui.Privacy.ViewPcapFiles != nil { - nestedRole.Vsys.Webui.Privacy.ViewPcapFiles = o.Role.Vsys.Webui.Privacy.ViewPcapFiles + if o.Role.Vsys.Webui.Policies.SdwanRulebase != nil { + nestedRole.Vsys.Webui.Policies.SdwanRulebase = o.Role.Vsys.Webui.Policies.SdwanRulebase } } if o.Role.Vsys.Webui.Save != nil { @@ -3408,38 +3384,110 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["RoleVsysWebuiSave"]; ok { nestedRole.Vsys.Webui.Save.Misc = o.Misc["RoleVsysWebuiSave"] } - if o.Role.Vsys.Webui.Save.PartialSave != nil { - nestedRole.Vsys.Webui.Save.PartialSave = o.Role.Vsys.Webui.Save.PartialSave - } if o.Role.Vsys.Webui.Save.SaveForOtherAdmins != nil { nestedRole.Vsys.Webui.Save.SaveForOtherAdmins = o.Role.Vsys.Webui.Save.SaveForOtherAdmins } if o.Role.Vsys.Webui.Save.ObjectLevelChanges != nil { nestedRole.Vsys.Webui.Save.ObjectLevelChanges = o.Role.Vsys.Webui.Save.ObjectLevelChanges } - } - if o.Role.Vsys.Webui.Commit != nil { - nestedRole.Vsys.Webui.Commit = &RoleVsysWebuiCommitXml{} - if _, ok := o.Misc["RoleVsysWebuiCommit"]; ok { - nestedRole.Vsys.Webui.Commit.Misc = o.Misc["RoleVsysWebuiCommit"] - } - if o.Role.Vsys.Webui.Commit.CommitForOtherAdmins != nil { - nestedRole.Vsys.Webui.Commit.CommitForOtherAdmins = o.Role.Vsys.Webui.Commit.CommitForOtherAdmins - } - if o.Role.Vsys.Webui.Commit.VirtualSystems != nil { - nestedRole.Vsys.Webui.Commit.VirtualSystems = o.Role.Vsys.Webui.Commit.VirtualSystems + if o.Role.Vsys.Webui.Save.PartialSave != nil { + nestedRole.Vsys.Webui.Save.PartialSave = o.Role.Vsys.Webui.Save.PartialSave } } + if o.Role.Vsys.Webui.Acc != nil { + nestedRole.Vsys.Webui.Acc = o.Role.Vsys.Webui.Acc + } + if o.Role.Vsys.Webui.Dashboard != nil { + nestedRole.Vsys.Webui.Dashboard = o.Role.Vsys.Webui.Dashboard + } if o.Role.Vsys.Webui.Device != nil { nestedRole.Vsys.Webui.Device = &RoleVsysWebuiDeviceXml{} if _, ok := o.Misc["RoleVsysWebuiDevice"]; ok { nestedRole.Vsys.Webui.Device.Misc = o.Misc["RoleVsysWebuiDevice"] } + if o.Role.Vsys.Webui.Device.Administrators != nil { + nestedRole.Vsys.Webui.Device.Administrators = o.Role.Vsys.Webui.Device.Administrators + } + if o.Role.Vsys.Webui.Device.AuthenticationProfile != nil { + nestedRole.Vsys.Webui.Device.AuthenticationProfile = o.Role.Vsys.Webui.Device.AuthenticationProfile + } + if o.Role.Vsys.Webui.Device.ServerProfile != nil { + nestedRole.Vsys.Webui.Device.ServerProfile = &RoleVsysWebuiDeviceServerProfileXml{} + if _, ok := o.Misc["RoleVsysWebuiDeviceServerProfile"]; ok { + nestedRole.Vsys.Webui.Device.ServerProfile.Misc = o.Misc["RoleVsysWebuiDeviceServerProfile"] + } + if o.Role.Vsys.Webui.Device.ServerProfile.Radius != nil { + nestedRole.Vsys.Webui.Device.ServerProfile.Radius = o.Role.Vsys.Webui.Device.ServerProfile.Radius + } + if o.Role.Vsys.Webui.Device.ServerProfile.SamlIdp != nil { + nestedRole.Vsys.Webui.Device.ServerProfile.SamlIdp = o.Role.Vsys.Webui.Device.ServerProfile.SamlIdp + } + if o.Role.Vsys.Webui.Device.ServerProfile.SnmpTrap != nil { + nestedRole.Vsys.Webui.Device.ServerProfile.SnmpTrap = o.Role.Vsys.Webui.Device.ServerProfile.SnmpTrap + } + if o.Role.Vsys.Webui.Device.ServerProfile.Dns != nil { + nestedRole.Vsys.Webui.Device.ServerProfile.Dns = o.Role.Vsys.Webui.Device.ServerProfile.Dns + } + if o.Role.Vsys.Webui.Device.ServerProfile.Http != nil { + nestedRole.Vsys.Webui.Device.ServerProfile.Http = o.Role.Vsys.Webui.Device.ServerProfile.Http + } + if o.Role.Vsys.Webui.Device.ServerProfile.Kerberos != nil { + nestedRole.Vsys.Webui.Device.ServerProfile.Kerberos = o.Role.Vsys.Webui.Device.ServerProfile.Kerberos + } + if o.Role.Vsys.Webui.Device.ServerProfile.Netflow != nil { + nestedRole.Vsys.Webui.Device.ServerProfile.Netflow = o.Role.Vsys.Webui.Device.ServerProfile.Netflow + } + if o.Role.Vsys.Webui.Device.ServerProfile.Syslog != nil { + nestedRole.Vsys.Webui.Device.ServerProfile.Syslog = o.Role.Vsys.Webui.Device.ServerProfile.Syslog + } + if o.Role.Vsys.Webui.Device.ServerProfile.Tacplus != nil { + nestedRole.Vsys.Webui.Device.ServerProfile.Tacplus = o.Role.Vsys.Webui.Device.ServerProfile.Tacplus + } + if o.Role.Vsys.Webui.Device.ServerProfile.Email != nil { + nestedRole.Vsys.Webui.Device.ServerProfile.Email = o.Role.Vsys.Webui.Device.ServerProfile.Email + } + if o.Role.Vsys.Webui.Device.ServerProfile.Ldap != nil { + nestedRole.Vsys.Webui.Device.ServerProfile.Ldap = o.Role.Vsys.Webui.Device.ServerProfile.Ldap + } + if o.Role.Vsys.Webui.Device.ServerProfile.Mfa != nil { + nestedRole.Vsys.Webui.Device.ServerProfile.Mfa = o.Role.Vsys.Webui.Device.ServerProfile.Mfa + } + if o.Role.Vsys.Webui.Device.ServerProfile.Scp != nil { + nestedRole.Vsys.Webui.Device.ServerProfile.Scp = o.Role.Vsys.Webui.Device.ServerProfile.Scp + } + } + if o.Role.Vsys.Webui.Device.AuthenticationSequence != nil { + nestedRole.Vsys.Webui.Device.AuthenticationSequence = o.Role.Vsys.Webui.Device.AuthenticationSequence + } + if o.Role.Vsys.Webui.Device.LocalUserDatabase != nil { + nestedRole.Vsys.Webui.Device.LocalUserDatabase = &RoleVsysWebuiDeviceLocalUserDatabaseXml{} + if _, ok := o.Misc["RoleVsysWebuiDeviceLocalUserDatabase"]; ok { + nestedRole.Vsys.Webui.Device.LocalUserDatabase.Misc = o.Misc["RoleVsysWebuiDeviceLocalUserDatabase"] + } + if o.Role.Vsys.Webui.Device.LocalUserDatabase.UserGroups != nil { + nestedRole.Vsys.Webui.Device.LocalUserDatabase.UserGroups = o.Role.Vsys.Webui.Device.LocalUserDatabase.UserGroups + } + if o.Role.Vsys.Webui.Device.LocalUserDatabase.Users != nil { + nestedRole.Vsys.Webui.Device.LocalUserDatabase.Users = o.Role.Vsys.Webui.Device.LocalUserDatabase.Users + } + } + if o.Role.Vsys.Webui.Device.Troubleshooting != nil { + nestedRole.Vsys.Webui.Device.Troubleshooting = o.Role.Vsys.Webui.Device.Troubleshooting + } + if o.Role.Vsys.Webui.Device.VmInfoSource != nil { + nestedRole.Vsys.Webui.Device.VmInfoSource = o.Role.Vsys.Webui.Device.VmInfoSource + } + if o.Role.Vsys.Webui.Device.BlockPages != nil { + nestedRole.Vsys.Webui.Device.BlockPages = o.Role.Vsys.Webui.Device.BlockPages + } if o.Role.Vsys.Webui.Device.CertificateManagement != nil { nestedRole.Vsys.Webui.Device.CertificateManagement = &RoleVsysWebuiDeviceCertificateManagementXml{} if _, ok := o.Misc["RoleVsysWebuiDeviceCertificateManagement"]; ok { nestedRole.Vsys.Webui.Device.CertificateManagement.Misc = o.Misc["RoleVsysWebuiDeviceCertificateManagement"] } + if o.Role.Vsys.Webui.Device.CertificateManagement.SslDecryptionExclusion != nil { + nestedRole.Vsys.Webui.Device.CertificateManagement.SslDecryptionExclusion = o.Role.Vsys.Webui.Device.CertificateManagement.SslDecryptionExclusion + } if o.Role.Vsys.Webui.Device.CertificateManagement.SslTlsServiceProfile != nil { nestedRole.Vsys.Webui.Device.CertificateManagement.SslTlsServiceProfile = o.Role.Vsys.Webui.Device.CertificateManagement.SslTlsServiceProfile } @@ -3458,42 +3506,15 @@ func specifyEntry(o *Entry) (any, error) { if o.Role.Vsys.Webui.Device.CertificateManagement.SshServiceProfile != nil { nestedRole.Vsys.Webui.Device.CertificateManagement.SshServiceProfile = o.Role.Vsys.Webui.Device.CertificateManagement.SshServiceProfile } - if o.Role.Vsys.Webui.Device.CertificateManagement.SslDecryptionExclusion != nil { - nestedRole.Vsys.Webui.Device.CertificateManagement.SslDecryptionExclusion = o.Role.Vsys.Webui.Device.CertificateManagement.SslDecryptionExclusion - } - } - if o.Role.Vsys.Webui.Device.DataRedistribution != nil { - nestedRole.Vsys.Webui.Device.DataRedistribution = o.Role.Vsys.Webui.Device.DataRedistribution } - if o.Role.Vsys.Webui.Device.LocalUserDatabase != nil { - nestedRole.Vsys.Webui.Device.LocalUserDatabase = &RoleVsysWebuiDeviceLocalUserDatabaseXml{} - if _, ok := o.Misc["RoleVsysWebuiDeviceLocalUserDatabase"]; ok { - nestedRole.Vsys.Webui.Device.LocalUserDatabase.Misc = o.Misc["RoleVsysWebuiDeviceLocalUserDatabase"] - } - if o.Role.Vsys.Webui.Device.LocalUserDatabase.Users != nil { - nestedRole.Vsys.Webui.Device.LocalUserDatabase.Users = o.Role.Vsys.Webui.Device.LocalUserDatabase.Users - } - if o.Role.Vsys.Webui.Device.LocalUserDatabase.UserGroups != nil { - nestedRole.Vsys.Webui.Device.LocalUserDatabase.UserGroups = o.Role.Vsys.Webui.Device.LocalUserDatabase.UserGroups - } + if o.Role.Vsys.Webui.Device.DeviceQuarantine != nil { + nestedRole.Vsys.Webui.Device.DeviceQuarantine = o.Role.Vsys.Webui.Device.DeviceQuarantine } if o.Role.Vsys.Webui.Device.LogSettings != nil { nestedRole.Vsys.Webui.Device.LogSettings = &RoleVsysWebuiDeviceLogSettingsXml{} if _, ok := o.Misc["RoleVsysWebuiDeviceLogSettings"]; ok { nestedRole.Vsys.Webui.Device.LogSettings.Misc = o.Misc["RoleVsysWebuiDeviceLogSettings"] } - if o.Role.Vsys.Webui.Device.LogSettings.UserId != nil { - nestedRole.Vsys.Webui.Device.LogSettings.UserId = o.Role.Vsys.Webui.Device.LogSettings.UserId - } - if o.Role.Vsys.Webui.Device.LogSettings.Config != nil { - nestedRole.Vsys.Webui.Device.LogSettings.Config = o.Role.Vsys.Webui.Device.LogSettings.Config - } - if o.Role.Vsys.Webui.Device.LogSettings.Correlation != nil { - nestedRole.Vsys.Webui.Device.LogSettings.Correlation = o.Role.Vsys.Webui.Device.LogSettings.Correlation - } - if o.Role.Vsys.Webui.Device.LogSettings.Globalprotect != nil { - nestedRole.Vsys.Webui.Device.LogSettings.Globalprotect = o.Role.Vsys.Webui.Device.LogSettings.Globalprotect - } if o.Role.Vsys.Webui.Device.LogSettings.Hipmatch != nil { nestedRole.Vsys.Webui.Device.LogSettings.Hipmatch = o.Role.Vsys.Webui.Device.LogSettings.Hipmatch } @@ -3503,67 +3524,19 @@ func specifyEntry(o *Entry) (any, error) { if o.Role.Vsys.Webui.Device.LogSettings.System != nil { nestedRole.Vsys.Webui.Device.LogSettings.System = o.Role.Vsys.Webui.Device.LogSettings.System } - } - if o.Role.Vsys.Webui.Device.ServerProfile != nil { - nestedRole.Vsys.Webui.Device.ServerProfile = &RoleVsysWebuiDeviceServerProfileXml{} - if _, ok := o.Misc["RoleVsysWebuiDeviceServerProfile"]; ok { - nestedRole.Vsys.Webui.Device.ServerProfile.Misc = o.Misc["RoleVsysWebuiDeviceServerProfile"] - } - if o.Role.Vsys.Webui.Device.ServerProfile.Dns != nil { - nestedRole.Vsys.Webui.Device.ServerProfile.Dns = o.Role.Vsys.Webui.Device.ServerProfile.Dns - } - if o.Role.Vsys.Webui.Device.ServerProfile.Http != nil { - nestedRole.Vsys.Webui.Device.ServerProfile.Http = o.Role.Vsys.Webui.Device.ServerProfile.Http - } - if o.Role.Vsys.Webui.Device.ServerProfile.Netflow != nil { - nestedRole.Vsys.Webui.Device.ServerProfile.Netflow = o.Role.Vsys.Webui.Device.ServerProfile.Netflow - } - if o.Role.Vsys.Webui.Device.ServerProfile.SamlIdp != nil { - nestedRole.Vsys.Webui.Device.ServerProfile.SamlIdp = o.Role.Vsys.Webui.Device.ServerProfile.SamlIdp - } - if o.Role.Vsys.Webui.Device.ServerProfile.SnmpTrap != nil { - nestedRole.Vsys.Webui.Device.ServerProfile.SnmpTrap = o.Role.Vsys.Webui.Device.ServerProfile.SnmpTrap - } - if o.Role.Vsys.Webui.Device.ServerProfile.Tacplus != nil { - nestedRole.Vsys.Webui.Device.ServerProfile.Tacplus = o.Role.Vsys.Webui.Device.ServerProfile.Tacplus - } - if o.Role.Vsys.Webui.Device.ServerProfile.Syslog != nil { - nestedRole.Vsys.Webui.Device.ServerProfile.Syslog = o.Role.Vsys.Webui.Device.ServerProfile.Syslog - } - if o.Role.Vsys.Webui.Device.ServerProfile.Email != nil { - nestedRole.Vsys.Webui.Device.ServerProfile.Email = o.Role.Vsys.Webui.Device.ServerProfile.Email - } - if o.Role.Vsys.Webui.Device.ServerProfile.Kerberos != nil { - nestedRole.Vsys.Webui.Device.ServerProfile.Kerberos = o.Role.Vsys.Webui.Device.ServerProfile.Kerberos - } - if o.Role.Vsys.Webui.Device.ServerProfile.Ldap != nil { - nestedRole.Vsys.Webui.Device.ServerProfile.Ldap = o.Role.Vsys.Webui.Device.ServerProfile.Ldap + if o.Role.Vsys.Webui.Device.LogSettings.UserId != nil { + nestedRole.Vsys.Webui.Device.LogSettings.UserId = o.Role.Vsys.Webui.Device.LogSettings.UserId } - if o.Role.Vsys.Webui.Device.ServerProfile.Mfa != nil { - nestedRole.Vsys.Webui.Device.ServerProfile.Mfa = o.Role.Vsys.Webui.Device.ServerProfile.Mfa + if o.Role.Vsys.Webui.Device.LogSettings.Config != nil { + nestedRole.Vsys.Webui.Device.LogSettings.Config = o.Role.Vsys.Webui.Device.LogSettings.Config } - if o.Role.Vsys.Webui.Device.ServerProfile.Radius != nil { - nestedRole.Vsys.Webui.Device.ServerProfile.Radius = o.Role.Vsys.Webui.Device.ServerProfile.Radius + if o.Role.Vsys.Webui.Device.LogSettings.Correlation != nil { + nestedRole.Vsys.Webui.Device.LogSettings.Correlation = o.Role.Vsys.Webui.Device.LogSettings.Correlation } - if o.Role.Vsys.Webui.Device.ServerProfile.Scp != nil { - nestedRole.Vsys.Webui.Device.ServerProfile.Scp = o.Role.Vsys.Webui.Device.ServerProfile.Scp + if o.Role.Vsys.Webui.Device.LogSettings.Globalprotect != nil { + nestedRole.Vsys.Webui.Device.LogSettings.Globalprotect = o.Role.Vsys.Webui.Device.LogSettings.Globalprotect } } - if o.Role.Vsys.Webui.Device.Administrators != nil { - nestedRole.Vsys.Webui.Device.Administrators = o.Role.Vsys.Webui.Device.Administrators - } - if o.Role.Vsys.Webui.Device.AuthenticationSequence != nil { - nestedRole.Vsys.Webui.Device.AuthenticationSequence = o.Role.Vsys.Webui.Device.AuthenticationSequence - } - if o.Role.Vsys.Webui.Device.BlockPages != nil { - nestedRole.Vsys.Webui.Device.BlockPages = o.Role.Vsys.Webui.Device.BlockPages - } - if o.Role.Vsys.Webui.Device.UserIdentification != nil { - nestedRole.Vsys.Webui.Device.UserIdentification = o.Role.Vsys.Webui.Device.UserIdentification - } - if o.Role.Vsys.Webui.Device.DeviceQuarantine != nil { - nestedRole.Vsys.Webui.Device.DeviceQuarantine = o.Role.Vsys.Webui.Device.DeviceQuarantine - } if o.Role.Vsys.Webui.Device.PolicyRecommendations != nil { nestedRole.Vsys.Webui.Device.PolicyRecommendations = &RoleVsysWebuiDevicePolicyRecommendationsXml{} if _, ok := o.Misc["RoleVsysWebuiDevicePolicyRecommendations"]; ok { @@ -3576,50 +3549,47 @@ func specifyEntry(o *Entry) (any, error) { nestedRole.Vsys.Webui.Device.PolicyRecommendations.Saas = o.Role.Vsys.Webui.Device.PolicyRecommendations.Saas } } - if o.Role.Vsys.Webui.Device.DhcpSyslogServer != nil { - nestedRole.Vsys.Webui.Device.DhcpSyslogServer = o.Role.Vsys.Webui.Device.DhcpSyslogServer - } - if o.Role.Vsys.Webui.Device.VmInfoSource != nil { - nestedRole.Vsys.Webui.Device.VmInfoSource = o.Role.Vsys.Webui.Device.VmInfoSource - } - if o.Role.Vsys.Webui.Device.AuthenticationProfile != nil { - nestedRole.Vsys.Webui.Device.AuthenticationProfile = o.Role.Vsys.Webui.Device.AuthenticationProfile - } if o.Role.Vsys.Webui.Device.Setup != nil { nestedRole.Vsys.Webui.Device.Setup = &RoleVsysWebuiDeviceSetupXml{} if _, ok := o.Misc["RoleVsysWebuiDeviceSetup"]; ok { nestedRole.Vsys.Webui.Device.Setup.Misc = o.Misc["RoleVsysWebuiDeviceSetup"] } - if o.Role.Vsys.Webui.Device.Setup.Session != nil { - nestedRole.Vsys.Webui.Device.Setup.Session = o.Role.Vsys.Webui.Device.Setup.Session - } - if o.Role.Vsys.Webui.Device.Setup.Telemetry != nil { - nestedRole.Vsys.Webui.Device.Setup.Telemetry = o.Role.Vsys.Webui.Device.Setup.Telemetry - } - if o.Role.Vsys.Webui.Device.Setup.Wildfire != nil { - nestedRole.Vsys.Webui.Device.Setup.Wildfire = o.Role.Vsys.Webui.Device.Setup.Wildfire - } if o.Role.Vsys.Webui.Device.Setup.ContentId != nil { nestedRole.Vsys.Webui.Device.Setup.ContentId = o.Role.Vsys.Webui.Device.Setup.ContentId } - if o.Role.Vsys.Webui.Device.Setup.Services != nil { - nestedRole.Vsys.Webui.Device.Setup.Services = o.Role.Vsys.Webui.Device.Setup.Services + if o.Role.Vsys.Webui.Device.Setup.Hsm != nil { + nestedRole.Vsys.Webui.Device.Setup.Hsm = o.Role.Vsys.Webui.Device.Setup.Hsm } if o.Role.Vsys.Webui.Device.Setup.Management != nil { nestedRole.Vsys.Webui.Device.Setup.Management = o.Role.Vsys.Webui.Device.Setup.Management } + if o.Role.Vsys.Webui.Device.Setup.Services != nil { + nestedRole.Vsys.Webui.Device.Setup.Services = o.Role.Vsys.Webui.Device.Setup.Services + } + if o.Role.Vsys.Webui.Device.Setup.Interfaces != nil { + nestedRole.Vsys.Webui.Device.Setup.Interfaces = o.Role.Vsys.Webui.Device.Setup.Interfaces + } if o.Role.Vsys.Webui.Device.Setup.Operations != nil { nestedRole.Vsys.Webui.Device.Setup.Operations = o.Role.Vsys.Webui.Device.Setup.Operations } - if o.Role.Vsys.Webui.Device.Setup.Hsm != nil { - nestedRole.Vsys.Webui.Device.Setup.Hsm = o.Role.Vsys.Webui.Device.Setup.Hsm + if o.Role.Vsys.Webui.Device.Setup.Session != nil { + nestedRole.Vsys.Webui.Device.Setup.Session = o.Role.Vsys.Webui.Device.Setup.Session } - if o.Role.Vsys.Webui.Device.Setup.Interfaces != nil { - nestedRole.Vsys.Webui.Device.Setup.Interfaces = o.Role.Vsys.Webui.Device.Setup.Interfaces + if o.Role.Vsys.Webui.Device.Setup.Telemetry != nil { + nestedRole.Vsys.Webui.Device.Setup.Telemetry = o.Role.Vsys.Webui.Device.Setup.Telemetry + } + if o.Role.Vsys.Webui.Device.Setup.Wildfire != nil { + nestedRole.Vsys.Webui.Device.Setup.Wildfire = o.Role.Vsys.Webui.Device.Setup.Wildfire } } - if o.Role.Vsys.Webui.Device.Troubleshooting != nil { - nestedRole.Vsys.Webui.Device.Troubleshooting = o.Role.Vsys.Webui.Device.Troubleshooting + if o.Role.Vsys.Webui.Device.DataRedistribution != nil { + nestedRole.Vsys.Webui.Device.DataRedistribution = o.Role.Vsys.Webui.Device.DataRedistribution + } + if o.Role.Vsys.Webui.Device.UserIdentification != nil { + nestedRole.Vsys.Webui.Device.UserIdentification = o.Role.Vsys.Webui.Device.UserIdentification + } + if o.Role.Vsys.Webui.Device.DhcpSyslogServer != nil { + nestedRole.Vsys.Webui.Device.DhcpSyslogServer = o.Role.Vsys.Webui.Device.DhcpSyslogServer } } if o.Role.Vsys.Webui.Monitor != nil { @@ -3627,65 +3597,32 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["RoleVsysWebuiMonitor"]; ok { nestedRole.Vsys.Webui.Monitor.Misc = o.Misc["RoleVsysWebuiMonitor"] } - if o.Role.Vsys.Webui.Monitor.SessionBrowser != nil { - nestedRole.Vsys.Webui.Monitor.SessionBrowser = o.Role.Vsys.Webui.Monitor.SessionBrowser - } - if o.Role.Vsys.Webui.Monitor.ViewCustomReports != nil { - nestedRole.Vsys.Webui.Monitor.ViewCustomReports = o.Role.Vsys.Webui.Monitor.ViewCustomReports - } - if o.Role.Vsys.Webui.Monitor.Logs != nil { - nestedRole.Vsys.Webui.Monitor.Logs = &RoleVsysWebuiMonitorLogsXml{} - if _, ok := o.Misc["RoleVsysWebuiMonitorLogs"]; ok { - nestedRole.Vsys.Webui.Monitor.Logs.Misc = o.Misc["RoleVsysWebuiMonitorLogs"] - } - if o.Role.Vsys.Webui.Monitor.Logs.Authentication != nil { - nestedRole.Vsys.Webui.Monitor.Logs.Authentication = o.Role.Vsys.Webui.Monitor.Logs.Authentication - } - if o.Role.Vsys.Webui.Monitor.Logs.DataFiltering != nil { - nestedRole.Vsys.Webui.Monitor.Logs.DataFiltering = o.Role.Vsys.Webui.Monitor.Logs.DataFiltering - } - if o.Role.Vsys.Webui.Monitor.Logs.Sctp != nil { - nestedRole.Vsys.Webui.Monitor.Logs.Sctp = o.Role.Vsys.Webui.Monitor.Logs.Sctp - } - if o.Role.Vsys.Webui.Monitor.Logs.Threat != nil { - nestedRole.Vsys.Webui.Monitor.Logs.Threat = o.Role.Vsys.Webui.Monitor.Logs.Threat - } - if o.Role.Vsys.Webui.Monitor.Logs.Url != nil { - nestedRole.Vsys.Webui.Monitor.Logs.Url = o.Role.Vsys.Webui.Monitor.Logs.Url - } - if o.Role.Vsys.Webui.Monitor.Logs.Userid != nil { - nestedRole.Vsys.Webui.Monitor.Logs.Userid = o.Role.Vsys.Webui.Monitor.Logs.Userid - } - if o.Role.Vsys.Webui.Monitor.Logs.Traffic != nil { - nestedRole.Vsys.Webui.Monitor.Logs.Traffic = o.Role.Vsys.Webui.Monitor.Logs.Traffic - } - if o.Role.Vsys.Webui.Monitor.Logs.Decryption != nil { - nestedRole.Vsys.Webui.Monitor.Logs.Decryption = o.Role.Vsys.Webui.Monitor.Logs.Decryption - } - if o.Role.Vsys.Webui.Monitor.Logs.Globalprotect != nil { - nestedRole.Vsys.Webui.Monitor.Logs.Globalprotect = o.Role.Vsys.Webui.Monitor.Logs.Globalprotect - } - if o.Role.Vsys.Webui.Monitor.Logs.Gtp != nil { - nestedRole.Vsys.Webui.Monitor.Logs.Gtp = o.Role.Vsys.Webui.Monitor.Logs.Gtp - } - if o.Role.Vsys.Webui.Monitor.Logs.Hipmatch != nil { - nestedRole.Vsys.Webui.Monitor.Logs.Hipmatch = o.Role.Vsys.Webui.Monitor.Logs.Hipmatch - } - if o.Role.Vsys.Webui.Monitor.Logs.Iptag != nil { - nestedRole.Vsys.Webui.Monitor.Logs.Iptag = o.Role.Vsys.Webui.Monitor.Logs.Iptag + if o.Role.Vsys.Webui.Monitor.AutomatedCorrelationEngine != nil { + nestedRole.Vsys.Webui.Monitor.AutomatedCorrelationEngine = &RoleVsysWebuiMonitorAutomatedCorrelationEngineXml{} + if _, ok := o.Misc["RoleVsysWebuiMonitorAutomatedCorrelationEngine"]; ok { + nestedRole.Vsys.Webui.Monitor.AutomatedCorrelationEngine.Misc = o.Misc["RoleVsysWebuiMonitorAutomatedCorrelationEngine"] } - if o.Role.Vsys.Webui.Monitor.Logs.Tunnel != nil { - nestedRole.Vsys.Webui.Monitor.Logs.Tunnel = o.Role.Vsys.Webui.Monitor.Logs.Tunnel + if o.Role.Vsys.Webui.Monitor.AutomatedCorrelationEngine.CorrelatedEvents != nil { + nestedRole.Vsys.Webui.Monitor.AutomatedCorrelationEngine.CorrelatedEvents = o.Role.Vsys.Webui.Monitor.AutomatedCorrelationEngine.CorrelatedEvents } - if o.Role.Vsys.Webui.Monitor.Logs.Wildfire != nil { - nestedRole.Vsys.Webui.Monitor.Logs.Wildfire = o.Role.Vsys.Webui.Monitor.Logs.Wildfire + if o.Role.Vsys.Webui.Monitor.AutomatedCorrelationEngine.CorrelationObjects != nil { + nestedRole.Vsys.Webui.Monitor.AutomatedCorrelationEngine.CorrelationObjects = o.Role.Vsys.Webui.Monitor.AutomatedCorrelationEngine.CorrelationObjects } } + if o.Role.Vsys.Webui.Monitor.BlockIpList != nil { + nestedRole.Vsys.Webui.Monitor.BlockIpList = o.Role.Vsys.Webui.Monitor.BlockIpList + } + if o.Role.Vsys.Webui.Monitor.ExternalLogs != nil { + nestedRole.Vsys.Webui.Monitor.ExternalLogs = o.Role.Vsys.Webui.Monitor.ExternalLogs + } if o.Role.Vsys.Webui.Monitor.PdfReports != nil { nestedRole.Vsys.Webui.Monitor.PdfReports = &RoleVsysWebuiMonitorPdfReportsXml{} if _, ok := o.Misc["RoleVsysWebuiMonitorPdfReports"]; ok { nestedRole.Vsys.Webui.Monitor.PdfReports.Misc = o.Misc["RoleVsysWebuiMonitorPdfReports"] } + if o.Role.Vsys.Webui.Monitor.PdfReports.SaasApplicationUsageReport != nil { + nestedRole.Vsys.Webui.Monitor.PdfReports.SaasApplicationUsageReport = o.Role.Vsys.Webui.Monitor.PdfReports.SaasApplicationUsageReport + } if o.Role.Vsys.Webui.Monitor.PdfReports.UserActivityReport != nil { nestedRole.Vsys.Webui.Monitor.PdfReports.UserActivityReport = o.Role.Vsys.Webui.Monitor.PdfReports.UserActivityReport } @@ -3698,62 +3635,29 @@ func specifyEntry(o *Entry) (any, error) { if o.Role.Vsys.Webui.Monitor.PdfReports.PdfSummaryReports != nil { nestedRole.Vsys.Webui.Monitor.PdfReports.PdfSummaryReports = o.Role.Vsys.Webui.Monitor.PdfReports.PdfSummaryReports } - if o.Role.Vsys.Webui.Monitor.PdfReports.ReportGroups != nil { - nestedRole.Vsys.Webui.Monitor.PdfReports.ReportGroups = o.Role.Vsys.Webui.Monitor.PdfReports.ReportGroups - } - if o.Role.Vsys.Webui.Monitor.PdfReports.SaasApplicationUsageReport != nil { - nestedRole.Vsys.Webui.Monitor.PdfReports.SaasApplicationUsageReport = o.Role.Vsys.Webui.Monitor.PdfReports.SaasApplicationUsageReport - } - } - if o.Role.Vsys.Webui.Monitor.AppScope != nil { - nestedRole.Vsys.Webui.Monitor.AppScope = o.Role.Vsys.Webui.Monitor.AppScope - } - if o.Role.Vsys.Webui.Monitor.AutomatedCorrelationEngine != nil { - nestedRole.Vsys.Webui.Monitor.AutomatedCorrelationEngine = &RoleVsysWebuiMonitorAutomatedCorrelationEngineXml{} - if _, ok := o.Misc["RoleVsysWebuiMonitorAutomatedCorrelationEngine"]; ok { - nestedRole.Vsys.Webui.Monitor.AutomatedCorrelationEngine.Misc = o.Misc["RoleVsysWebuiMonitorAutomatedCorrelationEngine"] - } - if o.Role.Vsys.Webui.Monitor.AutomatedCorrelationEngine.CorrelatedEvents != nil { - nestedRole.Vsys.Webui.Monitor.AutomatedCorrelationEngine.CorrelatedEvents = o.Role.Vsys.Webui.Monitor.AutomatedCorrelationEngine.CorrelatedEvents - } - if o.Role.Vsys.Webui.Monitor.AutomatedCorrelationEngine.CorrelationObjects != nil { - nestedRole.Vsys.Webui.Monitor.AutomatedCorrelationEngine.CorrelationObjects = o.Role.Vsys.Webui.Monitor.AutomatedCorrelationEngine.CorrelationObjects - } - } - if o.Role.Vsys.Webui.Monitor.BlockIpList != nil { - nestedRole.Vsys.Webui.Monitor.BlockIpList = o.Role.Vsys.Webui.Monitor.BlockIpList - } - if o.Role.Vsys.Webui.Monitor.CustomReports != nil { - nestedRole.Vsys.Webui.Monitor.CustomReports = &RoleVsysWebuiMonitorCustomReportsXml{} - if _, ok := o.Misc["RoleVsysWebuiMonitorCustomReports"]; ok { - nestedRole.Vsys.Webui.Monitor.CustomReports.Misc = o.Misc["RoleVsysWebuiMonitorCustomReports"] - } - if o.Role.Vsys.Webui.Monitor.CustomReports.Auth != nil { - nestedRole.Vsys.Webui.Monitor.CustomReports.Auth = o.Role.Vsys.Webui.Monitor.CustomReports.Auth - } - if o.Role.Vsys.Webui.Monitor.CustomReports.DecryptionSummary != nil { - nestedRole.Vsys.Webui.Monitor.CustomReports.DecryptionSummary = o.Role.Vsys.Webui.Monitor.CustomReports.DecryptionSummary - } - if o.Role.Vsys.Webui.Monitor.CustomReports.ThreatSummary != nil { - nestedRole.Vsys.Webui.Monitor.CustomReports.ThreatSummary = o.Role.Vsys.Webui.Monitor.CustomReports.ThreatSummary - } - if o.Role.Vsys.Webui.Monitor.CustomReports.WildfireLog != nil { - nestedRole.Vsys.Webui.Monitor.CustomReports.WildfireLog = o.Role.Vsys.Webui.Monitor.CustomReports.WildfireLog + if o.Role.Vsys.Webui.Monitor.PdfReports.ReportGroups != nil { + nestedRole.Vsys.Webui.Monitor.PdfReports.ReportGroups = o.Role.Vsys.Webui.Monitor.PdfReports.ReportGroups } - if o.Role.Vsys.Webui.Monitor.CustomReports.DecryptionLog != nil { - nestedRole.Vsys.Webui.Monitor.CustomReports.DecryptionLog = o.Role.Vsys.Webui.Monitor.CustomReports.DecryptionLog + } + if o.Role.Vsys.Webui.Monitor.AppScope != nil { + nestedRole.Vsys.Webui.Monitor.AppScope = o.Role.Vsys.Webui.Monitor.AppScope + } + if o.Role.Vsys.Webui.Monitor.CustomReports != nil { + nestedRole.Vsys.Webui.Monitor.CustomReports = &RoleVsysWebuiMonitorCustomReportsXml{} + if _, ok := o.Misc["RoleVsysWebuiMonitorCustomReports"]; ok { + nestedRole.Vsys.Webui.Monitor.CustomReports.Misc = o.Misc["RoleVsysWebuiMonitorCustomReports"] } - if o.Role.Vsys.Webui.Monitor.CustomReports.GtpLog != nil { - nestedRole.Vsys.Webui.Monitor.CustomReports.GtpLog = o.Role.Vsys.Webui.Monitor.CustomReports.GtpLog + if o.Role.Vsys.Webui.Monitor.CustomReports.SctpSummary != nil { + nestedRole.Vsys.Webui.Monitor.CustomReports.SctpSummary = o.Role.Vsys.Webui.Monitor.CustomReports.SctpSummary } if o.Role.Vsys.Webui.Monitor.CustomReports.TrafficLog != nil { nestedRole.Vsys.Webui.Monitor.CustomReports.TrafficLog = o.Role.Vsys.Webui.Monitor.CustomReports.TrafficLog } - if o.Role.Vsys.Webui.Monitor.CustomReports.TunnelSummary != nil { - nestedRole.Vsys.Webui.Monitor.CustomReports.TunnelSummary = o.Role.Vsys.Webui.Monitor.CustomReports.TunnelSummary + if o.Role.Vsys.Webui.Monitor.CustomReports.Userid != nil { + nestedRole.Vsys.Webui.Monitor.CustomReports.Userid = o.Role.Vsys.Webui.Monitor.CustomReports.Userid } - if o.Role.Vsys.Webui.Monitor.CustomReports.DataFilteringLog != nil { - nestedRole.Vsys.Webui.Monitor.CustomReports.DataFilteringLog = o.Role.Vsys.Webui.Monitor.CustomReports.DataFilteringLog + if o.Role.Vsys.Webui.Monitor.CustomReports.GtpLog != nil { + nestedRole.Vsys.Webui.Monitor.CustomReports.GtpLog = o.Role.Vsys.Webui.Monitor.CustomReports.GtpLog } if o.Role.Vsys.Webui.Monitor.CustomReports.GtpSummary != nil { nestedRole.Vsys.Webui.Monitor.CustomReports.GtpSummary = o.Role.Vsys.Webui.Monitor.CustomReports.GtpSummary @@ -3761,75 +3665,126 @@ func specifyEntry(o *Entry) (any, error) { if o.Role.Vsys.Webui.Monitor.CustomReports.SctpLog != nil { nestedRole.Vsys.Webui.Monitor.CustomReports.SctpLog = o.Role.Vsys.Webui.Monitor.CustomReports.SctpLog } - if o.Role.Vsys.Webui.Monitor.CustomReports.SctpSummary != nil { - nestedRole.Vsys.Webui.Monitor.CustomReports.SctpSummary = o.Role.Vsys.Webui.Monitor.CustomReports.SctpSummary + if o.Role.Vsys.Webui.Monitor.CustomReports.Hipmatch != nil { + nestedRole.Vsys.Webui.Monitor.CustomReports.Hipmatch = o.Role.Vsys.Webui.Monitor.CustomReports.Hipmatch + } + if o.Role.Vsys.Webui.Monitor.CustomReports.Iptag != nil { + nestedRole.Vsys.Webui.Monitor.CustomReports.Iptag = o.Role.Vsys.Webui.Monitor.CustomReports.Iptag + } + if o.Role.Vsys.Webui.Monitor.CustomReports.ThreatSummary != nil { + nestedRole.Vsys.Webui.Monitor.CustomReports.ThreatSummary = o.Role.Vsys.Webui.Monitor.CustomReports.ThreatSummary } if o.Role.Vsys.Webui.Monitor.CustomReports.TrafficSummary != nil { nestedRole.Vsys.Webui.Monitor.CustomReports.TrafficSummary = o.Role.Vsys.Webui.Monitor.CustomReports.TrafficSummary } - if o.Role.Vsys.Webui.Monitor.CustomReports.TunnelLog != nil { - nestedRole.Vsys.Webui.Monitor.CustomReports.TunnelLog = o.Role.Vsys.Webui.Monitor.CustomReports.TunnelLog - } if o.Role.Vsys.Webui.Monitor.CustomReports.UrlLog != nil { nestedRole.Vsys.Webui.Monitor.CustomReports.UrlLog = o.Role.Vsys.Webui.Monitor.CustomReports.UrlLog } - if o.Role.Vsys.Webui.Monitor.CustomReports.ApplicationStatistics != nil { - nestedRole.Vsys.Webui.Monitor.CustomReports.ApplicationStatistics = o.Role.Vsys.Webui.Monitor.CustomReports.ApplicationStatistics + if o.Role.Vsys.Webui.Monitor.CustomReports.DataFilteringLog != nil { + nestedRole.Vsys.Webui.Monitor.CustomReports.DataFilteringLog = o.Role.Vsys.Webui.Monitor.CustomReports.DataFilteringLog + } + if o.Role.Vsys.Webui.Monitor.CustomReports.DecryptionSummary != nil { + nestedRole.Vsys.Webui.Monitor.CustomReports.DecryptionSummary = o.Role.Vsys.Webui.Monitor.CustomReports.DecryptionSummary } if o.Role.Vsys.Webui.Monitor.CustomReports.Globalprotect != nil { nestedRole.Vsys.Webui.Monitor.CustomReports.Globalprotect = o.Role.Vsys.Webui.Monitor.CustomReports.Globalprotect } - if o.Role.Vsys.Webui.Monitor.CustomReports.Hipmatch != nil { - nestedRole.Vsys.Webui.Monitor.CustomReports.Hipmatch = o.Role.Vsys.Webui.Monitor.CustomReports.Hipmatch + if o.Role.Vsys.Webui.Monitor.CustomReports.UrlSummary != nil { + nestedRole.Vsys.Webui.Monitor.CustomReports.UrlSummary = o.Role.Vsys.Webui.Monitor.CustomReports.UrlSummary } - if o.Role.Vsys.Webui.Monitor.CustomReports.Iptag != nil { - nestedRole.Vsys.Webui.Monitor.CustomReports.Iptag = o.Role.Vsys.Webui.Monitor.CustomReports.Iptag + if o.Role.Vsys.Webui.Monitor.CustomReports.WildfireLog != nil { + nestedRole.Vsys.Webui.Monitor.CustomReports.WildfireLog = o.Role.Vsys.Webui.Monitor.CustomReports.WildfireLog + } + if o.Role.Vsys.Webui.Monitor.CustomReports.DecryptionLog != nil { + nestedRole.Vsys.Webui.Monitor.CustomReports.DecryptionLog = o.Role.Vsys.Webui.Monitor.CustomReports.DecryptionLog } if o.Role.Vsys.Webui.Monitor.CustomReports.ThreatLog != nil { nestedRole.Vsys.Webui.Monitor.CustomReports.ThreatLog = o.Role.Vsys.Webui.Monitor.CustomReports.ThreatLog } - if o.Role.Vsys.Webui.Monitor.CustomReports.UrlSummary != nil { - nestedRole.Vsys.Webui.Monitor.CustomReports.UrlSummary = o.Role.Vsys.Webui.Monitor.CustomReports.UrlSummary + if o.Role.Vsys.Webui.Monitor.CustomReports.TunnelSummary != nil { + nestedRole.Vsys.Webui.Monitor.CustomReports.TunnelSummary = o.Role.Vsys.Webui.Monitor.CustomReports.TunnelSummary } - if o.Role.Vsys.Webui.Monitor.CustomReports.Userid != nil { - nestedRole.Vsys.Webui.Monitor.CustomReports.Userid = o.Role.Vsys.Webui.Monitor.CustomReports.Userid + if o.Role.Vsys.Webui.Monitor.CustomReports.ApplicationStatistics != nil { + nestedRole.Vsys.Webui.Monitor.CustomReports.ApplicationStatistics = o.Role.Vsys.Webui.Monitor.CustomReports.ApplicationStatistics + } + if o.Role.Vsys.Webui.Monitor.CustomReports.Auth != nil { + nestedRole.Vsys.Webui.Monitor.CustomReports.Auth = o.Role.Vsys.Webui.Monitor.CustomReports.Auth + } + if o.Role.Vsys.Webui.Monitor.CustomReports.TunnelLog != nil { + nestedRole.Vsys.Webui.Monitor.CustomReports.TunnelLog = o.Role.Vsys.Webui.Monitor.CustomReports.TunnelLog } } - if o.Role.Vsys.Webui.Monitor.ExternalLogs != nil { - nestedRole.Vsys.Webui.Monitor.ExternalLogs = o.Role.Vsys.Webui.Monitor.ExternalLogs - } - } - if o.Role.Vsys.Webui.Network != nil { - nestedRole.Vsys.Webui.Network = &RoleVsysWebuiNetworkXml{} - if _, ok := o.Misc["RoleVsysWebuiNetwork"]; ok { - nestedRole.Vsys.Webui.Network.Misc = o.Misc["RoleVsysWebuiNetwork"] - } - if o.Role.Vsys.Webui.Network.Zones != nil { - nestedRole.Vsys.Webui.Network.Zones = o.Role.Vsys.Webui.Network.Zones - } - if o.Role.Vsys.Webui.Network.GlobalProtect != nil { - nestedRole.Vsys.Webui.Network.GlobalProtect = &RoleVsysWebuiNetworkGlobalProtectXml{} - if _, ok := o.Misc["RoleVsysWebuiNetworkGlobalProtect"]; ok { - nestedRole.Vsys.Webui.Network.GlobalProtect.Misc = o.Misc["RoleVsysWebuiNetworkGlobalProtect"] + if o.Role.Vsys.Webui.Monitor.Logs != nil { + nestedRole.Vsys.Webui.Monitor.Logs = &RoleVsysWebuiMonitorLogsXml{} + if _, ok := o.Misc["RoleVsysWebuiMonitorLogs"]; ok { + nestedRole.Vsys.Webui.Monitor.Logs.Misc = o.Misc["RoleVsysWebuiMonitorLogs"] } - if o.Role.Vsys.Webui.Network.GlobalProtect.ClientlessAppGroups != nil { - nestedRole.Vsys.Webui.Network.GlobalProtect.ClientlessAppGroups = o.Role.Vsys.Webui.Network.GlobalProtect.ClientlessAppGroups + if o.Role.Vsys.Webui.Monitor.Logs.Threat != nil { + nestedRole.Vsys.Webui.Monitor.Logs.Threat = o.Role.Vsys.Webui.Monitor.Logs.Threat } - if o.Role.Vsys.Webui.Network.GlobalProtect.ClientlessApps != nil { - nestedRole.Vsys.Webui.Network.GlobalProtect.ClientlessApps = o.Role.Vsys.Webui.Network.GlobalProtect.ClientlessApps + if o.Role.Vsys.Webui.Monitor.Logs.Wildfire != nil { + nestedRole.Vsys.Webui.Monitor.Logs.Wildfire = o.Role.Vsys.Webui.Monitor.Logs.Wildfire } - if o.Role.Vsys.Webui.Network.GlobalProtect.Gateways != nil { - nestedRole.Vsys.Webui.Network.GlobalProtect.Gateways = o.Role.Vsys.Webui.Network.GlobalProtect.Gateways + if o.Role.Vsys.Webui.Monitor.Logs.DataFiltering != nil { + nestedRole.Vsys.Webui.Monitor.Logs.DataFiltering = o.Role.Vsys.Webui.Monitor.Logs.DataFiltering } - if o.Role.Vsys.Webui.Network.GlobalProtect.Mdm != nil { - nestedRole.Vsys.Webui.Network.GlobalProtect.Mdm = o.Role.Vsys.Webui.Network.GlobalProtect.Mdm + if o.Role.Vsys.Webui.Monitor.Logs.Globalprotect != nil { + nestedRole.Vsys.Webui.Monitor.Logs.Globalprotect = o.Role.Vsys.Webui.Monitor.Logs.Globalprotect } - if o.Role.Vsys.Webui.Network.GlobalProtect.Portals != nil { - nestedRole.Vsys.Webui.Network.GlobalProtect.Portals = o.Role.Vsys.Webui.Network.GlobalProtect.Portals + if o.Role.Vsys.Webui.Monitor.Logs.Hipmatch != nil { + nestedRole.Vsys.Webui.Monitor.Logs.Hipmatch = o.Role.Vsys.Webui.Monitor.Logs.Hipmatch + } + if o.Role.Vsys.Webui.Monitor.Logs.Url != nil { + nestedRole.Vsys.Webui.Monitor.Logs.Url = o.Role.Vsys.Webui.Monitor.Logs.Url + } + if o.Role.Vsys.Webui.Monitor.Logs.Userid != nil { + nestedRole.Vsys.Webui.Monitor.Logs.Userid = o.Role.Vsys.Webui.Monitor.Logs.Userid + } + if o.Role.Vsys.Webui.Monitor.Logs.Authentication != nil { + nestedRole.Vsys.Webui.Monitor.Logs.Authentication = o.Role.Vsys.Webui.Monitor.Logs.Authentication + } + if o.Role.Vsys.Webui.Monitor.Logs.Decryption != nil { + nestedRole.Vsys.Webui.Monitor.Logs.Decryption = o.Role.Vsys.Webui.Monitor.Logs.Decryption + } + if o.Role.Vsys.Webui.Monitor.Logs.Gtp != nil { + nestedRole.Vsys.Webui.Monitor.Logs.Gtp = o.Role.Vsys.Webui.Monitor.Logs.Gtp + } + if o.Role.Vsys.Webui.Monitor.Logs.Iptag != nil { + nestedRole.Vsys.Webui.Monitor.Logs.Iptag = o.Role.Vsys.Webui.Monitor.Logs.Iptag + } + if o.Role.Vsys.Webui.Monitor.Logs.Traffic != nil { + nestedRole.Vsys.Webui.Monitor.Logs.Traffic = o.Role.Vsys.Webui.Monitor.Logs.Traffic + } + if o.Role.Vsys.Webui.Monitor.Logs.Tunnel != nil { + nestedRole.Vsys.Webui.Monitor.Logs.Tunnel = o.Role.Vsys.Webui.Monitor.Logs.Tunnel + } + if o.Role.Vsys.Webui.Monitor.Logs.Sctp != nil { + nestedRole.Vsys.Webui.Monitor.Logs.Sctp = o.Role.Vsys.Webui.Monitor.Logs.Sctp } } - if o.Role.Vsys.Webui.Network.SdwanInterfaceProfile != nil { - nestedRole.Vsys.Webui.Network.SdwanInterfaceProfile = o.Role.Vsys.Webui.Network.SdwanInterfaceProfile + if o.Role.Vsys.Webui.Monitor.SessionBrowser != nil { + nestedRole.Vsys.Webui.Monitor.SessionBrowser = o.Role.Vsys.Webui.Monitor.SessionBrowser + } + if o.Role.Vsys.Webui.Monitor.ViewCustomReports != nil { + nestedRole.Vsys.Webui.Monitor.ViewCustomReports = o.Role.Vsys.Webui.Monitor.ViewCustomReports + } + } + if o.Role.Vsys.Webui.Tasks != nil { + nestedRole.Vsys.Webui.Tasks = o.Role.Vsys.Webui.Tasks + } + if o.Role.Vsys.Webui.Validate != nil { + nestedRole.Vsys.Webui.Validate = o.Role.Vsys.Webui.Validate + } + if o.Role.Vsys.Webui.Commit != nil { + nestedRole.Vsys.Webui.Commit = &RoleVsysWebuiCommitXml{} + if _, ok := o.Misc["RoleVsysWebuiCommit"]; ok { + nestedRole.Vsys.Webui.Commit.Misc = o.Misc["RoleVsysWebuiCommit"] + } + if o.Role.Vsys.Webui.Commit.CommitForOtherAdmins != nil { + nestedRole.Vsys.Webui.Commit.CommitForOtherAdmins = o.Role.Vsys.Webui.Commit.CommitForOtherAdmins + } + if o.Role.Vsys.Webui.Commit.VirtualSystems != nil { + nestedRole.Vsys.Webui.Commit.VirtualSystems = o.Role.Vsys.Webui.Commit.VirtualSystems } } if o.Role.Vsys.Webui.Objects != nil { @@ -3837,47 +3792,23 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["RoleVsysWebuiObjects"]; ok { nestedRole.Vsys.Webui.Objects.Misc = o.Misc["RoleVsysWebuiObjects"] } - if o.Role.Vsys.Webui.Objects.Sdwan != nil { - nestedRole.Vsys.Webui.Objects.Sdwan = &RoleVsysWebuiObjectsSdwanXml{} - if _, ok := o.Misc["RoleVsysWebuiObjectsSdwan"]; ok { - nestedRole.Vsys.Webui.Objects.Sdwan.Misc = o.Misc["RoleVsysWebuiObjectsSdwan"] - } - if o.Role.Vsys.Webui.Objects.Sdwan.SdwanDistProfile != nil { - nestedRole.Vsys.Webui.Objects.Sdwan.SdwanDistProfile = o.Role.Vsys.Webui.Objects.Sdwan.SdwanDistProfile - } - if o.Role.Vsys.Webui.Objects.Sdwan.SdwanErrorCorrectionProfile != nil { - nestedRole.Vsys.Webui.Objects.Sdwan.SdwanErrorCorrectionProfile = o.Role.Vsys.Webui.Objects.Sdwan.SdwanErrorCorrectionProfile - } - if o.Role.Vsys.Webui.Objects.Sdwan.SdwanProfile != nil { - nestedRole.Vsys.Webui.Objects.Sdwan.SdwanProfile = o.Role.Vsys.Webui.Objects.Sdwan.SdwanProfile - } - if o.Role.Vsys.Webui.Objects.Sdwan.SdwanSaasQualityProfile != nil { - nestedRole.Vsys.Webui.Objects.Sdwan.SdwanSaasQualityProfile = o.Role.Vsys.Webui.Objects.Sdwan.SdwanSaasQualityProfile - } + if o.Role.Vsys.Webui.Objects.Services != nil { + nestedRole.Vsys.Webui.Objects.Services = o.Role.Vsys.Webui.Objects.Services } - if o.Role.Vsys.Webui.Objects.DynamicBlockLists != nil { - nestedRole.Vsys.Webui.Objects.DynamicBlockLists = o.Role.Vsys.Webui.Objects.DynamicBlockLists + if o.Role.Vsys.Webui.Objects.Tags != nil { + nestedRole.Vsys.Webui.Objects.Tags = o.Role.Vsys.Webui.Objects.Tags } - if o.Role.Vsys.Webui.Objects.DynamicUserGroups != nil { - nestedRole.Vsys.Webui.Objects.DynamicUserGroups = o.Role.Vsys.Webui.Objects.DynamicUserGroups + if o.Role.Vsys.Webui.Objects.AddressGroups != nil { + nestedRole.Vsys.Webui.Objects.AddressGroups = o.Role.Vsys.Webui.Objects.AddressGroups } - if o.Role.Vsys.Webui.Objects.PacketBrokerProfile != nil { - nestedRole.Vsys.Webui.Objects.PacketBrokerProfile = o.Role.Vsys.Webui.Objects.PacketBrokerProfile + if o.Role.Vsys.Webui.Objects.Addresses != nil { + nestedRole.Vsys.Webui.Objects.Addresses = o.Role.Vsys.Webui.Objects.Addresses } - if o.Role.Vsys.Webui.Objects.GlobalProtect != nil { - nestedRole.Vsys.Webui.Objects.GlobalProtect = &RoleVsysWebuiObjectsGlobalProtectXml{} - if _, ok := o.Misc["RoleVsysWebuiObjectsGlobalProtect"]; ok { - nestedRole.Vsys.Webui.Objects.GlobalProtect.Misc = o.Misc["RoleVsysWebuiObjectsGlobalProtect"] - } - if o.Role.Vsys.Webui.Objects.GlobalProtect.HipObjects != nil { - nestedRole.Vsys.Webui.Objects.GlobalProtect.HipObjects = o.Role.Vsys.Webui.Objects.GlobalProtect.HipObjects - } - if o.Role.Vsys.Webui.Objects.GlobalProtect.HipProfiles != nil { - nestedRole.Vsys.Webui.Objects.GlobalProtect.HipProfiles = o.Role.Vsys.Webui.Objects.GlobalProtect.HipProfiles - } + if o.Role.Vsys.Webui.Objects.ApplicationGroups != nil { + nestedRole.Vsys.Webui.Objects.ApplicationGroups = o.Role.Vsys.Webui.Objects.ApplicationGroups } - if o.Role.Vsys.Webui.Objects.Schedules != nil { - nestedRole.Vsys.Webui.Objects.Schedules = o.Role.Vsys.Webui.Objects.Schedules + if o.Role.Vsys.Webui.Objects.ServiceGroups != nil { + nestedRole.Vsys.Webui.Objects.ServiceGroups = o.Role.Vsys.Webui.Objects.ServiceGroups } if o.Role.Vsys.Webui.Objects.SecurityProfiles != nil { nestedRole.Vsys.Webui.Objects.SecurityProfiles = &RoleVsysWebuiObjectsSecurityProfilesXml{} @@ -3887,39 +3818,33 @@ func specifyEntry(o *Entry) (any, error) { if o.Role.Vsys.Webui.Objects.SecurityProfiles.AntiSpyware != nil { nestedRole.Vsys.Webui.Objects.SecurityProfiles.AntiSpyware = o.Role.Vsys.Webui.Objects.SecurityProfiles.AntiSpyware } - if o.Role.Vsys.Webui.Objects.SecurityProfiles.Antivirus != nil { - nestedRole.Vsys.Webui.Objects.SecurityProfiles.Antivirus = o.Role.Vsys.Webui.Objects.SecurityProfiles.Antivirus - } if o.Role.Vsys.Webui.Objects.SecurityProfiles.DataFiltering != nil { nestedRole.Vsys.Webui.Objects.SecurityProfiles.DataFiltering = o.Role.Vsys.Webui.Objects.SecurityProfiles.DataFiltering } - if o.Role.Vsys.Webui.Objects.SecurityProfiles.SctpProtection != nil { - nestedRole.Vsys.Webui.Objects.SecurityProfiles.SctpProtection = o.Role.Vsys.Webui.Objects.SecurityProfiles.SctpProtection - } - if o.Role.Vsys.Webui.Objects.SecurityProfiles.WildfireAnalysis != nil { - nestedRole.Vsys.Webui.Objects.SecurityProfiles.WildfireAnalysis = o.Role.Vsys.Webui.Objects.SecurityProfiles.WildfireAnalysis - } if o.Role.Vsys.Webui.Objects.SecurityProfiles.DosProtection != nil { nestedRole.Vsys.Webui.Objects.SecurityProfiles.DosProtection = o.Role.Vsys.Webui.Objects.SecurityProfiles.DosProtection } + if o.Role.Vsys.Webui.Objects.SecurityProfiles.UrlFiltering != nil { + nestedRole.Vsys.Webui.Objects.SecurityProfiles.UrlFiltering = o.Role.Vsys.Webui.Objects.SecurityProfiles.UrlFiltering + } + if o.Role.Vsys.Webui.Objects.SecurityProfiles.Antivirus != nil { + nestedRole.Vsys.Webui.Objects.SecurityProfiles.Antivirus = o.Role.Vsys.Webui.Objects.SecurityProfiles.Antivirus + } if o.Role.Vsys.Webui.Objects.SecurityProfiles.FileBlocking != nil { nestedRole.Vsys.Webui.Objects.SecurityProfiles.FileBlocking = o.Role.Vsys.Webui.Objects.SecurityProfiles.FileBlocking } if o.Role.Vsys.Webui.Objects.SecurityProfiles.GtpProtection != nil { nestedRole.Vsys.Webui.Objects.SecurityProfiles.GtpProtection = o.Role.Vsys.Webui.Objects.SecurityProfiles.GtpProtection } - if o.Role.Vsys.Webui.Objects.SecurityProfiles.UrlFiltering != nil { - nestedRole.Vsys.Webui.Objects.SecurityProfiles.UrlFiltering = o.Role.Vsys.Webui.Objects.SecurityProfiles.UrlFiltering + if o.Role.Vsys.Webui.Objects.SecurityProfiles.SctpProtection != nil { + nestedRole.Vsys.Webui.Objects.SecurityProfiles.SctpProtection = o.Role.Vsys.Webui.Objects.SecurityProfiles.SctpProtection } if o.Role.Vsys.Webui.Objects.SecurityProfiles.VulnerabilityProtection != nil { nestedRole.Vsys.Webui.Objects.SecurityProfiles.VulnerabilityProtection = o.Role.Vsys.Webui.Objects.SecurityProfiles.VulnerabilityProtection } - } - if o.Role.Vsys.Webui.Objects.ServiceGroups != nil { - nestedRole.Vsys.Webui.Objects.ServiceGroups = o.Role.Vsys.Webui.Objects.ServiceGroups - } - if o.Role.Vsys.Webui.Objects.Addresses != nil { - nestedRole.Vsys.Webui.Objects.Addresses = o.Role.Vsys.Webui.Objects.Addresses + if o.Role.Vsys.Webui.Objects.SecurityProfiles.WildfireAnalysis != nil { + nestedRole.Vsys.Webui.Objects.SecurityProfiles.WildfireAnalysis = o.Role.Vsys.Webui.Objects.SecurityProfiles.WildfireAnalysis + } } if o.Role.Vsys.Webui.Objects.Decryption != nil { nestedRole.Vsys.Webui.Objects.Decryption = &RoleVsysWebuiObjectsDecryptionXml{} @@ -3933,41 +3858,68 @@ func specifyEntry(o *Entry) (any, error) { if o.Role.Vsys.Webui.Objects.Devices != nil { nestedRole.Vsys.Webui.Objects.Devices = o.Role.Vsys.Webui.Objects.Devices } - if o.Role.Vsys.Webui.Objects.Authentication != nil { - nestedRole.Vsys.Webui.Objects.Authentication = o.Role.Vsys.Webui.Objects.Authentication - } - if o.Role.Vsys.Webui.Objects.Regions != nil { - nestedRole.Vsys.Webui.Objects.Regions = o.Role.Vsys.Webui.Objects.Regions - } - if o.Role.Vsys.Webui.Objects.Tags != nil { - nestedRole.Vsys.Webui.Objects.Tags = o.Role.Vsys.Webui.Objects.Tags - } - if o.Role.Vsys.Webui.Objects.AddressGroups != nil { - nestedRole.Vsys.Webui.Objects.AddressGroups = o.Role.Vsys.Webui.Objects.AddressGroups + if o.Role.Vsys.Webui.Objects.DynamicUserGroups != nil { + nestedRole.Vsys.Webui.Objects.DynamicUserGroups = o.Role.Vsys.Webui.Objects.DynamicUserGroups } - if o.Role.Vsys.Webui.Objects.ApplicationGroups != nil { - nestedRole.Vsys.Webui.Objects.ApplicationGroups = o.Role.Vsys.Webui.Objects.ApplicationGroups + if o.Role.Vsys.Webui.Objects.Schedules != nil { + nestedRole.Vsys.Webui.Objects.Schedules = o.Role.Vsys.Webui.Objects.Schedules } if o.Role.Vsys.Webui.Objects.Applications != nil { nestedRole.Vsys.Webui.Objects.Applications = o.Role.Vsys.Webui.Objects.Applications } + if o.Role.Vsys.Webui.Objects.Regions != nil { + nestedRole.Vsys.Webui.Objects.Regions = o.Role.Vsys.Webui.Objects.Regions + } + if o.Role.Vsys.Webui.Objects.Sdwan != nil { + nestedRole.Vsys.Webui.Objects.Sdwan = &RoleVsysWebuiObjectsSdwanXml{} + if _, ok := o.Misc["RoleVsysWebuiObjectsSdwan"]; ok { + nestedRole.Vsys.Webui.Objects.Sdwan.Misc = o.Misc["RoleVsysWebuiObjectsSdwan"] + } + if o.Role.Vsys.Webui.Objects.Sdwan.SdwanErrorCorrectionProfile != nil { + nestedRole.Vsys.Webui.Objects.Sdwan.SdwanErrorCorrectionProfile = o.Role.Vsys.Webui.Objects.Sdwan.SdwanErrorCorrectionProfile + } + if o.Role.Vsys.Webui.Objects.Sdwan.SdwanProfile != nil { + nestedRole.Vsys.Webui.Objects.Sdwan.SdwanProfile = o.Role.Vsys.Webui.Objects.Sdwan.SdwanProfile + } + if o.Role.Vsys.Webui.Objects.Sdwan.SdwanSaasQualityProfile != nil { + nestedRole.Vsys.Webui.Objects.Sdwan.SdwanSaasQualityProfile = o.Role.Vsys.Webui.Objects.Sdwan.SdwanSaasQualityProfile + } + if o.Role.Vsys.Webui.Objects.Sdwan.SdwanDistProfile != nil { + nestedRole.Vsys.Webui.Objects.Sdwan.SdwanDistProfile = o.Role.Vsys.Webui.Objects.Sdwan.SdwanDistProfile + } + } if o.Role.Vsys.Webui.Objects.SecurityProfileGroups != nil { nestedRole.Vsys.Webui.Objects.SecurityProfileGroups = o.Role.Vsys.Webui.Objects.SecurityProfileGroups } - if o.Role.Vsys.Webui.Objects.Services != nil { - nestedRole.Vsys.Webui.Objects.Services = o.Role.Vsys.Webui.Objects.Services + if o.Role.Vsys.Webui.Objects.GlobalProtect != nil { + nestedRole.Vsys.Webui.Objects.GlobalProtect = &RoleVsysWebuiObjectsGlobalProtectXml{} + if _, ok := o.Misc["RoleVsysWebuiObjectsGlobalProtect"]; ok { + nestedRole.Vsys.Webui.Objects.GlobalProtect.Misc = o.Misc["RoleVsysWebuiObjectsGlobalProtect"] + } + if o.Role.Vsys.Webui.Objects.GlobalProtect.HipObjects != nil { + nestedRole.Vsys.Webui.Objects.GlobalProtect.HipObjects = o.Role.Vsys.Webui.Objects.GlobalProtect.HipObjects + } + if o.Role.Vsys.Webui.Objects.GlobalProtect.HipProfiles != nil { + nestedRole.Vsys.Webui.Objects.GlobalProtect.HipProfiles = o.Role.Vsys.Webui.Objects.GlobalProtect.HipProfiles + } + } + if o.Role.Vsys.Webui.Objects.LogForwarding != nil { + nestedRole.Vsys.Webui.Objects.LogForwarding = o.Role.Vsys.Webui.Objects.LogForwarding + } + if o.Role.Vsys.Webui.Objects.PacketBrokerProfile != nil { + nestedRole.Vsys.Webui.Objects.PacketBrokerProfile = o.Role.Vsys.Webui.Objects.PacketBrokerProfile } if o.Role.Vsys.Webui.Objects.ApplicationFilters != nil { nestedRole.Vsys.Webui.Objects.ApplicationFilters = o.Role.Vsys.Webui.Objects.ApplicationFilters } + if o.Role.Vsys.Webui.Objects.Authentication != nil { + nestedRole.Vsys.Webui.Objects.Authentication = o.Role.Vsys.Webui.Objects.Authentication + } if o.Role.Vsys.Webui.Objects.CustomObjects != nil { nestedRole.Vsys.Webui.Objects.CustomObjects = &RoleVsysWebuiObjectsCustomObjectsXml{} if _, ok := o.Misc["RoleVsysWebuiObjectsCustomObjects"]; ok { nestedRole.Vsys.Webui.Objects.CustomObjects.Misc = o.Misc["RoleVsysWebuiObjectsCustomObjects"] } - if o.Role.Vsys.Webui.Objects.CustomObjects.Vulnerability != nil { - nestedRole.Vsys.Webui.Objects.CustomObjects.Vulnerability = o.Role.Vsys.Webui.Objects.CustomObjects.Vulnerability - } if o.Role.Vsys.Webui.Objects.CustomObjects.DataPatterns != nil { nestedRole.Vsys.Webui.Objects.CustomObjects.DataPatterns = o.Role.Vsys.Webui.Objects.CustomObjects.DataPatterns } @@ -3977,13 +3929,61 @@ func specifyEntry(o *Entry) (any, error) { if o.Role.Vsys.Webui.Objects.CustomObjects.UrlCategory != nil { nestedRole.Vsys.Webui.Objects.CustomObjects.UrlCategory = o.Role.Vsys.Webui.Objects.CustomObjects.UrlCategory } + if o.Role.Vsys.Webui.Objects.CustomObjects.Vulnerability != nil { + nestedRole.Vsys.Webui.Objects.CustomObjects.Vulnerability = o.Role.Vsys.Webui.Objects.CustomObjects.Vulnerability + } } - if o.Role.Vsys.Webui.Objects.LogForwarding != nil { - nestedRole.Vsys.Webui.Objects.LogForwarding = o.Role.Vsys.Webui.Objects.LogForwarding + if o.Role.Vsys.Webui.Objects.DynamicBlockLists != nil { + nestedRole.Vsys.Webui.Objects.DynamicBlockLists = o.Role.Vsys.Webui.Objects.DynamicBlockLists } } - if o.Role.Vsys.Webui.Tasks != nil { - nestedRole.Vsys.Webui.Tasks = o.Role.Vsys.Webui.Tasks + if o.Role.Vsys.Webui.Privacy != nil { + nestedRole.Vsys.Webui.Privacy = &RoleVsysWebuiPrivacyXml{} + if _, ok := o.Misc["RoleVsysWebuiPrivacy"]; ok { + nestedRole.Vsys.Webui.Privacy.Misc = o.Misc["RoleVsysWebuiPrivacy"] + } + if o.Role.Vsys.Webui.Privacy.ShowFullIpAddresses != nil { + nestedRole.Vsys.Webui.Privacy.ShowFullIpAddresses = o.Role.Vsys.Webui.Privacy.ShowFullIpAddresses + } + if o.Role.Vsys.Webui.Privacy.ShowUserNamesInLogsAndReports != nil { + nestedRole.Vsys.Webui.Privacy.ShowUserNamesInLogsAndReports = o.Role.Vsys.Webui.Privacy.ShowUserNamesInLogsAndReports + } + if o.Role.Vsys.Webui.Privacy.ViewPcapFiles != nil { + nestedRole.Vsys.Webui.Privacy.ViewPcapFiles = o.Role.Vsys.Webui.Privacy.ViewPcapFiles + } + } + } + if o.Role.Vsys.Xmlapi != nil { + nestedRole.Vsys.Xmlapi = &RoleVsysXmlapiXml{} + if _, ok := o.Misc["RoleVsysXmlapi"]; ok { + nestedRole.Vsys.Xmlapi.Misc = o.Misc["RoleVsysXmlapi"] + } + if o.Role.Vsys.Xmlapi.Commit != nil { + nestedRole.Vsys.Xmlapi.Commit = o.Role.Vsys.Xmlapi.Commit + } + if o.Role.Vsys.Xmlapi.Config != nil { + nestedRole.Vsys.Xmlapi.Config = o.Role.Vsys.Xmlapi.Config + } + if o.Role.Vsys.Xmlapi.Import != nil { + nestedRole.Vsys.Xmlapi.Import = o.Role.Vsys.Xmlapi.Import + } + if o.Role.Vsys.Xmlapi.Iot != nil { + nestedRole.Vsys.Xmlapi.Iot = o.Role.Vsys.Xmlapi.Iot + } + if o.Role.Vsys.Xmlapi.Log != nil { + nestedRole.Vsys.Xmlapi.Log = o.Role.Vsys.Xmlapi.Log + } + if o.Role.Vsys.Xmlapi.Op != nil { + nestedRole.Vsys.Xmlapi.Op = o.Role.Vsys.Xmlapi.Op + } + if o.Role.Vsys.Xmlapi.Export != nil { + nestedRole.Vsys.Xmlapi.Export = o.Role.Vsys.Xmlapi.Export + } + if o.Role.Vsys.Xmlapi.Report != nil { + nestedRole.Vsys.Xmlapi.Report = o.Role.Vsys.Xmlapi.Report + } + if o.Role.Vsys.Xmlapi.UserId != nil { + nestedRole.Vsys.Xmlapi.UserId = o.Role.Vsys.Xmlapi.UserId } } } @@ -4022,310 +4022,310 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Role.Device.Restapi.Misc != nil { entry.Misc["RoleDeviceRestapi"] = o.Role.Device.Restapi.Misc } - if o.Role.Device.Restapi.System != nil { - nestedRole.Device.Restapi.System = &RoleDeviceRestapiSystem{} - if o.Role.Device.Restapi.System.Misc != nil { - entry.Misc["RoleDeviceRestapiSystem"] = o.Role.Device.Restapi.System.Misc + if o.Role.Device.Restapi.Objects != nil { + nestedRole.Device.Restapi.Objects = &RoleDeviceRestapiObjects{} + if o.Role.Device.Restapi.Objects.Misc != nil { + entry.Misc["RoleDeviceRestapiObjects"] = o.Role.Device.Restapi.Objects.Misc } - if o.Role.Device.Restapi.System.Configuration != nil { - nestedRole.Device.Restapi.System.Configuration = o.Role.Device.Restapi.System.Configuration + if o.Role.Device.Restapi.Objects.ExternalDynamicLists != nil { + nestedRole.Device.Restapi.Objects.ExternalDynamicLists = o.Role.Device.Restapi.Objects.ExternalDynamicLists } - } - if o.Role.Device.Restapi.Device != nil { - nestedRole.Device.Restapi.Device = &RoleDeviceRestapiDevice{} - if o.Role.Device.Restapi.Device.Misc != nil { - entry.Misc["RoleDeviceRestapiDevice"] = o.Role.Device.Restapi.Device.Misc + if o.Role.Device.Restapi.Objects.SecurityProfileGroups != nil { + nestedRole.Device.Restapi.Objects.SecurityProfileGroups = o.Role.Device.Restapi.Objects.SecurityProfileGroups } - if o.Role.Device.Restapi.Device.SyslogServerProfiles != nil { - nestedRole.Device.Restapi.Device.SyslogServerProfiles = o.Role.Device.Restapi.Device.SyslogServerProfiles + if o.Role.Device.Restapi.Objects.AddressGroups != nil { + nestedRole.Device.Restapi.Objects.AddressGroups = o.Role.Device.Restapi.Objects.AddressGroups } - if o.Role.Device.Restapi.Device.VirtualSystems != nil { - nestedRole.Device.Restapi.Device.VirtualSystems = o.Role.Device.Restapi.Device.VirtualSystems + if o.Role.Device.Restapi.Objects.AntivirusSecurityProfiles != nil { + nestedRole.Device.Restapi.Objects.AntivirusSecurityProfiles = o.Role.Device.Restapi.Objects.AntivirusSecurityProfiles } - if o.Role.Device.Restapi.Device.EmailServerProfiles != nil { - nestedRole.Device.Restapi.Device.EmailServerProfiles = o.Role.Device.Restapi.Device.EmailServerProfiles + if o.Role.Device.Restapi.Objects.AuthenticationEnforcements != nil { + nestedRole.Device.Restapi.Objects.AuthenticationEnforcements = o.Role.Device.Restapi.Objects.AuthenticationEnforcements } - if o.Role.Device.Restapi.Device.HttpServerProfiles != nil { - nestedRole.Device.Restapi.Device.HttpServerProfiles = o.Role.Device.Restapi.Device.HttpServerProfiles + if o.Role.Device.Restapi.Objects.FileBlockingSecurityProfiles != nil { + nestedRole.Device.Restapi.Objects.FileBlockingSecurityProfiles = o.Role.Device.Restapi.Objects.FileBlockingSecurityProfiles } - if o.Role.Device.Restapi.Device.LdapServerProfiles != nil { - nestedRole.Device.Restapi.Device.LdapServerProfiles = o.Role.Device.Restapi.Device.LdapServerProfiles + if o.Role.Device.Restapi.Objects.PacketBrokerProfiles != nil { + nestedRole.Device.Restapi.Objects.PacketBrokerProfiles = o.Role.Device.Restapi.Objects.PacketBrokerProfiles } - if o.Role.Device.Restapi.Device.LogInterfaceSetting != nil { - nestedRole.Device.Restapi.Device.LogInterfaceSetting = o.Role.Device.Restapi.Device.LogInterfaceSetting + if o.Role.Device.Restapi.Objects.Schedules != nil { + nestedRole.Device.Restapi.Objects.Schedules = o.Role.Device.Restapi.Objects.Schedules } - if o.Role.Device.Restapi.Device.SnmpTrapServerProfiles != nil { - nestedRole.Device.Restapi.Device.SnmpTrapServerProfiles = o.Role.Device.Restapi.Device.SnmpTrapServerProfiles + if o.Role.Device.Restapi.Objects.ServiceGroups != nil { + nestedRole.Device.Restapi.Objects.ServiceGroups = o.Role.Device.Restapi.Objects.ServiceGroups } - } - if o.Role.Device.Restapi.Network != nil { - nestedRole.Device.Restapi.Network = &RoleDeviceRestapiNetwork{} - if o.Role.Device.Restapi.Network.Misc != nil { - entry.Misc["RoleDeviceRestapiNetwork"] = o.Role.Device.Restapi.Network.Misc + if o.Role.Device.Restapi.Objects.Addresses != nil { + nestedRole.Device.Restapi.Objects.Addresses = o.Role.Device.Restapi.Objects.Addresses } - if o.Role.Device.Restapi.Network.BfdNetworkProfiles != nil { - nestedRole.Device.Restapi.Network.BfdNetworkProfiles = o.Role.Device.Restapi.Network.BfdNetworkProfiles + if o.Role.Device.Restapi.Objects.ApplicationFilters != nil { + nestedRole.Device.Restapi.Objects.ApplicationFilters = o.Role.Device.Restapi.Objects.ApplicationFilters } - if o.Role.Device.Restapi.Network.EthernetInterfaces != nil { - nestedRole.Device.Restapi.Network.EthernetInterfaces = o.Role.Device.Restapi.Network.EthernetInterfaces + if o.Role.Device.Restapi.Objects.CustomDataPatterns != nil { + nestedRole.Device.Restapi.Objects.CustomDataPatterns = o.Role.Device.Restapi.Objects.CustomDataPatterns } - if o.Role.Device.Restapi.Network.ZoneProtectionNetworkProfiles != nil { - nestedRole.Device.Restapi.Network.ZoneProtectionNetworkProfiles = o.Role.Device.Restapi.Network.ZoneProtectionNetworkProfiles + if o.Role.Device.Restapi.Objects.DataFilteringSecurityProfiles != nil { + nestedRole.Device.Restapi.Objects.DataFilteringSecurityProfiles = o.Role.Device.Restapi.Objects.DataFilteringSecurityProfiles } - if o.Role.Device.Restapi.Network.Zones != nil { - nestedRole.Device.Restapi.Network.Zones = o.Role.Device.Restapi.Network.Zones + if o.Role.Device.Restapi.Objects.GlobalprotectHipProfiles != nil { + nestedRole.Device.Restapi.Objects.GlobalprotectHipProfiles = o.Role.Device.Restapi.Objects.GlobalprotectHipProfiles } - if o.Role.Device.Restapi.Network.DhcpServers != nil { - nestedRole.Device.Restapi.Network.DhcpServers = o.Role.Device.Restapi.Network.DhcpServers + if o.Role.Device.Restapi.Objects.LogForwardingProfiles != nil { + nestedRole.Device.Restapi.Objects.LogForwardingProfiles = o.Role.Device.Restapi.Objects.LogForwardingProfiles } - if o.Role.Device.Restapi.Network.LldpNetworkProfiles != nil { - nestedRole.Device.Restapi.Network.LldpNetworkProfiles = o.Role.Device.Restapi.Network.LldpNetworkProfiles + if o.Role.Device.Restapi.Objects.SctpProtectionSecurityProfiles != nil { + nestedRole.Device.Restapi.Objects.SctpProtectionSecurityProfiles = o.Role.Device.Restapi.Objects.SctpProtectionSecurityProfiles } - if o.Role.Device.Restapi.Network.QosInterfaces != nil { - nestedRole.Device.Restapi.Network.QosInterfaces = o.Role.Device.Restapi.Network.QosInterfaces + if o.Role.Device.Restapi.Objects.SdwanSaasQualityProfiles != nil { + nestedRole.Device.Restapi.Objects.SdwanSaasQualityProfiles = o.Role.Device.Restapi.Objects.SdwanSaasQualityProfiles } - if o.Role.Device.Restapi.Network.SdwanInterfaces != nil { - nestedRole.Device.Restapi.Network.SdwanInterfaces = o.Role.Device.Restapi.Network.SdwanInterfaces + if o.Role.Device.Restapi.Objects.AntiSpywareSecurityProfiles != nil { + nestedRole.Device.Restapi.Objects.AntiSpywareSecurityProfiles = o.Role.Device.Restapi.Objects.AntiSpywareSecurityProfiles } - if o.Role.Device.Restapi.Network.VirtualRouters != nil { - nestedRole.Device.Restapi.Network.VirtualRouters = o.Role.Device.Restapi.Network.VirtualRouters + if o.Role.Device.Restapi.Objects.ApplicationGroups != nil { + nestedRole.Device.Restapi.Objects.ApplicationGroups = o.Role.Device.Restapi.Objects.ApplicationGroups } - if o.Role.Device.Restapi.Network.VlanInterfaces != nil { - nestedRole.Device.Restapi.Network.VlanInterfaces = o.Role.Device.Restapi.Network.VlanInterfaces + if o.Role.Device.Restapi.Objects.WildfireAnalysisSecurityProfiles != nil { + nestedRole.Device.Restapi.Objects.WildfireAnalysisSecurityProfiles = o.Role.Device.Restapi.Objects.WildfireAnalysisSecurityProfiles } - if o.Role.Device.Restapi.Network.Vlans != nil { - nestedRole.Device.Restapi.Network.Vlans = o.Role.Device.Restapi.Network.Vlans + if o.Role.Device.Restapi.Objects.DynamicUserGroups != nil { + nestedRole.Device.Restapi.Objects.DynamicUserGroups = o.Role.Device.Restapi.Objects.DynamicUserGroups } - if o.Role.Device.Restapi.Network.GlobalprotectIpsecCryptoNetworkProfiles != nil { - nestedRole.Device.Restapi.Network.GlobalprotectIpsecCryptoNetworkProfiles = o.Role.Device.Restapi.Network.GlobalprotectIpsecCryptoNetworkProfiles + if o.Role.Device.Restapi.Objects.UrlFilteringSecurityProfiles != nil { + nestedRole.Device.Restapi.Objects.UrlFilteringSecurityProfiles = o.Role.Device.Restapi.Objects.UrlFilteringSecurityProfiles } - if o.Role.Device.Restapi.Network.IpsecTunnels != nil { - nestedRole.Device.Restapi.Network.IpsecTunnels = o.Role.Device.Restapi.Network.IpsecTunnels + if o.Role.Device.Restapi.Objects.CustomSpywareSignatures != nil { + nestedRole.Device.Restapi.Objects.CustomSpywareSignatures = o.Role.Device.Restapi.Objects.CustomSpywareSignatures } - if o.Role.Device.Restapi.Network.IkeGatewayNetworkProfiles != nil { - nestedRole.Device.Restapi.Network.IkeGatewayNetworkProfiles = o.Role.Device.Restapi.Network.IkeGatewayNetworkProfiles + if o.Role.Device.Restapi.Objects.DecryptionProfiles != nil { + nestedRole.Device.Restapi.Objects.DecryptionProfiles = o.Role.Device.Restapi.Objects.DecryptionProfiles } - if o.Role.Device.Restapi.Network.IpsecCryptoNetworkProfiles != nil { - nestedRole.Device.Restapi.Network.IpsecCryptoNetworkProfiles = o.Role.Device.Restapi.Network.IpsecCryptoNetworkProfiles + if o.Role.Device.Restapi.Objects.SdwanPathQualityProfiles != nil { + nestedRole.Device.Restapi.Objects.SdwanPathQualityProfiles = o.Role.Device.Restapi.Objects.SdwanPathQualityProfiles } - if o.Role.Device.Restapi.Network.Lldp != nil { - nestedRole.Device.Restapi.Network.Lldp = o.Role.Device.Restapi.Network.Lldp + if o.Role.Device.Restapi.Objects.SdwanTrafficDistributionProfiles != nil { + nestedRole.Device.Restapi.Objects.SdwanTrafficDistributionProfiles = o.Role.Device.Restapi.Objects.SdwanTrafficDistributionProfiles } - if o.Role.Device.Restapi.Network.DnsProxies != nil { - nestedRole.Device.Restapi.Network.DnsProxies = o.Role.Device.Restapi.Network.DnsProxies + if o.Role.Device.Restapi.Objects.GlobalprotectHipObjects != nil { + nestedRole.Device.Restapi.Objects.GlobalprotectHipObjects = o.Role.Device.Restapi.Objects.GlobalprotectHipObjects } - if o.Role.Device.Restapi.Network.GlobalprotectGateways != nil { - nestedRole.Device.Restapi.Network.GlobalprotectGateways = o.Role.Device.Restapi.Network.GlobalprotectGateways + if o.Role.Device.Restapi.Objects.SdwanErrorCorrectionProfiles != nil { + nestedRole.Device.Restapi.Objects.SdwanErrorCorrectionProfiles = o.Role.Device.Restapi.Objects.SdwanErrorCorrectionProfiles } - if o.Role.Device.Restapi.Network.InterfaceManagementNetworkProfiles != nil { - nestedRole.Device.Restapi.Network.InterfaceManagementNetworkProfiles = o.Role.Device.Restapi.Network.InterfaceManagementNetworkProfiles + if o.Role.Device.Restapi.Objects.Services != nil { + nestedRole.Device.Restapi.Objects.Services = o.Role.Device.Restapi.Objects.Services } - if o.Role.Device.Restapi.Network.QosNetworkProfiles != nil { - nestedRole.Device.Restapi.Network.QosNetworkProfiles = o.Role.Device.Restapi.Network.QosNetworkProfiles + if o.Role.Device.Restapi.Objects.Tags != nil { + nestedRole.Device.Restapi.Objects.Tags = o.Role.Device.Restapi.Objects.Tags } - if o.Role.Device.Restapi.Network.DhcpRelays != nil { - nestedRole.Device.Restapi.Network.DhcpRelays = o.Role.Device.Restapi.Network.DhcpRelays + if o.Role.Device.Restapi.Objects.VulnerabilityProtectionSecurityProfiles != nil { + nestedRole.Device.Restapi.Objects.VulnerabilityProtectionSecurityProfiles = o.Role.Device.Restapi.Objects.VulnerabilityProtectionSecurityProfiles } - if o.Role.Device.Restapi.Network.GlobalprotectMdmServers != nil { - nestedRole.Device.Restapi.Network.GlobalprotectMdmServers = o.Role.Device.Restapi.Network.GlobalprotectMdmServers + if o.Role.Device.Restapi.Objects.Applications != nil { + nestedRole.Device.Restapi.Objects.Applications = o.Role.Device.Restapi.Objects.Applications } - if o.Role.Device.Restapi.Network.VirtualWires != nil { - nestedRole.Device.Restapi.Network.VirtualWires = o.Role.Device.Restapi.Network.VirtualWires + if o.Role.Device.Restapi.Objects.CustomVulnerabilitySignatures != nil { + nestedRole.Device.Restapi.Objects.CustomVulnerabilitySignatures = o.Role.Device.Restapi.Objects.CustomVulnerabilitySignatures } - if o.Role.Device.Restapi.Network.GlobalprotectClientlessAppGroups != nil { - nestedRole.Device.Restapi.Network.GlobalprotectClientlessAppGroups = o.Role.Device.Restapi.Network.GlobalprotectClientlessAppGroups + if o.Role.Device.Restapi.Objects.DosProtectionSecurityProfiles != nil { + nestedRole.Device.Restapi.Objects.DosProtectionSecurityProfiles = o.Role.Device.Restapi.Objects.DosProtectionSecurityProfiles } - if o.Role.Device.Restapi.Network.TunnelInterfaces != nil { - nestedRole.Device.Restapi.Network.TunnelInterfaces = o.Role.Device.Restapi.Network.TunnelInterfaces + if o.Role.Device.Restapi.Objects.GtpProtectionSecurityProfiles != nil { + nestedRole.Device.Restapi.Objects.GtpProtectionSecurityProfiles = o.Role.Device.Restapi.Objects.GtpProtectionSecurityProfiles } - if o.Role.Device.Restapi.Network.GreTunnels != nil { - nestedRole.Device.Restapi.Network.GreTunnels = o.Role.Device.Restapi.Network.GreTunnels + if o.Role.Device.Restapi.Objects.Regions != nil { + nestedRole.Device.Restapi.Objects.Regions = o.Role.Device.Restapi.Objects.Regions } - if o.Role.Device.Restapi.Network.IkeCryptoNetworkProfiles != nil { - nestedRole.Device.Restapi.Network.IkeCryptoNetworkProfiles = o.Role.Device.Restapi.Network.IkeCryptoNetworkProfiles + if o.Role.Device.Restapi.Objects.CustomUrlCategories != nil { + nestedRole.Device.Restapi.Objects.CustomUrlCategories = o.Role.Device.Restapi.Objects.CustomUrlCategories } - if o.Role.Device.Restapi.Network.LogicalRouters != nil { - nestedRole.Device.Restapi.Network.LogicalRouters = o.Role.Device.Restapi.Network.LogicalRouters + if o.Role.Device.Restapi.Objects.Devices != nil { + nestedRole.Device.Restapi.Objects.Devices = o.Role.Device.Restapi.Objects.Devices } - if o.Role.Device.Restapi.Network.LoopbackInterfaces != nil { - nestedRole.Device.Restapi.Network.LoopbackInterfaces = o.Role.Device.Restapi.Network.LoopbackInterfaces + } + if o.Role.Device.Restapi.Policies != nil { + nestedRole.Device.Restapi.Policies = &RoleDeviceRestapiPolicies{} + if o.Role.Device.Restapi.Policies.Misc != nil { + entry.Misc["RoleDeviceRestapiPolicies"] = o.Role.Device.Restapi.Policies.Misc } - if o.Role.Device.Restapi.Network.SdwanInterfaceProfiles != nil { - nestedRole.Device.Restapi.Network.SdwanInterfaceProfiles = o.Role.Device.Restapi.Network.SdwanInterfaceProfiles + if o.Role.Device.Restapi.Policies.AuthenticationRules != nil { + nestedRole.Device.Restapi.Policies.AuthenticationRules = o.Role.Device.Restapi.Policies.AuthenticationRules } - if o.Role.Device.Restapi.Network.BgpRoutingProfiles != nil { - nestedRole.Device.Restapi.Network.BgpRoutingProfiles = o.Role.Device.Restapi.Network.BgpRoutingProfiles + if o.Role.Device.Restapi.Policies.DosRules != nil { + nestedRole.Device.Restapi.Policies.DosRules = o.Role.Device.Restapi.Policies.DosRules } - if o.Role.Device.Restapi.Network.GlobalprotectClientlessApps != nil { - nestedRole.Device.Restapi.Network.GlobalprotectClientlessApps = o.Role.Device.Restapi.Network.GlobalprotectClientlessApps + if o.Role.Device.Restapi.Policies.NatRules != nil { + nestedRole.Device.Restapi.Policies.NatRules = o.Role.Device.Restapi.Policies.NatRules } - if o.Role.Device.Restapi.Network.TunnelMonitorNetworkProfiles != nil { - nestedRole.Device.Restapi.Network.TunnelMonitorNetworkProfiles = o.Role.Device.Restapi.Network.TunnelMonitorNetworkProfiles + if o.Role.Device.Restapi.Policies.NetworkPacketBrokerRules != nil { + nestedRole.Device.Restapi.Policies.NetworkPacketBrokerRules = o.Role.Device.Restapi.Policies.NetworkPacketBrokerRules } - if o.Role.Device.Restapi.Network.AggregateEthernetInterfaces != nil { - nestedRole.Device.Restapi.Network.AggregateEthernetInterfaces = o.Role.Device.Restapi.Network.AggregateEthernetInterfaces + if o.Role.Device.Restapi.Policies.TunnelInspectionRules != nil { + nestedRole.Device.Restapi.Policies.TunnelInspectionRules = o.Role.Device.Restapi.Policies.TunnelInspectionRules } - if o.Role.Device.Restapi.Network.GlobalprotectPortals != nil { - nestedRole.Device.Restapi.Network.GlobalprotectPortals = o.Role.Device.Restapi.Network.GlobalprotectPortals + if o.Role.Device.Restapi.Policies.SecurityRules != nil { + nestedRole.Device.Restapi.Policies.SecurityRules = o.Role.Device.Restapi.Policies.SecurityRules } - } - if o.Role.Device.Restapi.Objects != nil { - nestedRole.Device.Restapi.Objects = &RoleDeviceRestapiObjects{} - if o.Role.Device.Restapi.Objects.Misc != nil { - entry.Misc["RoleDeviceRestapiObjects"] = o.Role.Device.Restapi.Objects.Misc + if o.Role.Device.Restapi.Policies.ApplicationOverrideRules != nil { + nestedRole.Device.Restapi.Policies.ApplicationOverrideRules = o.Role.Device.Restapi.Policies.ApplicationOverrideRules } - if o.Role.Device.Restapi.Objects.AddressGroups != nil { - nestedRole.Device.Restapi.Objects.AddressGroups = o.Role.Device.Restapi.Objects.AddressGroups + if o.Role.Device.Restapi.Policies.DecryptionRules != nil { + nestedRole.Device.Restapi.Policies.DecryptionRules = o.Role.Device.Restapi.Policies.DecryptionRules } - if o.Role.Device.Restapi.Objects.DataFilteringSecurityProfiles != nil { - nestedRole.Device.Restapi.Objects.DataFilteringSecurityProfiles = o.Role.Device.Restapi.Objects.DataFilteringSecurityProfiles + if o.Role.Device.Restapi.Policies.PolicyBasedForwardingRules != nil { + nestedRole.Device.Restapi.Policies.PolicyBasedForwardingRules = o.Role.Device.Restapi.Policies.PolicyBasedForwardingRules } - if o.Role.Device.Restapi.Objects.SdwanErrorCorrectionProfiles != nil { - nestedRole.Device.Restapi.Objects.SdwanErrorCorrectionProfiles = o.Role.Device.Restapi.Objects.SdwanErrorCorrectionProfiles + if o.Role.Device.Restapi.Policies.QosRules != nil { + nestedRole.Device.Restapi.Policies.QosRules = o.Role.Device.Restapi.Policies.QosRules } - if o.Role.Device.Restapi.Objects.VulnerabilityProtectionSecurityProfiles != nil { - nestedRole.Device.Restapi.Objects.VulnerabilityProtectionSecurityProfiles = o.Role.Device.Restapi.Objects.VulnerabilityProtectionSecurityProfiles + if o.Role.Device.Restapi.Policies.SdwanRules != nil { + nestedRole.Device.Restapi.Policies.SdwanRules = o.Role.Device.Restapi.Policies.SdwanRules } - if o.Role.Device.Restapi.Objects.ApplicationGroups != nil { - nestedRole.Device.Restapi.Objects.ApplicationGroups = o.Role.Device.Restapi.Objects.ApplicationGroups + } + if o.Role.Device.Restapi.System != nil { + nestedRole.Device.Restapi.System = &RoleDeviceRestapiSystem{} + if o.Role.Device.Restapi.System.Misc != nil { + entry.Misc["RoleDeviceRestapiSystem"] = o.Role.Device.Restapi.System.Misc } - if o.Role.Device.Restapi.Objects.FileBlockingSecurityProfiles != nil { - nestedRole.Device.Restapi.Objects.FileBlockingSecurityProfiles = o.Role.Device.Restapi.Objects.FileBlockingSecurityProfiles + if o.Role.Device.Restapi.System.Configuration != nil { + nestedRole.Device.Restapi.System.Configuration = o.Role.Device.Restapi.System.Configuration } - if o.Role.Device.Restapi.Objects.GlobalprotectHipProfiles != nil { - nestedRole.Device.Restapi.Objects.GlobalprotectHipProfiles = o.Role.Device.Restapi.Objects.GlobalprotectHipProfiles + } + if o.Role.Device.Restapi.Device != nil { + nestedRole.Device.Restapi.Device = &RoleDeviceRestapiDevice{} + if o.Role.Device.Restapi.Device.Misc != nil { + entry.Misc["RoleDeviceRestapiDevice"] = o.Role.Device.Restapi.Device.Misc } - if o.Role.Device.Restapi.Objects.LogForwardingProfiles != nil { - nestedRole.Device.Restapi.Objects.LogForwardingProfiles = o.Role.Device.Restapi.Objects.LogForwardingProfiles + if o.Role.Device.Restapi.Device.LogInterfaceSetting != nil { + nestedRole.Device.Restapi.Device.LogInterfaceSetting = o.Role.Device.Restapi.Device.LogInterfaceSetting } - if o.Role.Device.Restapi.Objects.SctpProtectionSecurityProfiles != nil { - nestedRole.Device.Restapi.Objects.SctpProtectionSecurityProfiles = o.Role.Device.Restapi.Objects.SctpProtectionSecurityProfiles + if o.Role.Device.Restapi.Device.SnmpTrapServerProfiles != nil { + nestedRole.Device.Restapi.Device.SnmpTrapServerProfiles = o.Role.Device.Restapi.Device.SnmpTrapServerProfiles } - if o.Role.Device.Restapi.Objects.WildfireAnalysisSecurityProfiles != nil { - nestedRole.Device.Restapi.Objects.WildfireAnalysisSecurityProfiles = o.Role.Device.Restapi.Objects.WildfireAnalysisSecurityProfiles + if o.Role.Device.Restapi.Device.SyslogServerProfiles != nil { + nestedRole.Device.Restapi.Device.SyslogServerProfiles = o.Role.Device.Restapi.Device.SyslogServerProfiles } - if o.Role.Device.Restapi.Objects.Applications != nil { - nestedRole.Device.Restapi.Objects.Applications = o.Role.Device.Restapi.Objects.Applications + if o.Role.Device.Restapi.Device.VirtualSystems != nil { + nestedRole.Device.Restapi.Device.VirtualSystems = o.Role.Device.Restapi.Device.VirtualSystems } - if o.Role.Device.Restapi.Objects.CustomDataPatterns != nil { - nestedRole.Device.Restapi.Objects.CustomDataPatterns = o.Role.Device.Restapi.Objects.CustomDataPatterns + if o.Role.Device.Restapi.Device.EmailServerProfiles != nil { + nestedRole.Device.Restapi.Device.EmailServerProfiles = o.Role.Device.Restapi.Device.EmailServerProfiles } - if o.Role.Device.Restapi.Objects.CustomVulnerabilitySignatures != nil { - nestedRole.Device.Restapi.Objects.CustomVulnerabilitySignatures = o.Role.Device.Restapi.Objects.CustomVulnerabilitySignatures + if o.Role.Device.Restapi.Device.HttpServerProfiles != nil { + nestedRole.Device.Restapi.Device.HttpServerProfiles = o.Role.Device.Restapi.Device.HttpServerProfiles } - if o.Role.Device.Restapi.Objects.GtpProtectionSecurityProfiles != nil { - nestedRole.Device.Restapi.Objects.GtpProtectionSecurityProfiles = o.Role.Device.Restapi.Objects.GtpProtectionSecurityProfiles + if o.Role.Device.Restapi.Device.LdapServerProfiles != nil { + nestedRole.Device.Restapi.Device.LdapServerProfiles = o.Role.Device.Restapi.Device.LdapServerProfiles } - if o.Role.Device.Restapi.Objects.SdwanSaasQualityProfiles != nil { - nestedRole.Device.Restapi.Objects.SdwanSaasQualityProfiles = o.Role.Device.Restapi.Objects.SdwanSaasQualityProfiles + } + if o.Role.Device.Restapi.Network != nil { + nestedRole.Device.Restapi.Network = &RoleDeviceRestapiNetwork{} + if o.Role.Device.Restapi.Network.Misc != nil { + entry.Misc["RoleDeviceRestapiNetwork"] = o.Role.Device.Restapi.Network.Misc } - if o.Role.Device.Restapi.Objects.SecurityProfileGroups != nil { - nestedRole.Device.Restapi.Objects.SecurityProfileGroups = o.Role.Device.Restapi.Objects.SecurityProfileGroups + if o.Role.Device.Restapi.Network.Lldp != nil { + nestedRole.Device.Restapi.Network.Lldp = o.Role.Device.Restapi.Network.Lldp } - if o.Role.Device.Restapi.Objects.AuthenticationEnforcements != nil { - nestedRole.Device.Restapi.Objects.AuthenticationEnforcements = o.Role.Device.Restapi.Objects.AuthenticationEnforcements + if o.Role.Device.Restapi.Network.TunnelMonitorNetworkProfiles != nil { + nestedRole.Device.Restapi.Network.TunnelMonitorNetworkProfiles = o.Role.Device.Restapi.Network.TunnelMonitorNetworkProfiles } - if o.Role.Device.Restapi.Objects.Schedules != nil { - nestedRole.Device.Restapi.Objects.Schedules = o.Role.Device.Restapi.Objects.Schedules + if o.Role.Device.Restapi.Network.BgpRoutingProfiles != nil { + nestedRole.Device.Restapi.Network.BgpRoutingProfiles = o.Role.Device.Restapi.Network.BgpRoutingProfiles } - if o.Role.Device.Restapi.Objects.UrlFilteringSecurityProfiles != nil { - nestedRole.Device.Restapi.Objects.UrlFilteringSecurityProfiles = o.Role.Device.Restapi.Objects.UrlFilteringSecurityProfiles + if o.Role.Device.Restapi.Network.GlobalprotectPortals != nil { + nestedRole.Device.Restapi.Network.GlobalprotectPortals = o.Role.Device.Restapi.Network.GlobalprotectPortals } - if o.Role.Device.Restapi.Objects.GlobalprotectHipObjects != nil { - nestedRole.Device.Restapi.Objects.GlobalprotectHipObjects = o.Role.Device.Restapi.Objects.GlobalprotectHipObjects + if o.Role.Device.Restapi.Network.IkeGatewayNetworkProfiles != nil { + nestedRole.Device.Restapi.Network.IkeGatewayNetworkProfiles = o.Role.Device.Restapi.Network.IkeGatewayNetworkProfiles } - if o.Role.Device.Restapi.Objects.PacketBrokerProfiles != nil { - nestedRole.Device.Restapi.Objects.PacketBrokerProfiles = o.Role.Device.Restapi.Objects.PacketBrokerProfiles + if o.Role.Device.Restapi.Network.IpsecCryptoNetworkProfiles != nil { + nestedRole.Device.Restapi.Network.IpsecCryptoNetworkProfiles = o.Role.Device.Restapi.Network.IpsecCryptoNetworkProfiles } - if o.Role.Device.Restapi.Objects.Regions != nil { - nestedRole.Device.Restapi.Objects.Regions = o.Role.Device.Restapi.Objects.Regions + if o.Role.Device.Restapi.Network.QosNetworkProfiles != nil { + nestedRole.Device.Restapi.Network.QosNetworkProfiles = o.Role.Device.Restapi.Network.QosNetworkProfiles } - if o.Role.Device.Restapi.Objects.Services != nil { - nestedRole.Device.Restapi.Objects.Services = o.Role.Device.Restapi.Objects.Services + if o.Role.Device.Restapi.Network.DhcpServers != nil { + nestedRole.Device.Restapi.Network.DhcpServers = o.Role.Device.Restapi.Network.DhcpServers } - if o.Role.Device.Restapi.Objects.ExternalDynamicLists != nil { - nestedRole.Device.Restapi.Objects.ExternalDynamicLists = o.Role.Device.Restapi.Objects.ExternalDynamicLists + if o.Role.Device.Restapi.Network.DnsProxies != nil { + nestedRole.Device.Restapi.Network.DnsProxies = o.Role.Device.Restapi.Network.DnsProxies } - if o.Role.Device.Restapi.Objects.ServiceGroups != nil { - nestedRole.Device.Restapi.Objects.ServiceGroups = o.Role.Device.Restapi.Objects.ServiceGroups + if o.Role.Device.Restapi.Network.EthernetInterfaces != nil { + nestedRole.Device.Restapi.Network.EthernetInterfaces = o.Role.Device.Restapi.Network.EthernetInterfaces } - if o.Role.Device.Restapi.Objects.Addresses != nil { - nestedRole.Device.Restapi.Objects.Addresses = o.Role.Device.Restapi.Objects.Addresses + if o.Role.Device.Restapi.Network.GlobalprotectClientlessApps != nil { + nestedRole.Device.Restapi.Network.GlobalprotectClientlessApps = o.Role.Device.Restapi.Network.GlobalprotectClientlessApps } - if o.Role.Device.Restapi.Objects.AntiSpywareSecurityProfiles != nil { - nestedRole.Device.Restapi.Objects.AntiSpywareSecurityProfiles = o.Role.Device.Restapi.Objects.AntiSpywareSecurityProfiles + if o.Role.Device.Restapi.Network.SdwanInterfaceProfiles != nil { + nestedRole.Device.Restapi.Network.SdwanInterfaceProfiles = o.Role.Device.Restapi.Network.SdwanInterfaceProfiles } - if o.Role.Device.Restapi.Objects.AntivirusSecurityProfiles != nil { - nestedRole.Device.Restapi.Objects.AntivirusSecurityProfiles = o.Role.Device.Restapi.Objects.AntivirusSecurityProfiles + if o.Role.Device.Restapi.Network.DhcpRelays != nil { + nestedRole.Device.Restapi.Network.DhcpRelays = o.Role.Device.Restapi.Network.DhcpRelays } - if o.Role.Device.Restapi.Objects.CustomSpywareSignatures != nil { - nestedRole.Device.Restapi.Objects.CustomSpywareSignatures = o.Role.Device.Restapi.Objects.CustomSpywareSignatures + if o.Role.Device.Restapi.Network.LogicalRouters != nil { + nestedRole.Device.Restapi.Network.LogicalRouters = o.Role.Device.Restapi.Network.LogicalRouters } - if o.Role.Device.Restapi.Objects.DecryptionProfiles != nil { - nestedRole.Device.Restapi.Objects.DecryptionProfiles = o.Role.Device.Restapi.Objects.DecryptionProfiles + if o.Role.Device.Restapi.Network.Vlans != nil { + nestedRole.Device.Restapi.Network.Vlans = o.Role.Device.Restapi.Network.Vlans } - if o.Role.Device.Restapi.Objects.Devices != nil { - nestedRole.Device.Restapi.Objects.Devices = o.Role.Device.Restapi.Objects.Devices + if o.Role.Device.Restapi.Network.AggregateEthernetInterfaces != nil { + nestedRole.Device.Restapi.Network.AggregateEthernetInterfaces = o.Role.Device.Restapi.Network.AggregateEthernetInterfaces } - if o.Role.Device.Restapi.Objects.Tags != nil { - nestedRole.Device.Restapi.Objects.Tags = o.Role.Device.Restapi.Objects.Tags + if o.Role.Device.Restapi.Network.GlobalprotectIpsecCryptoNetworkProfiles != nil { + nestedRole.Device.Restapi.Network.GlobalprotectIpsecCryptoNetworkProfiles = o.Role.Device.Restapi.Network.GlobalprotectIpsecCryptoNetworkProfiles } - if o.Role.Device.Restapi.Objects.ApplicationFilters != nil { - nestedRole.Device.Restapi.Objects.ApplicationFilters = o.Role.Device.Restapi.Objects.ApplicationFilters + if o.Role.Device.Restapi.Network.LoopbackInterfaces != nil { + nestedRole.Device.Restapi.Network.LoopbackInterfaces = o.Role.Device.Restapi.Network.LoopbackInterfaces } - if o.Role.Device.Restapi.Objects.CustomUrlCategories != nil { - nestedRole.Device.Restapi.Objects.CustomUrlCategories = o.Role.Device.Restapi.Objects.CustomUrlCategories + if o.Role.Device.Restapi.Network.QosInterfaces != nil { + nestedRole.Device.Restapi.Network.QosInterfaces = o.Role.Device.Restapi.Network.QosInterfaces } - if o.Role.Device.Restapi.Objects.DynamicUserGroups != nil { - nestedRole.Device.Restapi.Objects.DynamicUserGroups = o.Role.Device.Restapi.Objects.DynamicUserGroups + if o.Role.Device.Restapi.Network.SdwanInterfaces != nil { + nestedRole.Device.Restapi.Network.SdwanInterfaces = o.Role.Device.Restapi.Network.SdwanInterfaces } - if o.Role.Device.Restapi.Objects.SdwanPathQualityProfiles != nil { - nestedRole.Device.Restapi.Objects.SdwanPathQualityProfiles = o.Role.Device.Restapi.Objects.SdwanPathQualityProfiles + if o.Role.Device.Restapi.Network.VlanInterfaces != nil { + nestedRole.Device.Restapi.Network.VlanInterfaces = o.Role.Device.Restapi.Network.VlanInterfaces } - if o.Role.Device.Restapi.Objects.SdwanTrafficDistributionProfiles != nil { - nestedRole.Device.Restapi.Objects.SdwanTrafficDistributionProfiles = o.Role.Device.Restapi.Objects.SdwanTrafficDistributionProfiles + if o.Role.Device.Restapi.Network.Zones != nil { + nestedRole.Device.Restapi.Network.Zones = o.Role.Device.Restapi.Network.Zones } - if o.Role.Device.Restapi.Objects.DosProtectionSecurityProfiles != nil { - nestedRole.Device.Restapi.Objects.DosProtectionSecurityProfiles = o.Role.Device.Restapi.Objects.DosProtectionSecurityProfiles + if o.Role.Device.Restapi.Network.BfdNetworkProfiles != nil { + nestedRole.Device.Restapi.Network.BfdNetworkProfiles = o.Role.Device.Restapi.Network.BfdNetworkProfiles } - } - if o.Role.Device.Restapi.Policies != nil { - nestedRole.Device.Restapi.Policies = &RoleDeviceRestapiPolicies{} - if o.Role.Device.Restapi.Policies.Misc != nil { - entry.Misc["RoleDeviceRestapiPolicies"] = o.Role.Device.Restapi.Policies.Misc + if o.Role.Device.Restapi.Network.GreTunnels != nil { + nestedRole.Device.Restapi.Network.GreTunnels = o.Role.Device.Restapi.Network.GreTunnels } - if o.Role.Device.Restapi.Policies.ApplicationOverrideRules != nil { - nestedRole.Device.Restapi.Policies.ApplicationOverrideRules = o.Role.Device.Restapi.Policies.ApplicationOverrideRules + if o.Role.Device.Restapi.Network.IkeCryptoNetworkProfiles != nil { + nestedRole.Device.Restapi.Network.IkeCryptoNetworkProfiles = o.Role.Device.Restapi.Network.IkeCryptoNetworkProfiles } - if o.Role.Device.Restapi.Policies.AuthenticationRules != nil { - nestedRole.Device.Restapi.Policies.AuthenticationRules = o.Role.Device.Restapi.Policies.AuthenticationRules + if o.Role.Device.Restapi.Network.IpsecTunnels != nil { + nestedRole.Device.Restapi.Network.IpsecTunnels = o.Role.Device.Restapi.Network.IpsecTunnels } - if o.Role.Device.Restapi.Policies.NatRules != nil { - nestedRole.Device.Restapi.Policies.NatRules = o.Role.Device.Restapi.Policies.NatRules + if o.Role.Device.Restapi.Network.LldpNetworkProfiles != nil { + nestedRole.Device.Restapi.Network.LldpNetworkProfiles = o.Role.Device.Restapi.Network.LldpNetworkProfiles } - if o.Role.Device.Restapi.Policies.PolicyBasedForwardingRules != nil { - nestedRole.Device.Restapi.Policies.PolicyBasedForwardingRules = o.Role.Device.Restapi.Policies.PolicyBasedForwardingRules + if o.Role.Device.Restapi.Network.GlobalprotectClientlessAppGroups != nil { + nestedRole.Device.Restapi.Network.GlobalprotectClientlessAppGroups = o.Role.Device.Restapi.Network.GlobalprotectClientlessAppGroups } - if o.Role.Device.Restapi.Policies.QosRules != nil { - nestedRole.Device.Restapi.Policies.QosRules = o.Role.Device.Restapi.Policies.QosRules + if o.Role.Device.Restapi.Network.GlobalprotectGateways != nil { + nestedRole.Device.Restapi.Network.GlobalprotectGateways = o.Role.Device.Restapi.Network.GlobalprotectGateways } - if o.Role.Device.Restapi.Policies.DecryptionRules != nil { - nestedRole.Device.Restapi.Policies.DecryptionRules = o.Role.Device.Restapi.Policies.DecryptionRules + if o.Role.Device.Restapi.Network.GlobalprotectMdmServers != nil { + nestedRole.Device.Restapi.Network.GlobalprotectMdmServers = o.Role.Device.Restapi.Network.GlobalprotectMdmServers } - if o.Role.Device.Restapi.Policies.DosRules != nil { - nestedRole.Device.Restapi.Policies.DosRules = o.Role.Device.Restapi.Policies.DosRules + if o.Role.Device.Restapi.Network.InterfaceManagementNetworkProfiles != nil { + nestedRole.Device.Restapi.Network.InterfaceManagementNetworkProfiles = o.Role.Device.Restapi.Network.InterfaceManagementNetworkProfiles } - if o.Role.Device.Restapi.Policies.NetworkPacketBrokerRules != nil { - nestedRole.Device.Restapi.Policies.NetworkPacketBrokerRules = o.Role.Device.Restapi.Policies.NetworkPacketBrokerRules + if o.Role.Device.Restapi.Network.TunnelInterfaces != nil { + nestedRole.Device.Restapi.Network.TunnelInterfaces = o.Role.Device.Restapi.Network.TunnelInterfaces } - if o.Role.Device.Restapi.Policies.SdwanRules != nil { - nestedRole.Device.Restapi.Policies.SdwanRules = o.Role.Device.Restapi.Policies.SdwanRules + if o.Role.Device.Restapi.Network.VirtualRouters != nil { + nestedRole.Device.Restapi.Network.VirtualRouters = o.Role.Device.Restapi.Network.VirtualRouters } - if o.Role.Device.Restapi.Policies.SecurityRules != nil { - nestedRole.Device.Restapi.Policies.SecurityRules = o.Role.Device.Restapi.Policies.SecurityRules + if o.Role.Device.Restapi.Network.VirtualWires != nil { + nestedRole.Device.Restapi.Network.VirtualWires = o.Role.Device.Restapi.Network.VirtualWires } - if o.Role.Device.Restapi.Policies.TunnelInspectionRules != nil { - nestedRole.Device.Restapi.Policies.TunnelInspectionRules = o.Role.Device.Restapi.Policies.TunnelInspectionRules + if o.Role.Device.Restapi.Network.ZoneProtectionNetworkProfiles != nil { + nestedRole.Device.Restapi.Network.ZoneProtectionNetworkProfiles = o.Role.Device.Restapi.Network.ZoneProtectionNetworkProfiles } } } @@ -4334,241 +4334,262 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Role.Device.Webui.Misc != nil { entry.Misc["RoleDeviceWebui"] = o.Role.Device.Webui.Misc } - if o.Role.Device.Webui.Dashboard != nil { - nestedRole.Device.Webui.Dashboard = o.Role.Device.Webui.Dashboard - } - if o.Role.Device.Webui.Network != nil { - nestedRole.Device.Webui.Network = &RoleDeviceWebuiNetwork{} - if o.Role.Device.Webui.Network.Misc != nil { - entry.Misc["RoleDeviceWebuiNetwork"] = o.Role.Device.Webui.Network.Misc + if o.Role.Device.Webui.Commit != nil { + nestedRole.Device.Webui.Commit = &RoleDeviceWebuiCommit{} + if o.Role.Device.Webui.Commit.Misc != nil { + entry.Misc["RoleDeviceWebuiCommit"] = o.Role.Device.Webui.Commit.Misc } - if o.Role.Device.Webui.Network.SecureWebGateway != nil { - nestedRole.Device.Webui.Network.SecureWebGateway = o.Role.Device.Webui.Network.SecureWebGateway + if o.Role.Device.Webui.Commit.CommitForOtherAdmins != nil { + nestedRole.Device.Webui.Commit.CommitForOtherAdmins = o.Role.Device.Webui.Commit.CommitForOtherAdmins } - if o.Role.Device.Webui.Network.DnsProxy != nil { - nestedRole.Device.Webui.Network.DnsProxy = o.Role.Device.Webui.Network.DnsProxy + if o.Role.Device.Webui.Commit.Device != nil { + nestedRole.Device.Webui.Commit.Device = o.Role.Device.Webui.Commit.Device } - if o.Role.Device.Webui.Network.Interfaces != nil { - nestedRole.Device.Webui.Network.Interfaces = o.Role.Device.Webui.Network.Interfaces + if o.Role.Device.Webui.Commit.ObjectLevelChanges != nil { + nestedRole.Device.Webui.Commit.ObjectLevelChanges = o.Role.Device.Webui.Commit.ObjectLevelChanges } - if o.Role.Device.Webui.Network.Routing != nil { - nestedRole.Device.Webui.Network.Routing = &RoleDeviceWebuiNetworkRouting{} - if o.Role.Device.Webui.Network.Routing.Misc != nil { - entry.Misc["RoleDeviceWebuiNetworkRouting"] = o.Role.Device.Webui.Network.Routing.Misc - } - if o.Role.Device.Webui.Network.Routing.LogicalRouters != nil { - nestedRole.Device.Webui.Network.Routing.LogicalRouters = o.Role.Device.Webui.Network.Routing.LogicalRouters - } - if o.Role.Device.Webui.Network.Routing.RoutingProfiles != nil { - nestedRole.Device.Webui.Network.Routing.RoutingProfiles = &RoleDeviceWebuiNetworkRoutingRoutingProfiles{} - if o.Role.Device.Webui.Network.Routing.RoutingProfiles.Misc != nil { - entry.Misc["RoleDeviceWebuiNetworkRoutingRoutingProfiles"] = o.Role.Device.Webui.Network.Routing.RoutingProfiles.Misc - } - if o.Role.Device.Webui.Network.Routing.RoutingProfiles.Ripv2 != nil { - nestedRole.Device.Webui.Network.Routing.RoutingProfiles.Ripv2 = o.Role.Device.Webui.Network.Routing.RoutingProfiles.Ripv2 - } - if o.Role.Device.Webui.Network.Routing.RoutingProfiles.Bfd != nil { - nestedRole.Device.Webui.Network.Routing.RoutingProfiles.Bfd = o.Role.Device.Webui.Network.Routing.RoutingProfiles.Bfd - } - if o.Role.Device.Webui.Network.Routing.RoutingProfiles.Bgp != nil { - nestedRole.Device.Webui.Network.Routing.RoutingProfiles.Bgp = o.Role.Device.Webui.Network.Routing.RoutingProfiles.Bgp - } - if o.Role.Device.Webui.Network.Routing.RoutingProfiles.Filters != nil { - nestedRole.Device.Webui.Network.Routing.RoutingProfiles.Filters = o.Role.Device.Webui.Network.Routing.RoutingProfiles.Filters - } - if o.Role.Device.Webui.Network.Routing.RoutingProfiles.Multicast != nil { - nestedRole.Device.Webui.Network.Routing.RoutingProfiles.Multicast = o.Role.Device.Webui.Network.Routing.RoutingProfiles.Multicast - } - if o.Role.Device.Webui.Network.Routing.RoutingProfiles.Ospf != nil { - nestedRole.Device.Webui.Network.Routing.RoutingProfiles.Ospf = o.Role.Device.Webui.Network.Routing.RoutingProfiles.Ospf - } - if o.Role.Device.Webui.Network.Routing.RoutingProfiles.Ospfv3 != nil { - nestedRole.Device.Webui.Network.Routing.RoutingProfiles.Ospfv3 = o.Role.Device.Webui.Network.Routing.RoutingProfiles.Ospfv3 - } - } + } + if o.Role.Device.Webui.Device != nil { + nestedRole.Device.Webui.Device = &RoleDeviceWebuiDevice{} + if o.Role.Device.Webui.Device.Misc != nil { + entry.Misc["RoleDeviceWebuiDevice"] = o.Role.Device.Webui.Device.Misc } - if o.Role.Device.Webui.Network.VirtualRouters != nil { - nestedRole.Device.Webui.Network.VirtualRouters = o.Role.Device.Webui.Network.VirtualRouters + if o.Role.Device.Webui.Device.GlobalProtectClient != nil { + nestedRole.Device.Webui.Device.GlobalProtectClient = o.Role.Device.Webui.Device.GlobalProtectClient } - if o.Role.Device.Webui.Network.VirtualWires != nil { - nestedRole.Device.Webui.Network.VirtualWires = o.Role.Device.Webui.Network.VirtualWires + if o.Role.Device.Webui.Device.BlockPages != nil { + nestedRole.Device.Webui.Device.BlockPages = o.Role.Device.Webui.Device.BlockPages } - if o.Role.Device.Webui.Network.GlobalProtect != nil { - nestedRole.Device.Webui.Network.GlobalProtect = &RoleDeviceWebuiNetworkGlobalProtect{} - if o.Role.Device.Webui.Network.GlobalProtect.Misc != nil { - entry.Misc["RoleDeviceWebuiNetworkGlobalProtect"] = o.Role.Device.Webui.Network.GlobalProtect.Misc - } - if o.Role.Device.Webui.Network.GlobalProtect.ClientlessAppGroups != nil { - nestedRole.Device.Webui.Network.GlobalProtect.ClientlessAppGroups = o.Role.Device.Webui.Network.GlobalProtect.ClientlessAppGroups - } - if o.Role.Device.Webui.Network.GlobalProtect.ClientlessApps != nil { - nestedRole.Device.Webui.Network.GlobalProtect.ClientlessApps = o.Role.Device.Webui.Network.GlobalProtect.ClientlessApps - } - if o.Role.Device.Webui.Network.GlobalProtect.Gateways != nil { - nestedRole.Device.Webui.Network.GlobalProtect.Gateways = o.Role.Device.Webui.Network.GlobalProtect.Gateways - } - if o.Role.Device.Webui.Network.GlobalProtect.Mdm != nil { - nestedRole.Device.Webui.Network.GlobalProtect.Mdm = o.Role.Device.Webui.Network.GlobalProtect.Mdm - } - if o.Role.Device.Webui.Network.GlobalProtect.Portals != nil { - nestedRole.Device.Webui.Network.GlobalProtect.Portals = o.Role.Device.Webui.Network.GlobalProtect.Portals - } + if o.Role.Device.Webui.Device.Administrators != nil { + nestedRole.Device.Webui.Device.Administrators = o.Role.Device.Webui.Device.Administrators } - if o.Role.Device.Webui.Network.NetworkProfiles != nil { - nestedRole.Device.Webui.Network.NetworkProfiles = &RoleDeviceWebuiNetworkNetworkProfiles{} - if o.Role.Device.Webui.Network.NetworkProfiles.Misc != nil { - entry.Misc["RoleDeviceWebuiNetworkNetworkProfiles"] = o.Role.Device.Webui.Network.NetworkProfiles.Misc - } - if o.Role.Device.Webui.Network.NetworkProfiles.IpsecCrypto != nil { - nestedRole.Device.Webui.Network.NetworkProfiles.IpsecCrypto = o.Role.Device.Webui.Network.NetworkProfiles.IpsecCrypto + if o.Role.Device.Webui.Device.AuthenticationSequence != nil { + nestedRole.Device.Webui.Device.AuthenticationSequence = o.Role.Device.Webui.Device.AuthenticationSequence + } + if o.Role.Device.Webui.Device.AccessDomain != nil { + nestedRole.Device.Webui.Device.AccessDomain = o.Role.Device.Webui.Device.AccessDomain + } + if o.Role.Device.Webui.Device.Setup != nil { + nestedRole.Device.Webui.Device.Setup = &RoleDeviceWebuiDeviceSetup{} + if o.Role.Device.Webui.Device.Setup.Misc != nil { + entry.Misc["RoleDeviceWebuiDeviceSetup"] = o.Role.Device.Webui.Device.Setup.Misc } - if o.Role.Device.Webui.Network.NetworkProfiles.QosProfile != nil { - nestedRole.Device.Webui.Network.NetworkProfiles.QosProfile = o.Role.Device.Webui.Network.NetworkProfiles.QosProfile + if o.Role.Device.Webui.Device.Setup.ContentId != nil { + nestedRole.Device.Webui.Device.Setup.ContentId = o.Role.Device.Webui.Device.Setup.ContentId } - if o.Role.Device.Webui.Network.NetworkProfiles.TunnelMonitor != nil { - nestedRole.Device.Webui.Network.NetworkProfiles.TunnelMonitor = o.Role.Device.Webui.Network.NetworkProfiles.TunnelMonitor + if o.Role.Device.Webui.Device.Setup.Management != nil { + nestedRole.Device.Webui.Device.Setup.Management = o.Role.Device.Webui.Device.Setup.Management } - if o.Role.Device.Webui.Network.NetworkProfiles.ZoneProtection != nil { - nestedRole.Device.Webui.Network.NetworkProfiles.ZoneProtection = o.Role.Device.Webui.Network.NetworkProfiles.ZoneProtection + if o.Role.Device.Webui.Device.Setup.Services != nil { + nestedRole.Device.Webui.Device.Setup.Services = o.Role.Device.Webui.Device.Setup.Services } - if o.Role.Device.Webui.Network.NetworkProfiles.BfdProfile != nil { - nestedRole.Device.Webui.Network.NetworkProfiles.BfdProfile = o.Role.Device.Webui.Network.NetworkProfiles.BfdProfile + if o.Role.Device.Webui.Device.Setup.Session != nil { + nestedRole.Device.Webui.Device.Setup.Session = o.Role.Device.Webui.Device.Setup.Session } - if o.Role.Device.Webui.Network.NetworkProfiles.GpAppIpsecCrypto != nil { - nestedRole.Device.Webui.Network.NetworkProfiles.GpAppIpsecCrypto = o.Role.Device.Webui.Network.NetworkProfiles.GpAppIpsecCrypto + if o.Role.Device.Webui.Device.Setup.Wildfire != nil { + nestedRole.Device.Webui.Device.Setup.Wildfire = o.Role.Device.Webui.Device.Setup.Wildfire } - if o.Role.Device.Webui.Network.NetworkProfiles.InterfaceMgmt != nil { - nestedRole.Device.Webui.Network.NetworkProfiles.InterfaceMgmt = o.Role.Device.Webui.Network.NetworkProfiles.InterfaceMgmt + if o.Role.Device.Webui.Device.Setup.Hsm != nil { + nestedRole.Device.Webui.Device.Setup.Hsm = o.Role.Device.Webui.Device.Setup.Hsm } - if o.Role.Device.Webui.Network.NetworkProfiles.LldpProfile != nil { - nestedRole.Device.Webui.Network.NetworkProfiles.LldpProfile = o.Role.Device.Webui.Network.NetworkProfiles.LldpProfile + if o.Role.Device.Webui.Device.Setup.Interfaces != nil { + nestedRole.Device.Webui.Device.Setup.Interfaces = o.Role.Device.Webui.Device.Setup.Interfaces } - if o.Role.Device.Webui.Network.NetworkProfiles.IkeCrypto != nil { - nestedRole.Device.Webui.Network.NetworkProfiles.IkeCrypto = o.Role.Device.Webui.Network.NetworkProfiles.IkeCrypto + if o.Role.Device.Webui.Device.Setup.Operations != nil { + nestedRole.Device.Webui.Device.Setup.Operations = o.Role.Device.Webui.Device.Setup.Operations } - if o.Role.Device.Webui.Network.NetworkProfiles.IkeGateways != nil { - nestedRole.Device.Webui.Network.NetworkProfiles.IkeGateways = o.Role.Device.Webui.Network.NetworkProfiles.IkeGateways + if o.Role.Device.Webui.Device.Setup.Telemetry != nil { + nestedRole.Device.Webui.Device.Setup.Telemetry = o.Role.Device.Webui.Device.Setup.Telemetry } } - if o.Role.Device.Webui.Network.Zones != nil { - nestedRole.Device.Webui.Network.Zones = o.Role.Device.Webui.Network.Zones - } - if o.Role.Device.Webui.Network.Dhcp != nil { - nestedRole.Device.Webui.Network.Dhcp = o.Role.Device.Webui.Network.Dhcp - } - if o.Role.Device.Webui.Network.GreTunnels != nil { - nestedRole.Device.Webui.Network.GreTunnels = o.Role.Device.Webui.Network.GreTunnels - } - if o.Role.Device.Webui.Network.IpsecTunnels != nil { - nestedRole.Device.Webui.Network.IpsecTunnels = o.Role.Device.Webui.Network.IpsecTunnels - } - if o.Role.Device.Webui.Network.Lldp != nil { - nestedRole.Device.Webui.Network.Lldp = o.Role.Device.Webui.Network.Lldp - } - if o.Role.Device.Webui.Network.SdwanInterfaceProfile != nil { - nestedRole.Device.Webui.Network.SdwanInterfaceProfile = o.Role.Device.Webui.Network.SdwanInterfaceProfile - } - if o.Role.Device.Webui.Network.Qos != nil { - nestedRole.Device.Webui.Network.Qos = o.Role.Device.Webui.Network.Qos - } - if o.Role.Device.Webui.Network.Vlans != nil { - nestedRole.Device.Webui.Network.Vlans = o.Role.Device.Webui.Network.Vlans - } - } - if o.Role.Device.Webui.Validate != nil { - nestedRole.Device.Webui.Validate = o.Role.Device.Webui.Validate - } - if o.Role.Device.Webui.Policies != nil { - nestedRole.Device.Webui.Policies = &RoleDeviceWebuiPolicies{} - if o.Role.Device.Webui.Policies.Misc != nil { - entry.Misc["RoleDeviceWebuiPolicies"] = o.Role.Device.Webui.Policies.Misc - } - if o.Role.Device.Webui.Policies.NatRulebase != nil { - nestedRole.Device.Webui.Policies.NatRulebase = o.Role.Device.Webui.Policies.NatRulebase - } - if o.Role.Device.Webui.Policies.NetworkPacketBrokerRulebase != nil { - nestedRole.Device.Webui.Policies.NetworkPacketBrokerRulebase = o.Role.Device.Webui.Policies.NetworkPacketBrokerRulebase + if o.Role.Device.Webui.Device.ScheduledLogExport != nil { + nestedRole.Device.Webui.Device.ScheduledLogExport = o.Role.Device.Webui.Device.ScheduledLogExport } - if o.Role.Device.Webui.Policies.QosRulebase != nil { - nestedRole.Device.Webui.Policies.QosRulebase = o.Role.Device.Webui.Policies.QosRulebase + if o.Role.Device.Webui.Device.Software != nil { + nestedRole.Device.Webui.Device.Software = o.Role.Device.Webui.Device.Software } - if o.Role.Device.Webui.Policies.RuleHitCountReset != nil { - nestedRole.Device.Webui.Policies.RuleHitCountReset = o.Role.Device.Webui.Policies.RuleHitCountReset + if o.Role.Device.Webui.Device.Troubleshooting != nil { + nestedRole.Device.Webui.Device.Troubleshooting = o.Role.Device.Webui.Device.Troubleshooting } - if o.Role.Device.Webui.Policies.ApplicationOverrideRulebase != nil { - nestedRole.Device.Webui.Policies.ApplicationOverrideRulebase = o.Role.Device.Webui.Policies.ApplicationOverrideRulebase + if o.Role.Device.Webui.Device.UserIdentification != nil { + nestedRole.Device.Webui.Device.UserIdentification = o.Role.Device.Webui.Device.UserIdentification } - if o.Role.Device.Webui.Policies.AuthenticationRulebase != nil { - nestedRole.Device.Webui.Policies.AuthenticationRulebase = o.Role.Device.Webui.Policies.AuthenticationRulebase + if o.Role.Device.Webui.Device.DhcpSyslogServer != nil { + nestedRole.Device.Webui.Device.DhcpSyslogServer = o.Role.Device.Webui.Device.DhcpSyslogServer } - if o.Role.Device.Webui.Policies.DosRulebase != nil { - nestedRole.Device.Webui.Policies.DosRulebase = o.Role.Device.Webui.Policies.DosRulebase + if o.Role.Device.Webui.Device.CertificateManagement != nil { + nestedRole.Device.Webui.Device.CertificateManagement = &RoleDeviceWebuiDeviceCertificateManagement{} + if o.Role.Device.Webui.Device.CertificateManagement.Misc != nil { + entry.Misc["RoleDeviceWebuiDeviceCertificateManagement"] = o.Role.Device.Webui.Device.CertificateManagement.Misc + } + if o.Role.Device.Webui.Device.CertificateManagement.Certificates != nil { + nestedRole.Device.Webui.Device.CertificateManagement.Certificates = o.Role.Device.Webui.Device.CertificateManagement.Certificates + } + if o.Role.Device.Webui.Device.CertificateManagement.OcspResponder != nil { + nestedRole.Device.Webui.Device.CertificateManagement.OcspResponder = o.Role.Device.Webui.Device.CertificateManagement.OcspResponder + } + if o.Role.Device.Webui.Device.CertificateManagement.Scep != nil { + nestedRole.Device.Webui.Device.CertificateManagement.Scep = o.Role.Device.Webui.Device.CertificateManagement.Scep + } + if o.Role.Device.Webui.Device.CertificateManagement.SshServiceProfile != nil { + nestedRole.Device.Webui.Device.CertificateManagement.SshServiceProfile = o.Role.Device.Webui.Device.CertificateManagement.SshServiceProfile + } + if o.Role.Device.Webui.Device.CertificateManagement.SslDecryptionExclusion != nil { + nestedRole.Device.Webui.Device.CertificateManagement.SslDecryptionExclusion = o.Role.Device.Webui.Device.CertificateManagement.SslDecryptionExclusion + } + if o.Role.Device.Webui.Device.CertificateManagement.SslTlsServiceProfile != nil { + nestedRole.Device.Webui.Device.CertificateManagement.SslTlsServiceProfile = o.Role.Device.Webui.Device.CertificateManagement.SslTlsServiceProfile + } + if o.Role.Device.Webui.Device.CertificateManagement.CertificateProfile != nil { + nestedRole.Device.Webui.Device.CertificateManagement.CertificateProfile = o.Role.Device.Webui.Device.CertificateManagement.CertificateProfile + } } - if o.Role.Device.Webui.Policies.PbfRulebase != nil { - nestedRole.Device.Webui.Policies.PbfRulebase = o.Role.Device.Webui.Policies.PbfRulebase + if o.Role.Device.Webui.Device.LogFwdCard != nil { + nestedRole.Device.Webui.Device.LogFwdCard = o.Role.Device.Webui.Device.LogFwdCard } - if o.Role.Device.Webui.Policies.SdwanRulebase != nil { - nestedRole.Device.Webui.Policies.SdwanRulebase = o.Role.Device.Webui.Policies.SdwanRulebase + if o.Role.Device.Webui.Device.SharedGateways != nil { + nestedRole.Device.Webui.Device.SharedGateways = o.Role.Device.Webui.Device.SharedGateways } - if o.Role.Device.Webui.Policies.SecurityRulebase != nil { - nestedRole.Device.Webui.Policies.SecurityRulebase = o.Role.Device.Webui.Policies.SecurityRulebase + if o.Role.Device.Webui.Device.DeviceQuarantine != nil { + nestedRole.Device.Webui.Device.DeviceQuarantine = o.Role.Device.Webui.Device.DeviceQuarantine } - if o.Role.Device.Webui.Policies.SslDecryptionRulebase != nil { - nestedRole.Device.Webui.Policies.SslDecryptionRulebase = o.Role.Device.Webui.Policies.SslDecryptionRulebase + if o.Role.Device.Webui.Device.DataRedistribution != nil { + nestedRole.Device.Webui.Device.DataRedistribution = o.Role.Device.Webui.Device.DataRedistribution } - if o.Role.Device.Webui.Policies.TunnelInspectRulebase != nil { - nestedRole.Device.Webui.Policies.TunnelInspectRulebase = o.Role.Device.Webui.Policies.TunnelInspectRulebase + if o.Role.Device.Webui.Device.HighAvailability != nil { + nestedRole.Device.Webui.Device.HighAvailability = o.Role.Device.Webui.Device.HighAvailability } - } - if o.Role.Device.Webui.Privacy != nil { - nestedRole.Device.Webui.Privacy = &RoleDeviceWebuiPrivacy{} - if o.Role.Device.Webui.Privacy.Misc != nil { - entry.Misc["RoleDeviceWebuiPrivacy"] = o.Role.Device.Webui.Privacy.Misc + if o.Role.Device.Webui.Device.LocalUserDatabase != nil { + nestedRole.Device.Webui.Device.LocalUserDatabase = &RoleDeviceWebuiDeviceLocalUserDatabase{} + if o.Role.Device.Webui.Device.LocalUserDatabase.Misc != nil { + entry.Misc["RoleDeviceWebuiDeviceLocalUserDatabase"] = o.Role.Device.Webui.Device.LocalUserDatabase.Misc + } + if o.Role.Device.Webui.Device.LocalUserDatabase.UserGroups != nil { + nestedRole.Device.Webui.Device.LocalUserDatabase.UserGroups = o.Role.Device.Webui.Device.LocalUserDatabase.UserGroups + } + if o.Role.Device.Webui.Device.LocalUserDatabase.Users != nil { + nestedRole.Device.Webui.Device.LocalUserDatabase.Users = o.Role.Device.Webui.Device.LocalUserDatabase.Users + } } - if o.Role.Device.Webui.Privacy.ShowFullIpAddresses != nil { - nestedRole.Device.Webui.Privacy.ShowFullIpAddresses = o.Role.Device.Webui.Privacy.ShowFullIpAddresses + if o.Role.Device.Webui.Device.MasterKey != nil { + nestedRole.Device.Webui.Device.MasterKey = o.Role.Device.Webui.Device.MasterKey } - if o.Role.Device.Webui.Privacy.ShowUserNamesInLogsAndReports != nil { - nestedRole.Device.Webui.Privacy.ShowUserNamesInLogsAndReports = o.Role.Device.Webui.Privacy.ShowUserNamesInLogsAndReports + if o.Role.Device.Webui.Device.Plugins != nil { + nestedRole.Device.Webui.Device.Plugins = o.Role.Device.Webui.Device.Plugins } - if o.Role.Device.Webui.Privacy.ViewPcapFiles != nil { - nestedRole.Device.Webui.Privacy.ViewPcapFiles = o.Role.Device.Webui.Privacy.ViewPcapFiles + if o.Role.Device.Webui.Device.PolicyRecommendations != nil { + nestedRole.Device.Webui.Device.PolicyRecommendations = &RoleDeviceWebuiDevicePolicyRecommendations{} + if o.Role.Device.Webui.Device.PolicyRecommendations.Misc != nil { + entry.Misc["RoleDeviceWebuiDevicePolicyRecommendations"] = o.Role.Device.Webui.Device.PolicyRecommendations.Misc + } + if o.Role.Device.Webui.Device.PolicyRecommendations.Iot != nil { + nestedRole.Device.Webui.Device.PolicyRecommendations.Iot = o.Role.Device.Webui.Device.PolicyRecommendations.Iot + } + if o.Role.Device.Webui.Device.PolicyRecommendations.Saas != nil { + nestedRole.Device.Webui.Device.PolicyRecommendations.Saas = o.Role.Device.Webui.Device.PolicyRecommendations.Saas + } } - } - if o.Role.Device.Webui.Operations != nil { - nestedRole.Device.Webui.Operations = &RoleDeviceWebuiOperations{} - if o.Role.Device.Webui.Operations.Misc != nil { - entry.Misc["RoleDeviceWebuiOperations"] = o.Role.Device.Webui.Operations.Misc + if o.Role.Device.Webui.Device.ServerProfile != nil { + nestedRole.Device.Webui.Device.ServerProfile = &RoleDeviceWebuiDeviceServerProfile{} + if o.Role.Device.Webui.Device.ServerProfile.Misc != nil { + entry.Misc["RoleDeviceWebuiDeviceServerProfile"] = o.Role.Device.Webui.Device.ServerProfile.Misc + } + if o.Role.Device.Webui.Device.ServerProfile.Dns != nil { + nestedRole.Device.Webui.Device.ServerProfile.Dns = o.Role.Device.Webui.Device.ServerProfile.Dns + } + if o.Role.Device.Webui.Device.ServerProfile.Email != nil { + nestedRole.Device.Webui.Device.ServerProfile.Email = o.Role.Device.Webui.Device.ServerProfile.Email + } + if o.Role.Device.Webui.Device.ServerProfile.Netflow != nil { + nestedRole.Device.Webui.Device.ServerProfile.Netflow = o.Role.Device.Webui.Device.ServerProfile.Netflow + } + if o.Role.Device.Webui.Device.ServerProfile.SamlIdp != nil { + nestedRole.Device.Webui.Device.ServerProfile.SamlIdp = o.Role.Device.Webui.Device.ServerProfile.SamlIdp + } + if o.Role.Device.Webui.Device.ServerProfile.Tacplus != nil { + nestedRole.Device.Webui.Device.ServerProfile.Tacplus = o.Role.Device.Webui.Device.ServerProfile.Tacplus + } + if o.Role.Device.Webui.Device.ServerProfile.Syslog != nil { + nestedRole.Device.Webui.Device.ServerProfile.Syslog = o.Role.Device.Webui.Device.ServerProfile.Syslog + } + if o.Role.Device.Webui.Device.ServerProfile.Http != nil { + nestedRole.Device.Webui.Device.ServerProfile.Http = o.Role.Device.Webui.Device.ServerProfile.Http + } + if o.Role.Device.Webui.Device.ServerProfile.Kerberos != nil { + nestedRole.Device.Webui.Device.ServerProfile.Kerberos = o.Role.Device.Webui.Device.ServerProfile.Kerberos + } + if o.Role.Device.Webui.Device.ServerProfile.Ldap != nil { + nestedRole.Device.Webui.Device.ServerProfile.Ldap = o.Role.Device.Webui.Device.ServerProfile.Ldap + } + if o.Role.Device.Webui.Device.ServerProfile.Mfa != nil { + nestedRole.Device.Webui.Device.ServerProfile.Mfa = o.Role.Device.Webui.Device.ServerProfile.Mfa + } + if o.Role.Device.Webui.Device.ServerProfile.Radius != nil { + nestedRole.Device.Webui.Device.ServerProfile.Radius = o.Role.Device.Webui.Device.ServerProfile.Radius + } + if o.Role.Device.Webui.Device.ServerProfile.Scp != nil { + nestedRole.Device.Webui.Device.ServerProfile.Scp = o.Role.Device.Webui.Device.ServerProfile.Scp + } + if o.Role.Device.Webui.Device.ServerProfile.SnmpTrap != nil { + nestedRole.Device.Webui.Device.ServerProfile.SnmpTrap = o.Role.Device.Webui.Device.ServerProfile.SnmpTrap + } } - if o.Role.Device.Webui.Operations.DownloadCoreFiles != nil { - nestedRole.Device.Webui.Operations.DownloadCoreFiles = o.Role.Device.Webui.Operations.DownloadCoreFiles + if o.Role.Device.Webui.Device.ConfigAudit != nil { + nestedRole.Device.Webui.Device.ConfigAudit = o.Role.Device.Webui.Device.ConfigAudit } - if o.Role.Device.Webui.Operations.DownloadPcapFiles != nil { - nestedRole.Device.Webui.Operations.DownloadPcapFiles = o.Role.Device.Webui.Operations.DownloadPcapFiles + if o.Role.Device.Webui.Device.Support != nil { + nestedRole.Device.Webui.Device.Support = o.Role.Device.Webui.Device.Support } - if o.Role.Device.Webui.Operations.GenerateStatsDumpFile != nil { - nestedRole.Device.Webui.Operations.GenerateStatsDumpFile = o.Role.Device.Webui.Operations.GenerateStatsDumpFile + if o.Role.Device.Webui.Device.DynamicUpdates != nil { + nestedRole.Device.Webui.Device.DynamicUpdates = o.Role.Device.Webui.Device.DynamicUpdates } - if o.Role.Device.Webui.Operations.GenerateTechSupportFile != nil { - nestedRole.Device.Webui.Operations.GenerateTechSupportFile = o.Role.Device.Webui.Operations.GenerateTechSupportFile + if o.Role.Device.Webui.Device.LogSettings != nil { + nestedRole.Device.Webui.Device.LogSettings = &RoleDeviceWebuiDeviceLogSettings{} + if o.Role.Device.Webui.Device.LogSettings.Misc != nil { + entry.Misc["RoleDeviceWebuiDeviceLogSettings"] = o.Role.Device.Webui.Device.LogSettings.Misc + } + if o.Role.Device.Webui.Device.LogSettings.CcAlarm != nil { + nestedRole.Device.Webui.Device.LogSettings.CcAlarm = o.Role.Device.Webui.Device.LogSettings.CcAlarm + } + if o.Role.Device.Webui.Device.LogSettings.Config != nil { + nestedRole.Device.Webui.Device.LogSettings.Config = o.Role.Device.Webui.Device.LogSettings.Config + } + if o.Role.Device.Webui.Device.LogSettings.Hipmatch != nil { + nestedRole.Device.Webui.Device.LogSettings.Hipmatch = o.Role.Device.Webui.Device.LogSettings.Hipmatch + } + if o.Role.Device.Webui.Device.LogSettings.System != nil { + nestedRole.Device.Webui.Device.LogSettings.System = o.Role.Device.Webui.Device.LogSettings.System + } + if o.Role.Device.Webui.Device.LogSettings.Correlation != nil { + nestedRole.Device.Webui.Device.LogSettings.Correlation = o.Role.Device.Webui.Device.LogSettings.Correlation + } + if o.Role.Device.Webui.Device.LogSettings.Globalprotect != nil { + nestedRole.Device.Webui.Device.LogSettings.Globalprotect = o.Role.Device.Webui.Device.LogSettings.Globalprotect + } + if o.Role.Device.Webui.Device.LogSettings.Iptag != nil { + nestedRole.Device.Webui.Device.LogSettings.Iptag = o.Role.Device.Webui.Device.LogSettings.Iptag + } + if o.Role.Device.Webui.Device.LogSettings.ManageLog != nil { + nestedRole.Device.Webui.Device.LogSettings.ManageLog = o.Role.Device.Webui.Device.LogSettings.ManageLog + } + if o.Role.Device.Webui.Device.LogSettings.UserId != nil { + nestedRole.Device.Webui.Device.LogSettings.UserId = o.Role.Device.Webui.Device.LogSettings.UserId + } } - if o.Role.Device.Webui.Operations.Reboot != nil { - nestedRole.Device.Webui.Operations.Reboot = o.Role.Device.Webui.Operations.Reboot + if o.Role.Device.Webui.Device.VmInfoSource != nil { + nestedRole.Device.Webui.Device.VmInfoSource = o.Role.Device.Webui.Device.VmInfoSource } - } - if o.Role.Device.Webui.Commit != nil { - nestedRole.Device.Webui.Commit = &RoleDeviceWebuiCommit{} - if o.Role.Device.Webui.Commit.Misc != nil { - entry.Misc["RoleDeviceWebuiCommit"] = o.Role.Device.Webui.Commit.Misc + if o.Role.Device.Webui.Device.AdminRoles != nil { + nestedRole.Device.Webui.Device.AdminRoles = o.Role.Device.Webui.Device.AdminRoles } - if o.Role.Device.Webui.Commit.CommitForOtherAdmins != nil { - nestedRole.Device.Webui.Commit.CommitForOtherAdmins = o.Role.Device.Webui.Commit.CommitForOtherAdmins + if o.Role.Device.Webui.Device.Licenses != nil { + nestedRole.Device.Webui.Device.Licenses = o.Role.Device.Webui.Device.Licenses } - if o.Role.Device.Webui.Commit.Device != nil { - nestedRole.Device.Webui.Commit.Device = o.Role.Device.Webui.Commit.Device + if o.Role.Device.Webui.Device.VirtualSystems != nil { + nestedRole.Device.Webui.Device.VirtualSystems = o.Role.Device.Webui.Device.VirtualSystems } - if o.Role.Device.Webui.Commit.ObjectLevelChanges != nil { - nestedRole.Device.Webui.Commit.ObjectLevelChanges = o.Role.Device.Webui.Commit.ObjectLevelChanges + if o.Role.Device.Webui.Device.AuthenticationProfile != nil { + nestedRole.Device.Webui.Device.AuthenticationProfile = o.Role.Device.Webui.Device.AuthenticationProfile } } if o.Role.Device.Webui.Monitor != nil { @@ -4576,56 +4597,95 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Role.Device.Webui.Monitor.Misc != nil { entry.Misc["RoleDeviceWebuiMonitor"] = o.Role.Device.Webui.Monitor.Misc } - if o.Role.Device.Webui.Monitor.ApplicationReports != nil { - nestedRole.Device.Webui.Monitor.ApplicationReports = o.Role.Device.Webui.Monitor.ApplicationReports - } - if o.Role.Device.Webui.Monitor.PdfReports != nil { - nestedRole.Device.Webui.Monitor.PdfReports = &RoleDeviceWebuiMonitorPdfReports{} - if o.Role.Device.Webui.Monitor.PdfReports.Misc != nil { - entry.Misc["RoleDeviceWebuiMonitorPdfReports"] = o.Role.Device.Webui.Monitor.PdfReports.Misc + if o.Role.Device.Webui.Monitor.CustomReports != nil { + nestedRole.Device.Webui.Monitor.CustomReports = &RoleDeviceWebuiMonitorCustomReports{} + if o.Role.Device.Webui.Monitor.CustomReports.Misc != nil { + entry.Misc["RoleDeviceWebuiMonitorCustomReports"] = o.Role.Device.Webui.Monitor.CustomReports.Misc } - if o.Role.Device.Webui.Monitor.PdfReports.ReportGroups != nil { - nestedRole.Device.Webui.Monitor.PdfReports.ReportGroups = o.Role.Device.Webui.Monitor.PdfReports.ReportGroups + if o.Role.Device.Webui.Monitor.CustomReports.DecryptionLog != nil { + nestedRole.Device.Webui.Monitor.CustomReports.DecryptionLog = o.Role.Device.Webui.Monitor.CustomReports.DecryptionLog } - if o.Role.Device.Webui.Monitor.PdfReports.SaasApplicationUsageReport != nil { - nestedRole.Device.Webui.Monitor.PdfReports.SaasApplicationUsageReport = o.Role.Device.Webui.Monitor.PdfReports.SaasApplicationUsageReport + if o.Role.Device.Webui.Monitor.CustomReports.DecryptionSummary != nil { + nestedRole.Device.Webui.Monitor.CustomReports.DecryptionSummary = o.Role.Device.Webui.Monitor.CustomReports.DecryptionSummary } - if o.Role.Device.Webui.Monitor.PdfReports.UserActivityReport != nil { - nestedRole.Device.Webui.Monitor.PdfReports.UserActivityReport = o.Role.Device.Webui.Monitor.PdfReports.UserActivityReport + if o.Role.Device.Webui.Monitor.CustomReports.Iptag != nil { + nestedRole.Device.Webui.Monitor.CustomReports.Iptag = o.Role.Device.Webui.Monitor.CustomReports.Iptag } - if o.Role.Device.Webui.Monitor.PdfReports.EmailScheduler != nil { - nestedRole.Device.Webui.Monitor.PdfReports.EmailScheduler = o.Role.Device.Webui.Monitor.PdfReports.EmailScheduler + if o.Role.Device.Webui.Monitor.CustomReports.SctpLog != nil { + nestedRole.Device.Webui.Monitor.CustomReports.SctpLog = o.Role.Device.Webui.Monitor.CustomReports.SctpLog } - if o.Role.Device.Webui.Monitor.PdfReports.ManagePdfSummary != nil { - nestedRole.Device.Webui.Monitor.PdfReports.ManagePdfSummary = o.Role.Device.Webui.Monitor.PdfReports.ManagePdfSummary + if o.Role.Device.Webui.Monitor.CustomReports.Userid != nil { + nestedRole.Device.Webui.Monitor.CustomReports.Userid = o.Role.Device.Webui.Monitor.CustomReports.Userid } - if o.Role.Device.Webui.Monitor.PdfReports.PdfSummaryReports != nil { - nestedRole.Device.Webui.Monitor.PdfReports.PdfSummaryReports = o.Role.Device.Webui.Monitor.PdfReports.PdfSummaryReports + if o.Role.Device.Webui.Monitor.CustomReports.GtpLog != nil { + nestedRole.Device.Webui.Monitor.CustomReports.GtpLog = o.Role.Device.Webui.Monitor.CustomReports.GtpLog } - } - if o.Role.Device.Webui.Monitor.SessionBrowser != nil { - nestedRole.Device.Webui.Monitor.SessionBrowser = o.Role.Device.Webui.Monitor.SessionBrowser - } - if o.Role.Device.Webui.Monitor.ViewCustomReports != nil { - nestedRole.Device.Webui.Monitor.ViewCustomReports = o.Role.Device.Webui.Monitor.ViewCustomReports - } - if o.Role.Device.Webui.Monitor.AppScope != nil { - nestedRole.Device.Webui.Monitor.AppScope = o.Role.Device.Webui.Monitor.AppScope - } - if o.Role.Device.Webui.Monitor.AutomatedCorrelationEngine != nil { - nestedRole.Device.Webui.Monitor.AutomatedCorrelationEngine = &RoleDeviceWebuiMonitorAutomatedCorrelationEngine{} - if o.Role.Device.Webui.Monitor.AutomatedCorrelationEngine.Misc != nil { - entry.Misc["RoleDeviceWebuiMonitorAutomatedCorrelationEngine"] = o.Role.Device.Webui.Monitor.AutomatedCorrelationEngine.Misc + if o.Role.Device.Webui.Monitor.CustomReports.ThreatSummary != nil { + nestedRole.Device.Webui.Monitor.CustomReports.ThreatSummary = o.Role.Device.Webui.Monitor.CustomReports.ThreatSummary } - if o.Role.Device.Webui.Monitor.AutomatedCorrelationEngine.CorrelatedEvents != nil { - nestedRole.Device.Webui.Monitor.AutomatedCorrelationEngine.CorrelatedEvents = o.Role.Device.Webui.Monitor.AutomatedCorrelationEngine.CorrelatedEvents + if o.Role.Device.Webui.Monitor.CustomReports.UrlSummary != nil { + nestedRole.Device.Webui.Monitor.CustomReports.UrlSummary = o.Role.Device.Webui.Monitor.CustomReports.UrlSummary } - if o.Role.Device.Webui.Monitor.AutomatedCorrelationEngine.CorrelationObjects != nil { - nestedRole.Device.Webui.Monitor.AutomatedCorrelationEngine.CorrelationObjects = o.Role.Device.Webui.Monitor.AutomatedCorrelationEngine.CorrelationObjects + if o.Role.Device.Webui.Monitor.CustomReports.WildfireLog != nil { + nestedRole.Device.Webui.Monitor.CustomReports.WildfireLog = o.Role.Device.Webui.Monitor.CustomReports.WildfireLog + } + if o.Role.Device.Webui.Monitor.CustomReports.ApplicationStatistics != nil { + nestedRole.Device.Webui.Monitor.CustomReports.ApplicationStatistics = o.Role.Device.Webui.Monitor.CustomReports.ApplicationStatistics + } + if o.Role.Device.Webui.Monitor.CustomReports.Hipmatch != nil { + nestedRole.Device.Webui.Monitor.CustomReports.Hipmatch = o.Role.Device.Webui.Monitor.CustomReports.Hipmatch + } + if o.Role.Device.Webui.Monitor.CustomReports.ThreatLog != nil { + nestedRole.Device.Webui.Monitor.CustomReports.ThreatLog = o.Role.Device.Webui.Monitor.CustomReports.ThreatLog + } + if o.Role.Device.Webui.Monitor.CustomReports.TrafficLog != nil { + nestedRole.Device.Webui.Monitor.CustomReports.TrafficLog = o.Role.Device.Webui.Monitor.CustomReports.TrafficLog + } + if o.Role.Device.Webui.Monitor.CustomReports.TunnelLog != nil { + nestedRole.Device.Webui.Monitor.CustomReports.TunnelLog = o.Role.Device.Webui.Monitor.CustomReports.TunnelLog + } + if o.Role.Device.Webui.Monitor.CustomReports.TrafficSummary != nil { + nestedRole.Device.Webui.Monitor.CustomReports.TrafficSummary = o.Role.Device.Webui.Monitor.CustomReports.TrafficSummary + } + if o.Role.Device.Webui.Monitor.CustomReports.TunnelSummary != nil { + nestedRole.Device.Webui.Monitor.CustomReports.TunnelSummary = o.Role.Device.Webui.Monitor.CustomReports.TunnelSummary + } + if o.Role.Device.Webui.Monitor.CustomReports.UrlLog != nil { + nestedRole.Device.Webui.Monitor.CustomReports.UrlLog = o.Role.Device.Webui.Monitor.CustomReports.UrlLog + } + if o.Role.Device.Webui.Monitor.CustomReports.Auth != nil { + nestedRole.Device.Webui.Monitor.CustomReports.Auth = o.Role.Device.Webui.Monitor.CustomReports.Auth + } + if o.Role.Device.Webui.Monitor.CustomReports.DataFilteringLog != nil { + nestedRole.Device.Webui.Monitor.CustomReports.DataFilteringLog = o.Role.Device.Webui.Monitor.CustomReports.DataFilteringLog + } + if o.Role.Device.Webui.Monitor.CustomReports.Globalprotect != nil { + nestedRole.Device.Webui.Monitor.CustomReports.Globalprotect = o.Role.Device.Webui.Monitor.CustomReports.Globalprotect + } + if o.Role.Device.Webui.Monitor.CustomReports.GtpSummary != nil { + nestedRole.Device.Webui.Monitor.CustomReports.GtpSummary = o.Role.Device.Webui.Monitor.CustomReports.GtpSummary + } + if o.Role.Device.Webui.Monitor.CustomReports.SctpSummary != nil { + nestedRole.Device.Webui.Monitor.CustomReports.SctpSummary = o.Role.Device.Webui.Monitor.CustomReports.SctpSummary } } - if o.Role.Device.Webui.Monitor.BlockIpList != nil { - nestedRole.Device.Webui.Monitor.BlockIpList = o.Role.Device.Webui.Monitor.BlockIpList + if o.Role.Device.Webui.Monitor.ThreatReports != nil { + nestedRole.Device.Webui.Monitor.ThreatReports = o.Role.Device.Webui.Monitor.ThreatReports + } + if o.Role.Device.Webui.Monitor.AppScope != nil { + nestedRole.Device.Webui.Monitor.AppScope = o.Role.Device.Webui.Monitor.AppScope + } + if o.Role.Device.Webui.Monitor.ApplicationReports != nil { + nestedRole.Device.Webui.Monitor.ApplicationReports = o.Role.Device.Webui.Monitor.ApplicationReports + } + if o.Role.Device.Webui.Monitor.GtpReports != nil { + nestedRole.Device.Webui.Monitor.GtpReports = o.Role.Device.Webui.Monitor.GtpReports + } + if o.Role.Device.Webui.Monitor.ViewCustomReports != nil { + nestedRole.Device.Webui.Monitor.ViewCustomReports = o.Role.Device.Webui.Monitor.ViewCustomReports + } + if o.Role.Device.Webui.Monitor.Botnet != nil { + nestedRole.Device.Webui.Monitor.Botnet = o.Role.Device.Webui.Monitor.Botnet } if o.Role.Device.Webui.Monitor.ExternalLogs != nil { nestedRole.Device.Webui.Monitor.ExternalLogs = o.Role.Device.Webui.Monitor.ExternalLogs @@ -4635,26 +4695,38 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Role.Device.Webui.Monitor.Logs.Misc != nil { entry.Misc["RoleDeviceWebuiMonitorLogs"] = o.Role.Device.Webui.Monitor.Logs.Misc } - if o.Role.Device.Webui.Monitor.Logs.Configuration != nil { - nestedRole.Device.Webui.Monitor.Logs.Configuration = o.Role.Device.Webui.Monitor.Logs.Configuration + if o.Role.Device.Webui.Monitor.Logs.Decryption != nil { + nestedRole.Device.Webui.Monitor.Logs.Decryption = o.Role.Device.Webui.Monitor.Logs.Decryption + } + if o.Role.Device.Webui.Monitor.Logs.Gtp != nil { + nestedRole.Device.Webui.Monitor.Logs.Gtp = o.Role.Device.Webui.Monitor.Logs.Gtp + } + if o.Role.Device.Webui.Monitor.Logs.Userid != nil { + nestedRole.Device.Webui.Monitor.Logs.Userid = o.Role.Device.Webui.Monitor.Logs.Userid } if o.Role.Device.Webui.Monitor.Logs.DataFiltering != nil { nestedRole.Device.Webui.Monitor.Logs.DataFiltering = o.Role.Device.Webui.Monitor.Logs.DataFiltering } - if o.Role.Device.Webui.Monitor.Logs.Gtp != nil { - nestedRole.Device.Webui.Monitor.Logs.Gtp = o.Role.Device.Webui.Monitor.Logs.Gtp + if o.Role.Device.Webui.Monitor.Logs.Iptag != nil { + nestedRole.Device.Webui.Monitor.Logs.Iptag = o.Role.Device.Webui.Monitor.Logs.Iptag + } + if o.Role.Device.Webui.Monitor.Logs.Threat != nil { + nestedRole.Device.Webui.Monitor.Logs.Threat = o.Role.Device.Webui.Monitor.Logs.Threat + } + if o.Role.Device.Webui.Monitor.Logs.Configuration != nil { + nestedRole.Device.Webui.Monitor.Logs.Configuration = o.Role.Device.Webui.Monitor.Logs.Configuration } if o.Role.Device.Webui.Monitor.Logs.Sctp != nil { nestedRole.Device.Webui.Monitor.Logs.Sctp = o.Role.Device.Webui.Monitor.Logs.Sctp } - if o.Role.Device.Webui.Monitor.Logs.Alarm != nil { - nestedRole.Device.Webui.Monitor.Logs.Alarm = o.Role.Device.Webui.Monitor.Logs.Alarm + if o.Role.Device.Webui.Monitor.Logs.Hipmatch != nil { + nestedRole.Device.Webui.Monitor.Logs.Hipmatch = o.Role.Device.Webui.Monitor.Logs.Hipmatch } if o.Role.Device.Webui.Monitor.Logs.System != nil { nestedRole.Device.Webui.Monitor.Logs.System = o.Role.Device.Webui.Monitor.Logs.System } - if o.Role.Device.Webui.Monitor.Logs.Threat != nil { - nestedRole.Device.Webui.Monitor.Logs.Threat = o.Role.Device.Webui.Monitor.Logs.Threat + if o.Role.Device.Webui.Monitor.Logs.Traffic != nil { + nestedRole.Device.Webui.Monitor.Logs.Traffic = o.Role.Device.Webui.Monitor.Logs.Traffic } if o.Role.Device.Webui.Monitor.Logs.Tunnel != nil { nestedRole.Device.Webui.Monitor.Logs.Tunnel = o.Role.Device.Webui.Monitor.Logs.Tunnel @@ -4662,123 +4734,120 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Role.Device.Webui.Monitor.Logs.Url != nil { nestedRole.Device.Webui.Monitor.Logs.Url = o.Role.Device.Webui.Monitor.Logs.Url } - if o.Role.Device.Webui.Monitor.Logs.Wildfire != nil { - nestedRole.Device.Webui.Monitor.Logs.Wildfire = o.Role.Device.Webui.Monitor.Logs.Wildfire - } - if o.Role.Device.Webui.Monitor.Logs.Decryption != nil { - nestedRole.Device.Webui.Monitor.Logs.Decryption = o.Role.Device.Webui.Monitor.Logs.Decryption - } - if o.Role.Device.Webui.Monitor.Logs.Globalprotect != nil { - nestedRole.Device.Webui.Monitor.Logs.Globalprotect = o.Role.Device.Webui.Monitor.Logs.Globalprotect - } - if o.Role.Device.Webui.Monitor.Logs.Hipmatch != nil { - nestedRole.Device.Webui.Monitor.Logs.Hipmatch = o.Role.Device.Webui.Monitor.Logs.Hipmatch - } - if o.Role.Device.Webui.Monitor.Logs.Iptag != nil { - nestedRole.Device.Webui.Monitor.Logs.Iptag = o.Role.Device.Webui.Monitor.Logs.Iptag + if o.Role.Device.Webui.Monitor.Logs.Alarm != nil { + nestedRole.Device.Webui.Monitor.Logs.Alarm = o.Role.Device.Webui.Monitor.Logs.Alarm } if o.Role.Device.Webui.Monitor.Logs.Authentication != nil { nestedRole.Device.Webui.Monitor.Logs.Authentication = o.Role.Device.Webui.Monitor.Logs.Authentication } - if o.Role.Device.Webui.Monitor.Logs.Traffic != nil { - nestedRole.Device.Webui.Monitor.Logs.Traffic = o.Role.Device.Webui.Monitor.Logs.Traffic + if o.Role.Device.Webui.Monitor.Logs.Globalprotect != nil { + nestedRole.Device.Webui.Monitor.Logs.Globalprotect = o.Role.Device.Webui.Monitor.Logs.Globalprotect } - if o.Role.Device.Webui.Monitor.Logs.Userid != nil { - nestedRole.Device.Webui.Monitor.Logs.Userid = o.Role.Device.Webui.Monitor.Logs.Userid + if o.Role.Device.Webui.Monitor.Logs.Wildfire != nil { + nestedRole.Device.Webui.Monitor.Logs.Wildfire = o.Role.Device.Webui.Monitor.Logs.Wildfire } } + if o.Role.Device.Webui.Monitor.PacketCapture != nil { + nestedRole.Device.Webui.Monitor.PacketCapture = o.Role.Device.Webui.Monitor.PacketCapture + } + if o.Role.Device.Webui.Monitor.TrafficReports != nil { + nestedRole.Device.Webui.Monitor.TrafficReports = o.Role.Device.Webui.Monitor.TrafficReports + } if o.Role.Device.Webui.Monitor.UrlFilteringReports != nil { nestedRole.Device.Webui.Monitor.UrlFilteringReports = o.Role.Device.Webui.Monitor.UrlFilteringReports } - if o.Role.Device.Webui.Monitor.Botnet != nil { - nestedRole.Device.Webui.Monitor.Botnet = o.Role.Device.Webui.Monitor.Botnet - } - if o.Role.Device.Webui.Monitor.CustomReports != nil { - nestedRole.Device.Webui.Monitor.CustomReports = &RoleDeviceWebuiMonitorCustomReports{} - if o.Role.Device.Webui.Monitor.CustomReports.Misc != nil { - entry.Misc["RoleDeviceWebuiMonitorCustomReports"] = o.Role.Device.Webui.Monitor.CustomReports.Misc - } - if o.Role.Device.Webui.Monitor.CustomReports.ApplicationStatistics != nil { - nestedRole.Device.Webui.Monitor.CustomReports.ApplicationStatistics = o.Role.Device.Webui.Monitor.CustomReports.ApplicationStatistics - } - if o.Role.Device.Webui.Monitor.CustomReports.SctpSummary != nil { - nestedRole.Device.Webui.Monitor.CustomReports.SctpSummary = o.Role.Device.Webui.Monitor.CustomReports.SctpSummary - } - if o.Role.Device.Webui.Monitor.CustomReports.ThreatSummary != nil { - nestedRole.Device.Webui.Monitor.CustomReports.ThreatSummary = o.Role.Device.Webui.Monitor.CustomReports.ThreatSummary - } - if o.Role.Device.Webui.Monitor.CustomReports.TunnelLog != nil { - nestedRole.Device.Webui.Monitor.CustomReports.TunnelLog = o.Role.Device.Webui.Monitor.CustomReports.TunnelLog - } - if o.Role.Device.Webui.Monitor.CustomReports.UrlLog != nil { - nestedRole.Device.Webui.Monitor.CustomReports.UrlLog = o.Role.Device.Webui.Monitor.CustomReports.UrlLog - } - if o.Role.Device.Webui.Monitor.CustomReports.GtpSummary != nil { - nestedRole.Device.Webui.Monitor.CustomReports.GtpSummary = o.Role.Device.Webui.Monitor.CustomReports.GtpSummary - } - if o.Role.Device.Webui.Monitor.CustomReports.Iptag != nil { - nestedRole.Device.Webui.Monitor.CustomReports.Iptag = o.Role.Device.Webui.Monitor.CustomReports.Iptag - } - if o.Role.Device.Webui.Monitor.CustomReports.TrafficSummary != nil { - nestedRole.Device.Webui.Monitor.CustomReports.TrafficSummary = o.Role.Device.Webui.Monitor.CustomReports.TrafficSummary - } - if o.Role.Device.Webui.Monitor.CustomReports.TrafficLog != nil { - nestedRole.Device.Webui.Monitor.CustomReports.TrafficLog = o.Role.Device.Webui.Monitor.CustomReports.TrafficLog - } - if o.Role.Device.Webui.Monitor.CustomReports.TunnelSummary != nil { - nestedRole.Device.Webui.Monitor.CustomReports.TunnelSummary = o.Role.Device.Webui.Monitor.CustomReports.TunnelSummary - } - if o.Role.Device.Webui.Monitor.CustomReports.DecryptionLog != nil { - nestedRole.Device.Webui.Monitor.CustomReports.DecryptionLog = o.Role.Device.Webui.Monitor.CustomReports.DecryptionLog - } - if o.Role.Device.Webui.Monitor.CustomReports.DecryptionSummary != nil { - nestedRole.Device.Webui.Monitor.CustomReports.DecryptionSummary = o.Role.Device.Webui.Monitor.CustomReports.DecryptionSummary - } - if o.Role.Device.Webui.Monitor.CustomReports.GtpLog != nil { - nestedRole.Device.Webui.Monitor.CustomReports.GtpLog = o.Role.Device.Webui.Monitor.CustomReports.GtpLog + if o.Role.Device.Webui.Monitor.AutomatedCorrelationEngine != nil { + nestedRole.Device.Webui.Monitor.AutomatedCorrelationEngine = &RoleDeviceWebuiMonitorAutomatedCorrelationEngine{} + if o.Role.Device.Webui.Monitor.AutomatedCorrelationEngine.Misc != nil { + entry.Misc["RoleDeviceWebuiMonitorAutomatedCorrelationEngine"] = o.Role.Device.Webui.Monitor.AutomatedCorrelationEngine.Misc } - if o.Role.Device.Webui.Monitor.CustomReports.Hipmatch != nil { - nestedRole.Device.Webui.Monitor.CustomReports.Hipmatch = o.Role.Device.Webui.Monitor.CustomReports.Hipmatch + if o.Role.Device.Webui.Monitor.AutomatedCorrelationEngine.CorrelatedEvents != nil { + nestedRole.Device.Webui.Monitor.AutomatedCorrelationEngine.CorrelatedEvents = o.Role.Device.Webui.Monitor.AutomatedCorrelationEngine.CorrelatedEvents } - if o.Role.Device.Webui.Monitor.CustomReports.SctpLog != nil { - nestedRole.Device.Webui.Monitor.CustomReports.SctpLog = o.Role.Device.Webui.Monitor.CustomReports.SctpLog + if o.Role.Device.Webui.Monitor.AutomatedCorrelationEngine.CorrelationObjects != nil { + nestedRole.Device.Webui.Monitor.AutomatedCorrelationEngine.CorrelationObjects = o.Role.Device.Webui.Monitor.AutomatedCorrelationEngine.CorrelationObjects } - if o.Role.Device.Webui.Monitor.CustomReports.ThreatLog != nil { - nestedRole.Device.Webui.Monitor.CustomReports.ThreatLog = o.Role.Device.Webui.Monitor.CustomReports.ThreatLog + } + if o.Role.Device.Webui.Monitor.BlockIpList != nil { + nestedRole.Device.Webui.Monitor.BlockIpList = o.Role.Device.Webui.Monitor.BlockIpList + } + if o.Role.Device.Webui.Monitor.PdfReports != nil { + nestedRole.Device.Webui.Monitor.PdfReports = &RoleDeviceWebuiMonitorPdfReports{} + if o.Role.Device.Webui.Monitor.PdfReports.Misc != nil { + entry.Misc["RoleDeviceWebuiMonitorPdfReports"] = o.Role.Device.Webui.Monitor.PdfReports.Misc } - if o.Role.Device.Webui.Monitor.CustomReports.Userid != nil { - nestedRole.Device.Webui.Monitor.CustomReports.Userid = o.Role.Device.Webui.Monitor.CustomReports.Userid + if o.Role.Device.Webui.Monitor.PdfReports.SaasApplicationUsageReport != nil { + nestedRole.Device.Webui.Monitor.PdfReports.SaasApplicationUsageReport = o.Role.Device.Webui.Monitor.PdfReports.SaasApplicationUsageReport } - if o.Role.Device.Webui.Monitor.CustomReports.Auth != nil { - nestedRole.Device.Webui.Monitor.CustomReports.Auth = o.Role.Device.Webui.Monitor.CustomReports.Auth + if o.Role.Device.Webui.Monitor.PdfReports.UserActivityReport != nil { + nestedRole.Device.Webui.Monitor.PdfReports.UserActivityReport = o.Role.Device.Webui.Monitor.PdfReports.UserActivityReport } - if o.Role.Device.Webui.Monitor.CustomReports.DataFilteringLog != nil { - nestedRole.Device.Webui.Monitor.CustomReports.DataFilteringLog = o.Role.Device.Webui.Monitor.CustomReports.DataFilteringLog + if o.Role.Device.Webui.Monitor.PdfReports.EmailScheduler != nil { + nestedRole.Device.Webui.Monitor.PdfReports.EmailScheduler = o.Role.Device.Webui.Monitor.PdfReports.EmailScheduler } - if o.Role.Device.Webui.Monitor.CustomReports.Globalprotect != nil { - nestedRole.Device.Webui.Monitor.CustomReports.Globalprotect = o.Role.Device.Webui.Monitor.CustomReports.Globalprotect + if o.Role.Device.Webui.Monitor.PdfReports.ManagePdfSummary != nil { + nestedRole.Device.Webui.Monitor.PdfReports.ManagePdfSummary = o.Role.Device.Webui.Monitor.PdfReports.ManagePdfSummary } - if o.Role.Device.Webui.Monitor.CustomReports.UrlSummary != nil { - nestedRole.Device.Webui.Monitor.CustomReports.UrlSummary = o.Role.Device.Webui.Monitor.CustomReports.UrlSummary + if o.Role.Device.Webui.Monitor.PdfReports.PdfSummaryReports != nil { + nestedRole.Device.Webui.Monitor.PdfReports.PdfSummaryReports = o.Role.Device.Webui.Monitor.PdfReports.PdfSummaryReports } - if o.Role.Device.Webui.Monitor.CustomReports.WildfireLog != nil { - nestedRole.Device.Webui.Monitor.CustomReports.WildfireLog = o.Role.Device.Webui.Monitor.CustomReports.WildfireLog + if o.Role.Device.Webui.Monitor.PdfReports.ReportGroups != nil { + nestedRole.Device.Webui.Monitor.PdfReports.ReportGroups = o.Role.Device.Webui.Monitor.PdfReports.ReportGroups } } - if o.Role.Device.Webui.Monitor.GtpReports != nil { - nestedRole.Device.Webui.Monitor.GtpReports = o.Role.Device.Webui.Monitor.GtpReports - } - if o.Role.Device.Webui.Monitor.PacketCapture != nil { - nestedRole.Device.Webui.Monitor.PacketCapture = o.Role.Device.Webui.Monitor.PacketCapture - } if o.Role.Device.Webui.Monitor.SctpReports != nil { nestedRole.Device.Webui.Monitor.SctpReports = o.Role.Device.Webui.Monitor.SctpReports } - if o.Role.Device.Webui.Monitor.ThreatReports != nil { - nestedRole.Device.Webui.Monitor.ThreatReports = o.Role.Device.Webui.Monitor.ThreatReports + if o.Role.Device.Webui.Monitor.SessionBrowser != nil { + nestedRole.Device.Webui.Monitor.SessionBrowser = o.Role.Device.Webui.Monitor.SessionBrowser } - if o.Role.Device.Webui.Monitor.TrafficReports != nil { - nestedRole.Device.Webui.Monitor.TrafficReports = o.Role.Device.Webui.Monitor.TrafficReports + } + if o.Role.Device.Webui.Operations != nil { + nestedRole.Device.Webui.Operations = &RoleDeviceWebuiOperations{} + if o.Role.Device.Webui.Operations.Misc != nil { + entry.Misc["RoleDeviceWebuiOperations"] = o.Role.Device.Webui.Operations.Misc + } + if o.Role.Device.Webui.Operations.GenerateStatsDumpFile != nil { + nestedRole.Device.Webui.Operations.GenerateStatsDumpFile = o.Role.Device.Webui.Operations.GenerateStatsDumpFile + } + if o.Role.Device.Webui.Operations.GenerateTechSupportFile != nil { + nestedRole.Device.Webui.Operations.GenerateTechSupportFile = o.Role.Device.Webui.Operations.GenerateTechSupportFile + } + if o.Role.Device.Webui.Operations.Reboot != nil { + nestedRole.Device.Webui.Operations.Reboot = o.Role.Device.Webui.Operations.Reboot + } + if o.Role.Device.Webui.Operations.DownloadCoreFiles != nil { + nestedRole.Device.Webui.Operations.DownloadCoreFiles = o.Role.Device.Webui.Operations.DownloadCoreFiles + } + if o.Role.Device.Webui.Operations.DownloadPcapFiles != nil { + nestedRole.Device.Webui.Operations.DownloadPcapFiles = o.Role.Device.Webui.Operations.DownloadPcapFiles + } + } + if o.Role.Device.Webui.Save != nil { + nestedRole.Device.Webui.Save = &RoleDeviceWebuiSave{} + if o.Role.Device.Webui.Save.Misc != nil { + entry.Misc["RoleDeviceWebuiSave"] = o.Role.Device.Webui.Save.Misc + } + if o.Role.Device.Webui.Save.PartialSave != nil { + nestedRole.Device.Webui.Save.PartialSave = o.Role.Device.Webui.Save.PartialSave + } + if o.Role.Device.Webui.Save.SaveForOtherAdmins != nil { + nestedRole.Device.Webui.Save.SaveForOtherAdmins = o.Role.Device.Webui.Save.SaveForOtherAdmins + } + if o.Role.Device.Webui.Save.ObjectLevelChanges != nil { + nestedRole.Device.Webui.Save.ObjectLevelChanges = o.Role.Device.Webui.Save.ObjectLevelChanges + } + } + if o.Role.Device.Webui.Validate != nil { + nestedRole.Device.Webui.Validate = o.Role.Device.Webui.Validate + } + if o.Role.Device.Webui.Global != nil { + nestedRole.Device.Webui.Global = &RoleDeviceWebuiGlobal{} + if o.Role.Device.Webui.Global.Misc != nil { + entry.Misc["RoleDeviceWebuiGlobal"] = o.Role.Device.Webui.Global.Misc + } + if o.Role.Device.Webui.Global.SystemAlarms != nil { + nestedRole.Device.Webui.Global.SystemAlarms = o.Role.Device.Webui.Global.SystemAlarms } } if o.Role.Device.Webui.Objects != nil { @@ -4786,6 +4855,9 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Role.Device.Webui.Objects.Misc != nil { entry.Misc["RoleDeviceWebuiObjects"] = o.Role.Device.Webui.Objects.Misc } + if o.Role.Device.Webui.Objects.ApplicationFilters != nil { + nestedRole.Device.Webui.Objects.ApplicationFilters = o.Role.Device.Webui.Objects.ApplicationFilters + } if o.Role.Device.Webui.Objects.Decryption != nil { nestedRole.Device.Webui.Objects.Decryption = &RoleDeviceWebuiObjectsDecryption{} if o.Role.Device.Webui.Objects.Decryption.Misc != nil { @@ -4795,17 +4867,23 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { nestedRole.Device.Webui.Objects.Decryption.DecryptionProfile = o.Role.Device.Webui.Objects.Decryption.DecryptionProfile } } - if o.Role.Device.Webui.Objects.AddressGroups != nil { - nestedRole.Device.Webui.Objects.AddressGroups = o.Role.Device.Webui.Objects.AddressGroups - } - if o.Role.Device.Webui.Objects.ApplicationFilters != nil { - nestedRole.Device.Webui.Objects.ApplicationFilters = o.Role.Device.Webui.Objects.ApplicationFilters - } if o.Role.Device.Webui.Objects.Devices != nil { nestedRole.Device.Webui.Objects.Devices = o.Role.Device.Webui.Objects.Devices } - if o.Role.Device.Webui.Objects.DynamicUserGroups != nil { - nestedRole.Device.Webui.Objects.DynamicUserGroups = o.Role.Device.Webui.Objects.DynamicUserGroups + if o.Role.Device.Webui.Objects.GlobalProtect != nil { + nestedRole.Device.Webui.Objects.GlobalProtect = &RoleDeviceWebuiObjectsGlobalProtect{} + if o.Role.Device.Webui.Objects.GlobalProtect.Misc != nil { + entry.Misc["RoleDeviceWebuiObjectsGlobalProtect"] = o.Role.Device.Webui.Objects.GlobalProtect.Misc + } + if o.Role.Device.Webui.Objects.GlobalProtect.HipObjects != nil { + nestedRole.Device.Webui.Objects.GlobalProtect.HipObjects = o.Role.Device.Webui.Objects.GlobalProtect.HipObjects + } + if o.Role.Device.Webui.Objects.GlobalProtect.HipProfiles != nil { + nestedRole.Device.Webui.Objects.GlobalProtect.HipProfiles = o.Role.Device.Webui.Objects.GlobalProtect.HipProfiles + } + } + if o.Role.Device.Webui.Objects.PacketBrokerProfile != nil { + nestedRole.Device.Webui.Objects.PacketBrokerProfile = o.Role.Device.Webui.Objects.PacketBrokerProfile } if o.Role.Device.Webui.Objects.Regions != nil { nestedRole.Device.Webui.Objects.Regions = o.Role.Device.Webui.Objects.Regions @@ -4819,11 +4897,8 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Role.Device.Webui.Objects.Tags != nil { nestedRole.Device.Webui.Objects.Tags = o.Role.Device.Webui.Objects.Tags } - if o.Role.Device.Webui.Objects.ApplicationGroups != nil { - nestedRole.Device.Webui.Objects.ApplicationGroups = o.Role.Device.Webui.Objects.ApplicationGroups - } - if o.Role.Device.Webui.Objects.Applications != nil { - nestedRole.Device.Webui.Objects.Applications = o.Role.Device.Webui.Objects.Applications + if o.Role.Device.Webui.Objects.Addresses != nil { + nestedRole.Device.Webui.Objects.Addresses = o.Role.Device.Webui.Objects.Addresses } if o.Role.Device.Webui.Objects.Authentication != nil { nestedRole.Device.Webui.Objects.Authentication = o.Role.Device.Webui.Objects.Authentication @@ -4846,74 +4921,35 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { nestedRole.Device.Webui.Objects.CustomObjects.Vulnerability = o.Role.Device.Webui.Objects.CustomObjects.Vulnerability } } - if o.Role.Device.Webui.Objects.SecurityProfiles != nil { - nestedRole.Device.Webui.Objects.SecurityProfiles = &RoleDeviceWebuiObjectsSecurityProfiles{} - if o.Role.Device.Webui.Objects.SecurityProfiles.Misc != nil { - entry.Misc["RoleDeviceWebuiObjectsSecurityProfiles"] = o.Role.Device.Webui.Objects.SecurityProfiles.Misc - } - if o.Role.Device.Webui.Objects.SecurityProfiles.SctpProtection != nil { - nestedRole.Device.Webui.Objects.SecurityProfiles.SctpProtection = o.Role.Device.Webui.Objects.SecurityProfiles.SctpProtection - } - if o.Role.Device.Webui.Objects.SecurityProfiles.WildfireAnalysis != nil { - nestedRole.Device.Webui.Objects.SecurityProfiles.WildfireAnalysis = o.Role.Device.Webui.Objects.SecurityProfiles.WildfireAnalysis - } - if o.Role.Device.Webui.Objects.SecurityProfiles.DataFiltering != nil { - nestedRole.Device.Webui.Objects.SecurityProfiles.DataFiltering = o.Role.Device.Webui.Objects.SecurityProfiles.DataFiltering - } - if o.Role.Device.Webui.Objects.SecurityProfiles.DosProtection != nil { - nestedRole.Device.Webui.Objects.SecurityProfiles.DosProtection = o.Role.Device.Webui.Objects.SecurityProfiles.DosProtection - } - if o.Role.Device.Webui.Objects.SecurityProfiles.FileBlocking != nil { - nestedRole.Device.Webui.Objects.SecurityProfiles.FileBlocking = o.Role.Device.Webui.Objects.SecurityProfiles.FileBlocking - } - if o.Role.Device.Webui.Objects.SecurityProfiles.GtpProtection != nil { - nestedRole.Device.Webui.Objects.SecurityProfiles.GtpProtection = o.Role.Device.Webui.Objects.SecurityProfiles.GtpProtection - } - if o.Role.Device.Webui.Objects.SecurityProfiles.AntiSpyware != nil { - nestedRole.Device.Webui.Objects.SecurityProfiles.AntiSpyware = o.Role.Device.Webui.Objects.SecurityProfiles.AntiSpyware - } - if o.Role.Device.Webui.Objects.SecurityProfiles.Antivirus != nil { - nestedRole.Device.Webui.Objects.SecurityProfiles.Antivirus = o.Role.Device.Webui.Objects.SecurityProfiles.Antivirus - } - if o.Role.Device.Webui.Objects.SecurityProfiles.UrlFiltering != nil { - nestedRole.Device.Webui.Objects.SecurityProfiles.UrlFiltering = o.Role.Device.Webui.Objects.SecurityProfiles.UrlFiltering - } - if o.Role.Device.Webui.Objects.SecurityProfiles.VulnerabilityProtection != nil { - nestedRole.Device.Webui.Objects.SecurityProfiles.VulnerabilityProtection = o.Role.Device.Webui.Objects.SecurityProfiles.VulnerabilityProtection - } + if o.Role.Device.Webui.Objects.SecurityProfileGroups != nil { + nestedRole.Device.Webui.Objects.SecurityProfileGroups = o.Role.Device.Webui.Objects.SecurityProfileGroups } - if o.Role.Device.Webui.Objects.Addresses != nil { - nestedRole.Device.Webui.Objects.Addresses = o.Role.Device.Webui.Objects.Addresses + if o.Role.Device.Webui.Objects.AddressGroups != nil { + nestedRole.Device.Webui.Objects.AddressGroups = o.Role.Device.Webui.Objects.AddressGroups + } + if o.Role.Device.Webui.Objects.ApplicationGroups != nil { + nestedRole.Device.Webui.Objects.ApplicationGroups = o.Role.Device.Webui.Objects.ApplicationGroups } if o.Role.Device.Webui.Objects.DynamicBlockLists != nil { nestedRole.Device.Webui.Objects.DynamicBlockLists = o.Role.Device.Webui.Objects.DynamicBlockLists } - if o.Role.Device.Webui.Objects.GlobalProtect != nil { - nestedRole.Device.Webui.Objects.GlobalProtect = &RoleDeviceWebuiObjectsGlobalProtect{} - if o.Role.Device.Webui.Objects.GlobalProtect.Misc != nil { - entry.Misc["RoleDeviceWebuiObjectsGlobalProtect"] = o.Role.Device.Webui.Objects.GlobalProtect.Misc - } - if o.Role.Device.Webui.Objects.GlobalProtect.HipProfiles != nil { - nestedRole.Device.Webui.Objects.GlobalProtect.HipProfiles = o.Role.Device.Webui.Objects.GlobalProtect.HipProfiles - } - if o.Role.Device.Webui.Objects.GlobalProtect.HipObjects != nil { - nestedRole.Device.Webui.Objects.GlobalProtect.HipObjects = o.Role.Device.Webui.Objects.GlobalProtect.HipObjects - } + if o.Role.Device.Webui.Objects.DynamicUserGroups != nil { + nestedRole.Device.Webui.Objects.DynamicUserGroups = o.Role.Device.Webui.Objects.DynamicUserGroups + } + if o.Role.Device.Webui.Objects.Services != nil { + nestedRole.Device.Webui.Objects.Services = o.Role.Device.Webui.Objects.Services + } + if o.Role.Device.Webui.Objects.Applications != nil { + nestedRole.Device.Webui.Objects.Applications = o.Role.Device.Webui.Objects.Applications } if o.Role.Device.Webui.Objects.LogForwarding != nil { nestedRole.Device.Webui.Objects.LogForwarding = o.Role.Device.Webui.Objects.LogForwarding } - if o.Role.Device.Webui.Objects.PacketBrokerProfile != nil { - nestedRole.Device.Webui.Objects.PacketBrokerProfile = o.Role.Device.Webui.Objects.PacketBrokerProfile - } if o.Role.Device.Webui.Objects.Sdwan != nil { nestedRole.Device.Webui.Objects.Sdwan = &RoleDeviceWebuiObjectsSdwan{} if o.Role.Device.Webui.Objects.Sdwan.Misc != nil { entry.Misc["RoleDeviceWebuiObjectsSdwan"] = o.Role.Device.Webui.Objects.Sdwan.Misc } - if o.Role.Device.Webui.Objects.Sdwan.SdwanSaasQualityProfile != nil { - nestedRole.Device.Webui.Objects.Sdwan.SdwanSaasQualityProfile = o.Role.Device.Webui.Objects.Sdwan.SdwanSaasQualityProfile - } if o.Role.Device.Webui.Objects.Sdwan.SdwanDistProfile != nil { nestedRole.Device.Webui.Objects.Sdwan.SdwanDistProfile = o.Role.Device.Webui.Objects.Sdwan.SdwanDistProfile } @@ -4923,286 +4959,250 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Role.Device.Webui.Objects.Sdwan.SdwanProfile != nil { nestedRole.Device.Webui.Objects.Sdwan.SdwanProfile = o.Role.Device.Webui.Objects.Sdwan.SdwanProfile } + if o.Role.Device.Webui.Objects.Sdwan.SdwanSaasQualityProfile != nil { + nestedRole.Device.Webui.Objects.Sdwan.SdwanSaasQualityProfile = o.Role.Device.Webui.Objects.Sdwan.SdwanSaasQualityProfile + } } - if o.Role.Device.Webui.Objects.SecurityProfileGroups != nil { - nestedRole.Device.Webui.Objects.SecurityProfileGroups = o.Role.Device.Webui.Objects.SecurityProfileGroups - } - if o.Role.Device.Webui.Objects.Services != nil { - nestedRole.Device.Webui.Objects.Services = o.Role.Device.Webui.Objects.Services - } - } - if o.Role.Device.Webui.Save != nil { - nestedRole.Device.Webui.Save = &RoleDeviceWebuiSave{} - if o.Role.Device.Webui.Save.Misc != nil { - entry.Misc["RoleDeviceWebuiSave"] = o.Role.Device.Webui.Save.Misc - } - if o.Role.Device.Webui.Save.PartialSave != nil { - nestedRole.Device.Webui.Save.PartialSave = o.Role.Device.Webui.Save.PartialSave - } - if o.Role.Device.Webui.Save.SaveForOtherAdmins != nil { - nestedRole.Device.Webui.Save.SaveForOtherAdmins = o.Role.Device.Webui.Save.SaveForOtherAdmins - } - if o.Role.Device.Webui.Save.ObjectLevelChanges != nil { - nestedRole.Device.Webui.Save.ObjectLevelChanges = o.Role.Device.Webui.Save.ObjectLevelChanges - } - } - if o.Role.Device.Webui.Tasks != nil { - nestedRole.Device.Webui.Tasks = o.Role.Device.Webui.Tasks - } - if o.Role.Device.Webui.Acc != nil { - nestedRole.Device.Webui.Acc = o.Role.Device.Webui.Acc - } - if o.Role.Device.Webui.Device != nil { - nestedRole.Device.Webui.Device = &RoleDeviceWebuiDevice{} - if o.Role.Device.Webui.Device.Misc != nil { - entry.Misc["RoleDeviceWebuiDevice"] = o.Role.Device.Webui.Device.Misc - } - if o.Role.Device.Webui.Device.Software != nil { - nestedRole.Device.Webui.Device.Software = o.Role.Device.Webui.Device.Software - } - if o.Role.Device.Webui.Device.PolicyRecommendations != nil { - nestedRole.Device.Webui.Device.PolicyRecommendations = &RoleDeviceWebuiDevicePolicyRecommendations{} - if o.Role.Device.Webui.Device.PolicyRecommendations.Misc != nil { - entry.Misc["RoleDeviceWebuiDevicePolicyRecommendations"] = o.Role.Device.Webui.Device.PolicyRecommendations.Misc + if o.Role.Device.Webui.Objects.SecurityProfiles != nil { + nestedRole.Device.Webui.Objects.SecurityProfiles = &RoleDeviceWebuiObjectsSecurityProfiles{} + if o.Role.Device.Webui.Objects.SecurityProfiles.Misc != nil { + entry.Misc["RoleDeviceWebuiObjectsSecurityProfiles"] = o.Role.Device.Webui.Objects.SecurityProfiles.Misc } - if o.Role.Device.Webui.Device.PolicyRecommendations.Iot != nil { - nestedRole.Device.Webui.Device.PolicyRecommendations.Iot = o.Role.Device.Webui.Device.PolicyRecommendations.Iot + if o.Role.Device.Webui.Objects.SecurityProfiles.Antivirus != nil { + nestedRole.Device.Webui.Objects.SecurityProfiles.Antivirus = o.Role.Device.Webui.Objects.SecurityProfiles.Antivirus } - if o.Role.Device.Webui.Device.PolicyRecommendations.Saas != nil { - nestedRole.Device.Webui.Device.PolicyRecommendations.Saas = o.Role.Device.Webui.Device.PolicyRecommendations.Saas + if o.Role.Device.Webui.Objects.SecurityProfiles.DosProtection != nil { + nestedRole.Device.Webui.Objects.SecurityProfiles.DosProtection = o.Role.Device.Webui.Objects.SecurityProfiles.DosProtection } - } - if o.Role.Device.Webui.Device.Administrators != nil { - nestedRole.Device.Webui.Device.Administrators = o.Role.Device.Webui.Device.Administrators - } - if o.Role.Device.Webui.Device.CertificateManagement != nil { - nestedRole.Device.Webui.Device.CertificateManagement = &RoleDeviceWebuiDeviceCertificateManagement{} - if o.Role.Device.Webui.Device.CertificateManagement.Misc != nil { - entry.Misc["RoleDeviceWebuiDeviceCertificateManagement"] = o.Role.Device.Webui.Device.CertificateManagement.Misc + if o.Role.Device.Webui.Objects.SecurityProfiles.FileBlocking != nil { + nestedRole.Device.Webui.Objects.SecurityProfiles.FileBlocking = o.Role.Device.Webui.Objects.SecurityProfiles.FileBlocking } - if o.Role.Device.Webui.Device.CertificateManagement.SslDecryptionExclusion != nil { - nestedRole.Device.Webui.Device.CertificateManagement.SslDecryptionExclusion = o.Role.Device.Webui.Device.CertificateManagement.SslDecryptionExclusion + if o.Role.Device.Webui.Objects.SecurityProfiles.GtpProtection != nil { + nestedRole.Device.Webui.Objects.SecurityProfiles.GtpProtection = o.Role.Device.Webui.Objects.SecurityProfiles.GtpProtection } - if o.Role.Device.Webui.Device.CertificateManagement.SslTlsServiceProfile != nil { - nestedRole.Device.Webui.Device.CertificateManagement.SslTlsServiceProfile = o.Role.Device.Webui.Device.CertificateManagement.SslTlsServiceProfile + if o.Role.Device.Webui.Objects.SecurityProfiles.WildfireAnalysis != nil { + nestedRole.Device.Webui.Objects.SecurityProfiles.WildfireAnalysis = o.Role.Device.Webui.Objects.SecurityProfiles.WildfireAnalysis } - if o.Role.Device.Webui.Device.CertificateManagement.CertificateProfile != nil { - nestedRole.Device.Webui.Device.CertificateManagement.CertificateProfile = o.Role.Device.Webui.Device.CertificateManagement.CertificateProfile + if o.Role.Device.Webui.Objects.SecurityProfiles.AntiSpyware != nil { + nestedRole.Device.Webui.Objects.SecurityProfiles.AntiSpyware = o.Role.Device.Webui.Objects.SecurityProfiles.AntiSpyware } - if o.Role.Device.Webui.Device.CertificateManagement.Certificates != nil { - nestedRole.Device.Webui.Device.CertificateManagement.Certificates = o.Role.Device.Webui.Device.CertificateManagement.Certificates + if o.Role.Device.Webui.Objects.SecurityProfiles.DataFiltering != nil { + nestedRole.Device.Webui.Objects.SecurityProfiles.DataFiltering = o.Role.Device.Webui.Objects.SecurityProfiles.DataFiltering } - if o.Role.Device.Webui.Device.CertificateManagement.OcspResponder != nil { - nestedRole.Device.Webui.Device.CertificateManagement.OcspResponder = o.Role.Device.Webui.Device.CertificateManagement.OcspResponder + if o.Role.Device.Webui.Objects.SecurityProfiles.SctpProtection != nil { + nestedRole.Device.Webui.Objects.SecurityProfiles.SctpProtection = o.Role.Device.Webui.Objects.SecurityProfiles.SctpProtection } - if o.Role.Device.Webui.Device.CertificateManagement.Scep != nil { - nestedRole.Device.Webui.Device.CertificateManagement.Scep = o.Role.Device.Webui.Device.CertificateManagement.Scep + if o.Role.Device.Webui.Objects.SecurityProfiles.UrlFiltering != nil { + nestedRole.Device.Webui.Objects.SecurityProfiles.UrlFiltering = o.Role.Device.Webui.Objects.SecurityProfiles.UrlFiltering } - if o.Role.Device.Webui.Device.CertificateManagement.SshServiceProfile != nil { - nestedRole.Device.Webui.Device.CertificateManagement.SshServiceProfile = o.Role.Device.Webui.Device.CertificateManagement.SshServiceProfile + if o.Role.Device.Webui.Objects.SecurityProfiles.VulnerabilityProtection != nil { + nestedRole.Device.Webui.Objects.SecurityProfiles.VulnerabilityProtection = o.Role.Device.Webui.Objects.SecurityProfiles.VulnerabilityProtection } } - if o.Role.Device.Webui.Device.LogFwdCard != nil { - nestedRole.Device.Webui.Device.LogFwdCard = o.Role.Device.Webui.Device.LogFwdCard + } + if o.Role.Device.Webui.Policies != nil { + nestedRole.Device.Webui.Policies = &RoleDeviceWebuiPolicies{} + if o.Role.Device.Webui.Policies.Misc != nil { + entry.Misc["RoleDeviceWebuiPolicies"] = o.Role.Device.Webui.Policies.Misc } - if o.Role.Device.Webui.Device.LogSettings != nil { - nestedRole.Device.Webui.Device.LogSettings = &RoleDeviceWebuiDeviceLogSettings{} - if o.Role.Device.Webui.Device.LogSettings.Misc != nil { - entry.Misc["RoleDeviceWebuiDeviceLogSettings"] = o.Role.Device.Webui.Device.LogSettings.Misc - } - if o.Role.Device.Webui.Device.LogSettings.Globalprotect != nil { - nestedRole.Device.Webui.Device.LogSettings.Globalprotect = o.Role.Device.Webui.Device.LogSettings.Globalprotect - } - if o.Role.Device.Webui.Device.LogSettings.Hipmatch != nil { - nestedRole.Device.Webui.Device.LogSettings.Hipmatch = o.Role.Device.Webui.Device.LogSettings.Hipmatch - } - if o.Role.Device.Webui.Device.LogSettings.Iptag != nil { - nestedRole.Device.Webui.Device.LogSettings.Iptag = o.Role.Device.Webui.Device.LogSettings.Iptag - } - if o.Role.Device.Webui.Device.LogSettings.ManageLog != nil { - nestedRole.Device.Webui.Device.LogSettings.ManageLog = o.Role.Device.Webui.Device.LogSettings.ManageLog - } - if o.Role.Device.Webui.Device.LogSettings.System != nil { - nestedRole.Device.Webui.Device.LogSettings.System = o.Role.Device.Webui.Device.LogSettings.System - } - if o.Role.Device.Webui.Device.LogSettings.UserId != nil { - nestedRole.Device.Webui.Device.LogSettings.UserId = o.Role.Device.Webui.Device.LogSettings.UserId - } - if o.Role.Device.Webui.Device.LogSettings.Correlation != nil { - nestedRole.Device.Webui.Device.LogSettings.Correlation = o.Role.Device.Webui.Device.LogSettings.Correlation - } - if o.Role.Device.Webui.Device.LogSettings.Config != nil { - nestedRole.Device.Webui.Device.LogSettings.Config = o.Role.Device.Webui.Device.LogSettings.Config - } - if o.Role.Device.Webui.Device.LogSettings.CcAlarm != nil { - nestedRole.Device.Webui.Device.LogSettings.CcAlarm = o.Role.Device.Webui.Device.LogSettings.CcAlarm - } + if o.Role.Device.Webui.Policies.NetworkPacketBrokerRulebase != nil { + nestedRole.Device.Webui.Policies.NetworkPacketBrokerRulebase = o.Role.Device.Webui.Policies.NetworkPacketBrokerRulebase } - if o.Role.Device.Webui.Device.ScheduledLogExport != nil { - nestedRole.Device.Webui.Device.ScheduledLogExport = o.Role.Device.Webui.Device.ScheduledLogExport + if o.Role.Device.Webui.Policies.SecurityRulebase != nil { + nestedRole.Device.Webui.Policies.SecurityRulebase = o.Role.Device.Webui.Policies.SecurityRulebase } - if o.Role.Device.Webui.Device.VirtualSystems != nil { - nestedRole.Device.Webui.Device.VirtualSystems = o.Role.Device.Webui.Device.VirtualSystems + if o.Role.Device.Webui.Policies.SslDecryptionRulebase != nil { + nestedRole.Device.Webui.Policies.SslDecryptionRulebase = o.Role.Device.Webui.Policies.SslDecryptionRulebase } - if o.Role.Device.Webui.Device.AdminRoles != nil { - nestedRole.Device.Webui.Device.AdminRoles = o.Role.Device.Webui.Device.AdminRoles + if o.Role.Device.Webui.Policies.AuthenticationRulebase != nil { + nestedRole.Device.Webui.Policies.AuthenticationRulebase = o.Role.Device.Webui.Policies.AuthenticationRulebase } - if o.Role.Device.Webui.Device.Licenses != nil { - nestedRole.Device.Webui.Device.Licenses = o.Role.Device.Webui.Device.Licenses + if o.Role.Device.Webui.Policies.NatRulebase != nil { + nestedRole.Device.Webui.Policies.NatRulebase = o.Role.Device.Webui.Policies.NatRulebase } - if o.Role.Device.Webui.Device.SharedGateways != nil { - nestedRole.Device.Webui.Device.SharedGateways = o.Role.Device.Webui.Device.SharedGateways + if o.Role.Device.Webui.Policies.PbfRulebase != nil { + nestedRole.Device.Webui.Policies.PbfRulebase = o.Role.Device.Webui.Policies.PbfRulebase } - if o.Role.Device.Webui.Device.BlockPages != nil { - nestedRole.Device.Webui.Device.BlockPages = o.Role.Device.Webui.Device.BlockPages + if o.Role.Device.Webui.Policies.QosRulebase != nil { + nestedRole.Device.Webui.Policies.QosRulebase = o.Role.Device.Webui.Policies.QosRulebase + } + if o.Role.Device.Webui.Policies.RuleHitCountReset != nil { + nestedRole.Device.Webui.Policies.RuleHitCountReset = o.Role.Device.Webui.Policies.RuleHitCountReset + } + if o.Role.Device.Webui.Policies.SdwanRulebase != nil { + nestedRole.Device.Webui.Policies.SdwanRulebase = o.Role.Device.Webui.Policies.SdwanRulebase + } + if o.Role.Device.Webui.Policies.TunnelInspectRulebase != nil { + nestedRole.Device.Webui.Policies.TunnelInspectRulebase = o.Role.Device.Webui.Policies.TunnelInspectRulebase + } + if o.Role.Device.Webui.Policies.ApplicationOverrideRulebase != nil { + nestedRole.Device.Webui.Policies.ApplicationOverrideRulebase = o.Role.Device.Webui.Policies.ApplicationOverrideRulebase + } + if o.Role.Device.Webui.Policies.DosRulebase != nil { + nestedRole.Device.Webui.Policies.DosRulebase = o.Role.Device.Webui.Policies.DosRulebase + } + } + if o.Role.Device.Webui.Acc != nil { + nestedRole.Device.Webui.Acc = o.Role.Device.Webui.Acc + } + if o.Role.Device.Webui.Dashboard != nil { + nestedRole.Device.Webui.Dashboard = o.Role.Device.Webui.Dashboard + } + if o.Role.Device.Webui.Network != nil { + nestedRole.Device.Webui.Network = &RoleDeviceWebuiNetwork{} + if o.Role.Device.Webui.Network.Misc != nil { + entry.Misc["RoleDeviceWebuiNetwork"] = o.Role.Device.Webui.Network.Misc + } + if o.Role.Device.Webui.Network.Lldp != nil { + nestedRole.Device.Webui.Network.Lldp = o.Role.Device.Webui.Network.Lldp } - if o.Role.Device.Webui.Device.DataRedistribution != nil { - nestedRole.Device.Webui.Device.DataRedistribution = o.Role.Device.Webui.Device.DataRedistribution + if o.Role.Device.Webui.Network.Qos != nil { + nestedRole.Device.Webui.Network.Qos = o.Role.Device.Webui.Network.Qos } - if o.Role.Device.Webui.Device.DynamicUpdates != nil { - nestedRole.Device.Webui.Device.DynamicUpdates = o.Role.Device.Webui.Device.DynamicUpdates + if o.Role.Device.Webui.Network.VirtualRouters != nil { + nestedRole.Device.Webui.Network.VirtualRouters = o.Role.Device.Webui.Network.VirtualRouters } - if o.Role.Device.Webui.Device.MasterKey != nil { - nestedRole.Device.Webui.Device.MasterKey = o.Role.Device.Webui.Device.MasterKey + if o.Role.Device.Webui.Network.Dhcp != nil { + nestedRole.Device.Webui.Network.Dhcp = o.Role.Device.Webui.Network.Dhcp } - if o.Role.Device.Webui.Device.Setup != nil { - nestedRole.Device.Webui.Device.Setup = &RoleDeviceWebuiDeviceSetup{} - if o.Role.Device.Webui.Device.Setup.Misc != nil { - entry.Misc["RoleDeviceWebuiDeviceSetup"] = o.Role.Device.Webui.Device.Setup.Misc - } - if o.Role.Device.Webui.Device.Setup.Management != nil { - nestedRole.Device.Webui.Device.Setup.Management = o.Role.Device.Webui.Device.Setup.Management - } - if o.Role.Device.Webui.Device.Setup.Operations != nil { - nestedRole.Device.Webui.Device.Setup.Operations = o.Role.Device.Webui.Device.Setup.Operations - } - if o.Role.Device.Webui.Device.Setup.Services != nil { - nestedRole.Device.Webui.Device.Setup.Services = o.Role.Device.Webui.Device.Setup.Services - } - if o.Role.Device.Webui.Device.Setup.Wildfire != nil { - nestedRole.Device.Webui.Device.Setup.Wildfire = o.Role.Device.Webui.Device.Setup.Wildfire + if o.Role.Device.Webui.Network.GlobalProtect != nil { + nestedRole.Device.Webui.Network.GlobalProtect = &RoleDeviceWebuiNetworkGlobalProtect{} + if o.Role.Device.Webui.Network.GlobalProtect.Misc != nil { + entry.Misc["RoleDeviceWebuiNetworkGlobalProtect"] = o.Role.Device.Webui.Network.GlobalProtect.Misc } - if o.Role.Device.Webui.Device.Setup.Telemetry != nil { - nestedRole.Device.Webui.Device.Setup.Telemetry = o.Role.Device.Webui.Device.Setup.Telemetry + if o.Role.Device.Webui.Network.GlobalProtect.ClientlessApps != nil { + nestedRole.Device.Webui.Network.GlobalProtect.ClientlessApps = o.Role.Device.Webui.Network.GlobalProtect.ClientlessApps } - if o.Role.Device.Webui.Device.Setup.ContentId != nil { - nestedRole.Device.Webui.Device.Setup.ContentId = o.Role.Device.Webui.Device.Setup.ContentId + if o.Role.Device.Webui.Network.GlobalProtect.Gateways != nil { + nestedRole.Device.Webui.Network.GlobalProtect.Gateways = o.Role.Device.Webui.Network.GlobalProtect.Gateways } - if o.Role.Device.Webui.Device.Setup.Hsm != nil { - nestedRole.Device.Webui.Device.Setup.Hsm = o.Role.Device.Webui.Device.Setup.Hsm + if o.Role.Device.Webui.Network.GlobalProtect.Mdm != nil { + nestedRole.Device.Webui.Network.GlobalProtect.Mdm = o.Role.Device.Webui.Network.GlobalProtect.Mdm } - if o.Role.Device.Webui.Device.Setup.Interfaces != nil { - nestedRole.Device.Webui.Device.Setup.Interfaces = o.Role.Device.Webui.Device.Setup.Interfaces + if o.Role.Device.Webui.Network.GlobalProtect.Portals != nil { + nestedRole.Device.Webui.Network.GlobalProtect.Portals = o.Role.Device.Webui.Network.GlobalProtect.Portals } - if o.Role.Device.Webui.Device.Setup.Session != nil { - nestedRole.Device.Webui.Device.Setup.Session = o.Role.Device.Webui.Device.Setup.Session + if o.Role.Device.Webui.Network.GlobalProtect.ClientlessAppGroups != nil { + nestedRole.Device.Webui.Network.GlobalProtect.ClientlessAppGroups = o.Role.Device.Webui.Network.GlobalProtect.ClientlessAppGroups } } - if o.Role.Device.Webui.Device.Support != nil { - nestedRole.Device.Webui.Device.Support = o.Role.Device.Webui.Device.Support - } - if o.Role.Device.Webui.Device.Troubleshooting != nil { - nestedRole.Device.Webui.Device.Troubleshooting = o.Role.Device.Webui.Device.Troubleshooting + if o.Role.Device.Webui.Network.GreTunnels != nil { + nestedRole.Device.Webui.Network.GreTunnels = o.Role.Device.Webui.Network.GreTunnels } - if o.Role.Device.Webui.Device.AccessDomain != nil { - nestedRole.Device.Webui.Device.AccessDomain = o.Role.Device.Webui.Device.AccessDomain + if o.Role.Device.Webui.Network.DnsProxy != nil { + nestedRole.Device.Webui.Network.DnsProxy = o.Role.Device.Webui.Network.DnsProxy } - if o.Role.Device.Webui.Device.ConfigAudit != nil { - nestedRole.Device.Webui.Device.ConfigAudit = o.Role.Device.Webui.Device.ConfigAudit + if o.Role.Device.Webui.Network.Interfaces != nil { + nestedRole.Device.Webui.Network.Interfaces = o.Role.Device.Webui.Network.Interfaces } - if o.Role.Device.Webui.Device.HighAvailability != nil { - nestedRole.Device.Webui.Device.HighAvailability = o.Role.Device.Webui.Device.HighAvailability + if o.Role.Device.Webui.Network.Zones != nil { + nestedRole.Device.Webui.Network.Zones = o.Role.Device.Webui.Network.Zones } - if o.Role.Device.Webui.Device.AuthenticationProfile != nil { - nestedRole.Device.Webui.Device.AuthenticationProfile = o.Role.Device.Webui.Device.AuthenticationProfile + if o.Role.Device.Webui.Network.VirtualWires != nil { + nestedRole.Device.Webui.Network.VirtualWires = o.Role.Device.Webui.Network.VirtualWires } - if o.Role.Device.Webui.Device.DeviceQuarantine != nil { - nestedRole.Device.Webui.Device.DeviceQuarantine = o.Role.Device.Webui.Device.DeviceQuarantine + if o.Role.Device.Webui.Network.IpsecTunnels != nil { + nestedRole.Device.Webui.Network.IpsecTunnels = o.Role.Device.Webui.Network.IpsecTunnels } - if o.Role.Device.Webui.Device.ServerProfile != nil { - nestedRole.Device.Webui.Device.ServerProfile = &RoleDeviceWebuiDeviceServerProfile{} - if o.Role.Device.Webui.Device.ServerProfile.Misc != nil { - entry.Misc["RoleDeviceWebuiDeviceServerProfile"] = o.Role.Device.Webui.Device.ServerProfile.Misc + if o.Role.Device.Webui.Network.NetworkProfiles != nil { + nestedRole.Device.Webui.Network.NetworkProfiles = &RoleDeviceWebuiNetworkNetworkProfiles{} + if o.Role.Device.Webui.Network.NetworkProfiles.Misc != nil { + entry.Misc["RoleDeviceWebuiNetworkNetworkProfiles"] = o.Role.Device.Webui.Network.NetworkProfiles.Misc } - if o.Role.Device.Webui.Device.ServerProfile.SnmpTrap != nil { - nestedRole.Device.Webui.Device.ServerProfile.SnmpTrap = o.Role.Device.Webui.Device.ServerProfile.SnmpTrap + if o.Role.Device.Webui.Network.NetworkProfiles.BfdProfile != nil { + nestedRole.Device.Webui.Network.NetworkProfiles.BfdProfile = o.Role.Device.Webui.Network.NetworkProfiles.BfdProfile } - if o.Role.Device.Webui.Device.ServerProfile.Tacplus != nil { - nestedRole.Device.Webui.Device.ServerProfile.Tacplus = o.Role.Device.Webui.Device.ServerProfile.Tacplus + if o.Role.Device.Webui.Network.NetworkProfiles.IkeCrypto != nil { + nestedRole.Device.Webui.Network.NetworkProfiles.IkeCrypto = o.Role.Device.Webui.Network.NetworkProfiles.IkeCrypto } - if o.Role.Device.Webui.Device.ServerProfile.Dns != nil { - nestedRole.Device.Webui.Device.ServerProfile.Dns = o.Role.Device.Webui.Device.ServerProfile.Dns + if o.Role.Device.Webui.Network.NetworkProfiles.QosProfile != nil { + nestedRole.Device.Webui.Network.NetworkProfiles.QosProfile = o.Role.Device.Webui.Network.NetworkProfiles.QosProfile } - if o.Role.Device.Webui.Device.ServerProfile.Kerberos != nil { - nestedRole.Device.Webui.Device.ServerProfile.Kerberos = o.Role.Device.Webui.Device.ServerProfile.Kerberos + if o.Role.Device.Webui.Network.NetworkProfiles.TunnelMonitor != nil { + nestedRole.Device.Webui.Network.NetworkProfiles.TunnelMonitor = o.Role.Device.Webui.Network.NetworkProfiles.TunnelMonitor } - if o.Role.Device.Webui.Device.ServerProfile.SamlIdp != nil { - nestedRole.Device.Webui.Device.ServerProfile.SamlIdp = o.Role.Device.Webui.Device.ServerProfile.SamlIdp + if o.Role.Device.Webui.Network.NetworkProfiles.ZoneProtection != nil { + nestedRole.Device.Webui.Network.NetworkProfiles.ZoneProtection = o.Role.Device.Webui.Network.NetworkProfiles.ZoneProtection } - if o.Role.Device.Webui.Device.ServerProfile.Mfa != nil { - nestedRole.Device.Webui.Device.ServerProfile.Mfa = o.Role.Device.Webui.Device.ServerProfile.Mfa + if o.Role.Device.Webui.Network.NetworkProfiles.GpAppIpsecCrypto != nil { + nestedRole.Device.Webui.Network.NetworkProfiles.GpAppIpsecCrypto = o.Role.Device.Webui.Network.NetworkProfiles.GpAppIpsecCrypto } - if o.Role.Device.Webui.Device.ServerProfile.Netflow != nil { - nestedRole.Device.Webui.Device.ServerProfile.Netflow = o.Role.Device.Webui.Device.ServerProfile.Netflow + if o.Role.Device.Webui.Network.NetworkProfiles.IkeGateways != nil { + nestedRole.Device.Webui.Network.NetworkProfiles.IkeGateways = o.Role.Device.Webui.Network.NetworkProfiles.IkeGateways } - if o.Role.Device.Webui.Device.ServerProfile.Radius != nil { - nestedRole.Device.Webui.Device.ServerProfile.Radius = o.Role.Device.Webui.Device.ServerProfile.Radius + if o.Role.Device.Webui.Network.NetworkProfiles.InterfaceMgmt != nil { + nestedRole.Device.Webui.Network.NetworkProfiles.InterfaceMgmt = o.Role.Device.Webui.Network.NetworkProfiles.InterfaceMgmt } - if o.Role.Device.Webui.Device.ServerProfile.Scp != nil { - nestedRole.Device.Webui.Device.ServerProfile.Scp = o.Role.Device.Webui.Device.ServerProfile.Scp + if o.Role.Device.Webui.Network.NetworkProfiles.IpsecCrypto != nil { + nestedRole.Device.Webui.Network.NetworkProfiles.IpsecCrypto = o.Role.Device.Webui.Network.NetworkProfiles.IpsecCrypto } - if o.Role.Device.Webui.Device.ServerProfile.Syslog != nil { - nestedRole.Device.Webui.Device.ServerProfile.Syslog = o.Role.Device.Webui.Device.ServerProfile.Syslog + if o.Role.Device.Webui.Network.NetworkProfiles.LldpProfile != nil { + nestedRole.Device.Webui.Network.NetworkProfiles.LldpProfile = o.Role.Device.Webui.Network.NetworkProfiles.LldpProfile } - if o.Role.Device.Webui.Device.ServerProfile.Email != nil { - nestedRole.Device.Webui.Device.ServerProfile.Email = o.Role.Device.Webui.Device.ServerProfile.Email + } + if o.Role.Device.Webui.Network.Routing != nil { + nestedRole.Device.Webui.Network.Routing = &RoleDeviceWebuiNetworkRouting{} + if o.Role.Device.Webui.Network.Routing.Misc != nil { + entry.Misc["RoleDeviceWebuiNetworkRouting"] = o.Role.Device.Webui.Network.Routing.Misc } - if o.Role.Device.Webui.Device.ServerProfile.Http != nil { - nestedRole.Device.Webui.Device.ServerProfile.Http = o.Role.Device.Webui.Device.ServerProfile.Http + if o.Role.Device.Webui.Network.Routing.LogicalRouters != nil { + nestedRole.Device.Webui.Network.Routing.LogicalRouters = o.Role.Device.Webui.Network.Routing.LogicalRouters } - if o.Role.Device.Webui.Device.ServerProfile.Ldap != nil { - nestedRole.Device.Webui.Device.ServerProfile.Ldap = o.Role.Device.Webui.Device.ServerProfile.Ldap + if o.Role.Device.Webui.Network.Routing.RoutingProfiles != nil { + nestedRole.Device.Webui.Network.Routing.RoutingProfiles = &RoleDeviceWebuiNetworkRoutingRoutingProfiles{} + if o.Role.Device.Webui.Network.Routing.RoutingProfiles.Misc != nil { + entry.Misc["RoleDeviceWebuiNetworkRoutingRoutingProfiles"] = o.Role.Device.Webui.Network.Routing.RoutingProfiles.Misc + } + if o.Role.Device.Webui.Network.Routing.RoutingProfiles.Bgp != nil { + nestedRole.Device.Webui.Network.Routing.RoutingProfiles.Bgp = o.Role.Device.Webui.Network.Routing.RoutingProfiles.Bgp + } + if o.Role.Device.Webui.Network.Routing.RoutingProfiles.Filters != nil { + nestedRole.Device.Webui.Network.Routing.RoutingProfiles.Filters = o.Role.Device.Webui.Network.Routing.RoutingProfiles.Filters + } + if o.Role.Device.Webui.Network.Routing.RoutingProfiles.Multicast != nil { + nestedRole.Device.Webui.Network.Routing.RoutingProfiles.Multicast = o.Role.Device.Webui.Network.Routing.RoutingProfiles.Multicast + } + if o.Role.Device.Webui.Network.Routing.RoutingProfiles.Ospf != nil { + nestedRole.Device.Webui.Network.Routing.RoutingProfiles.Ospf = o.Role.Device.Webui.Network.Routing.RoutingProfiles.Ospf + } + if o.Role.Device.Webui.Network.Routing.RoutingProfiles.Ospfv3 != nil { + nestedRole.Device.Webui.Network.Routing.RoutingProfiles.Ospfv3 = o.Role.Device.Webui.Network.Routing.RoutingProfiles.Ospfv3 + } + if o.Role.Device.Webui.Network.Routing.RoutingProfiles.Ripv2 != nil { + nestedRole.Device.Webui.Network.Routing.RoutingProfiles.Ripv2 = o.Role.Device.Webui.Network.Routing.RoutingProfiles.Ripv2 + } + if o.Role.Device.Webui.Network.Routing.RoutingProfiles.Bfd != nil { + nestedRole.Device.Webui.Network.Routing.RoutingProfiles.Bfd = o.Role.Device.Webui.Network.Routing.RoutingProfiles.Bfd + } } } - if o.Role.Device.Webui.Device.UserIdentification != nil { - nestedRole.Device.Webui.Device.UserIdentification = o.Role.Device.Webui.Device.UserIdentification + if o.Role.Device.Webui.Network.SdwanInterfaceProfile != nil { + nestedRole.Device.Webui.Network.SdwanInterfaceProfile = o.Role.Device.Webui.Network.SdwanInterfaceProfile } - if o.Role.Device.Webui.Device.VmInfoSource != nil { - nestedRole.Device.Webui.Device.VmInfoSource = o.Role.Device.Webui.Device.VmInfoSource + if o.Role.Device.Webui.Network.Vlans != nil { + nestedRole.Device.Webui.Network.Vlans = o.Role.Device.Webui.Network.Vlans } - if o.Role.Device.Webui.Device.AuthenticationSequence != nil { - nestedRole.Device.Webui.Device.AuthenticationSequence = o.Role.Device.Webui.Device.AuthenticationSequence + if o.Role.Device.Webui.Network.SecureWebGateway != nil { + nestedRole.Device.Webui.Network.SecureWebGateway = o.Role.Device.Webui.Network.SecureWebGateway } - if o.Role.Device.Webui.Device.LocalUserDatabase != nil { - nestedRole.Device.Webui.Device.LocalUserDatabase = &RoleDeviceWebuiDeviceLocalUserDatabase{} - if o.Role.Device.Webui.Device.LocalUserDatabase.Misc != nil { - entry.Misc["RoleDeviceWebuiDeviceLocalUserDatabase"] = o.Role.Device.Webui.Device.LocalUserDatabase.Misc - } - if o.Role.Device.Webui.Device.LocalUserDatabase.UserGroups != nil { - nestedRole.Device.Webui.Device.LocalUserDatabase.UserGroups = o.Role.Device.Webui.Device.LocalUserDatabase.UserGroups - } - if o.Role.Device.Webui.Device.LocalUserDatabase.Users != nil { - nestedRole.Device.Webui.Device.LocalUserDatabase.Users = o.Role.Device.Webui.Device.LocalUserDatabase.Users - } + } + if o.Role.Device.Webui.Privacy != nil { + nestedRole.Device.Webui.Privacy = &RoleDeviceWebuiPrivacy{} + if o.Role.Device.Webui.Privacy.Misc != nil { + entry.Misc["RoleDeviceWebuiPrivacy"] = o.Role.Device.Webui.Privacy.Misc } - if o.Role.Device.Webui.Device.Plugins != nil { - nestedRole.Device.Webui.Device.Plugins = o.Role.Device.Webui.Device.Plugins + if o.Role.Device.Webui.Privacy.ShowFullIpAddresses != nil { + nestedRole.Device.Webui.Privacy.ShowFullIpAddresses = o.Role.Device.Webui.Privacy.ShowFullIpAddresses } - if o.Role.Device.Webui.Device.DhcpSyslogServer != nil { - nestedRole.Device.Webui.Device.DhcpSyslogServer = o.Role.Device.Webui.Device.DhcpSyslogServer + if o.Role.Device.Webui.Privacy.ShowUserNamesInLogsAndReports != nil { + nestedRole.Device.Webui.Privacy.ShowUserNamesInLogsAndReports = o.Role.Device.Webui.Privacy.ShowUserNamesInLogsAndReports } - if o.Role.Device.Webui.Device.GlobalProtectClient != nil { - nestedRole.Device.Webui.Device.GlobalProtectClient = o.Role.Device.Webui.Device.GlobalProtectClient + if o.Role.Device.Webui.Privacy.ViewPcapFiles != nil { + nestedRole.Device.Webui.Privacy.ViewPcapFiles = o.Role.Device.Webui.Privacy.ViewPcapFiles } } - if o.Role.Device.Webui.Global != nil { - nestedRole.Device.Webui.Global = &RoleDeviceWebuiGlobal{} - if o.Role.Device.Webui.Global.Misc != nil { - entry.Misc["RoleDeviceWebuiGlobal"] = o.Role.Device.Webui.Global.Misc - } - if o.Role.Device.Webui.Global.SystemAlarms != nil { - nestedRole.Device.Webui.Global.SystemAlarms = o.Role.Device.Webui.Global.SystemAlarms - } + if o.Role.Device.Webui.Tasks != nil { + nestedRole.Device.Webui.Tasks = o.Role.Device.Webui.Tasks } } if o.Role.Device.Xmlapi != nil { @@ -5210,14 +5210,20 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Role.Device.Xmlapi.Misc != nil { entry.Misc["RoleDeviceXmlapi"] = o.Role.Device.Xmlapi.Misc } + if o.Role.Device.Xmlapi.Commit != nil { + nestedRole.Device.Xmlapi.Commit = o.Role.Device.Xmlapi.Commit + } + if o.Role.Device.Xmlapi.Import != nil { + nestedRole.Device.Xmlapi.Import = o.Role.Device.Xmlapi.Import + } if o.Role.Device.Xmlapi.Op != nil { nestedRole.Device.Xmlapi.Op = o.Role.Device.Xmlapi.Op } if o.Role.Device.Xmlapi.Report != nil { nestedRole.Device.Xmlapi.Report = o.Role.Device.Xmlapi.Report } - if o.Role.Device.Xmlapi.Commit != nil { - nestedRole.Device.Xmlapi.Commit = o.Role.Device.Xmlapi.Commit + if o.Role.Device.Xmlapi.UserId != nil { + nestedRole.Device.Xmlapi.UserId = o.Role.Device.Xmlapi.UserId } if o.Role.Device.Xmlapi.Config != nil { nestedRole.Device.Xmlapi.Config = o.Role.Device.Xmlapi.Config @@ -5225,18 +5231,12 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Role.Device.Xmlapi.Export != nil { nestedRole.Device.Xmlapi.Export = o.Role.Device.Xmlapi.Export } - if o.Role.Device.Xmlapi.Import != nil { - nestedRole.Device.Xmlapi.Import = o.Role.Device.Xmlapi.Import - } if o.Role.Device.Xmlapi.Iot != nil { nestedRole.Device.Xmlapi.Iot = o.Role.Device.Xmlapi.Iot } if o.Role.Device.Xmlapi.Log != nil { nestedRole.Device.Xmlapi.Log = o.Role.Device.Xmlapi.Log } - if o.Role.Device.Xmlapi.UserId != nil { - nestedRole.Device.Xmlapi.UserId = o.Role.Device.Xmlapi.UserId - } } } if o.Role.Vsys != nil { @@ -5252,20 +5252,38 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Role.Vsys.Restapi.Misc != nil { entry.Misc["RoleVsysRestapi"] = o.Role.Vsys.Restapi.Misc } + if o.Role.Vsys.Restapi.Device != nil { + nestedRole.Vsys.Restapi.Device = &RoleVsysRestapiDevice{} + if o.Role.Vsys.Restapi.Device.Misc != nil { + entry.Misc["RoleVsysRestapiDevice"] = o.Role.Vsys.Restapi.Device.Misc + } + if o.Role.Vsys.Restapi.Device.EmailServerProfiles != nil { + nestedRole.Vsys.Restapi.Device.EmailServerProfiles = o.Role.Vsys.Restapi.Device.EmailServerProfiles + } + if o.Role.Vsys.Restapi.Device.HttpServerProfiles != nil { + nestedRole.Vsys.Restapi.Device.HttpServerProfiles = o.Role.Vsys.Restapi.Device.HttpServerProfiles + } + if o.Role.Vsys.Restapi.Device.LdapServerProfiles != nil { + nestedRole.Vsys.Restapi.Device.LdapServerProfiles = o.Role.Vsys.Restapi.Device.LdapServerProfiles + } + if o.Role.Vsys.Restapi.Device.LogInterfaceSetting != nil { + nestedRole.Vsys.Restapi.Device.LogInterfaceSetting = o.Role.Vsys.Restapi.Device.LogInterfaceSetting + } + if o.Role.Vsys.Restapi.Device.SnmpTrapServerProfiles != nil { + nestedRole.Vsys.Restapi.Device.SnmpTrapServerProfiles = o.Role.Vsys.Restapi.Device.SnmpTrapServerProfiles + } + if o.Role.Vsys.Restapi.Device.SyslogServerProfiles != nil { + nestedRole.Vsys.Restapi.Device.SyslogServerProfiles = o.Role.Vsys.Restapi.Device.SyslogServerProfiles + } + if o.Role.Vsys.Restapi.Device.VirtualSystems != nil { + nestedRole.Vsys.Restapi.Device.VirtualSystems = o.Role.Vsys.Restapi.Device.VirtualSystems + } + } if o.Role.Vsys.Restapi.Network != nil { nestedRole.Vsys.Restapi.Network = &RoleVsysRestapiNetwork{} if o.Role.Vsys.Restapi.Network.Misc != nil { entry.Misc["RoleVsysRestapiNetwork"] = o.Role.Vsys.Restapi.Network.Misc } - if o.Role.Vsys.Restapi.Network.GlobalprotectClientlessAppGroups != nil { - nestedRole.Vsys.Restapi.Network.GlobalprotectClientlessAppGroups = o.Role.Vsys.Restapi.Network.GlobalprotectClientlessAppGroups - } - if o.Role.Vsys.Restapi.Network.GlobalprotectClientlessApps != nil { - nestedRole.Vsys.Restapi.Network.GlobalprotectClientlessApps = o.Role.Vsys.Restapi.Network.GlobalprotectClientlessApps - } - if o.Role.Vsys.Restapi.Network.GlobalprotectGateways != nil { - nestedRole.Vsys.Restapi.Network.GlobalprotectGateways = o.Role.Vsys.Restapi.Network.GlobalprotectGateways - } if o.Role.Vsys.Restapi.Network.GlobalprotectMdmServers != nil { nestedRole.Vsys.Restapi.Network.GlobalprotectMdmServers = o.Role.Vsys.Restapi.Network.GlobalprotectMdmServers } @@ -5278,125 +5296,134 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Role.Vsys.Restapi.Network.SdwanInterfaceProfiles != nil { nestedRole.Vsys.Restapi.Network.SdwanInterfaceProfiles = o.Role.Vsys.Restapi.Network.SdwanInterfaceProfiles } + if o.Role.Vsys.Restapi.Network.GlobalprotectClientlessAppGroups != nil { + nestedRole.Vsys.Restapi.Network.GlobalprotectClientlessAppGroups = o.Role.Vsys.Restapi.Network.GlobalprotectClientlessAppGroups + } + if o.Role.Vsys.Restapi.Network.GlobalprotectClientlessApps != nil { + nestedRole.Vsys.Restapi.Network.GlobalprotectClientlessApps = o.Role.Vsys.Restapi.Network.GlobalprotectClientlessApps + } + if o.Role.Vsys.Restapi.Network.GlobalprotectGateways != nil { + nestedRole.Vsys.Restapi.Network.GlobalprotectGateways = o.Role.Vsys.Restapi.Network.GlobalprotectGateways + } } if o.Role.Vsys.Restapi.Objects != nil { nestedRole.Vsys.Restapi.Objects = &RoleVsysRestapiObjects{} if o.Role.Vsys.Restapi.Objects.Misc != nil { entry.Misc["RoleVsysRestapiObjects"] = o.Role.Vsys.Restapi.Objects.Misc } - if o.Role.Vsys.Restapi.Objects.Addresses != nil { - nestedRole.Vsys.Restapi.Objects.Addresses = o.Role.Vsys.Restapi.Objects.Addresses + if o.Role.Vsys.Restapi.Objects.ExternalDynamicLists != nil { + nestedRole.Vsys.Restapi.Objects.ExternalDynamicLists = o.Role.Vsys.Restapi.Objects.ExternalDynamicLists } - if o.Role.Vsys.Restapi.Objects.ApplicationFilters != nil { - nestedRole.Vsys.Restapi.Objects.ApplicationFilters = o.Role.Vsys.Restapi.Objects.ApplicationFilters + if o.Role.Vsys.Restapi.Objects.SctpProtectionSecurityProfiles != nil { + nestedRole.Vsys.Restapi.Objects.SctpProtectionSecurityProfiles = o.Role.Vsys.Restapi.Objects.SctpProtectionSecurityProfiles } - if o.Role.Vsys.Restapi.Objects.Applications != nil { - nestedRole.Vsys.Restapi.Objects.Applications = o.Role.Vsys.Restapi.Objects.Applications + if o.Role.Vsys.Restapi.Objects.UrlFilteringSecurityProfiles != nil { + nestedRole.Vsys.Restapi.Objects.UrlFilteringSecurityProfiles = o.Role.Vsys.Restapi.Objects.UrlFilteringSecurityProfiles } - if o.Role.Vsys.Restapi.Objects.CustomUrlCategories != nil { - nestedRole.Vsys.Restapi.Objects.CustomUrlCategories = o.Role.Vsys.Restapi.Objects.CustomUrlCategories + if o.Role.Vsys.Restapi.Objects.SdwanErrorCorrectionProfiles != nil { + nestedRole.Vsys.Restapi.Objects.SdwanErrorCorrectionProfiles = o.Role.Vsys.Restapi.Objects.SdwanErrorCorrectionProfiles } - if o.Role.Vsys.Restapi.Objects.Devices != nil { - nestedRole.Vsys.Restapi.Objects.Devices = o.Role.Vsys.Restapi.Objects.Devices + if o.Role.Vsys.Restapi.Objects.Tags != nil { + nestedRole.Vsys.Restapi.Objects.Tags = o.Role.Vsys.Restapi.Objects.Tags } - if o.Role.Vsys.Restapi.Objects.DosProtectionSecurityProfiles != nil { - nestedRole.Vsys.Restapi.Objects.DosProtectionSecurityProfiles = o.Role.Vsys.Restapi.Objects.DosProtectionSecurityProfiles + if o.Role.Vsys.Restapi.Objects.CustomDataPatterns != nil { + nestedRole.Vsys.Restapi.Objects.CustomDataPatterns = o.Role.Vsys.Restapi.Objects.CustomDataPatterns } - if o.Role.Vsys.Restapi.Objects.Services != nil { - nestedRole.Vsys.Restapi.Objects.Services = o.Role.Vsys.Restapi.Objects.Services + if o.Role.Vsys.Restapi.Objects.CustomVulnerabilitySignatures != nil { + nestedRole.Vsys.Restapi.Objects.CustomVulnerabilitySignatures = o.Role.Vsys.Restapi.Objects.CustomVulnerabilitySignatures } - if o.Role.Vsys.Restapi.Objects.DataFilteringSecurityProfiles != nil { - nestedRole.Vsys.Restapi.Objects.DataFilteringSecurityProfiles = o.Role.Vsys.Restapi.Objects.DataFilteringSecurityProfiles + if o.Role.Vsys.Restapi.Objects.SdwanSaasQualityProfiles != nil { + nestedRole.Vsys.Restapi.Objects.SdwanSaasQualityProfiles = o.Role.Vsys.Restapi.Objects.SdwanSaasQualityProfiles + } + if o.Role.Vsys.Restapi.Objects.AntivirusSecurityProfiles != nil { + nestedRole.Vsys.Restapi.Objects.AntivirusSecurityProfiles = o.Role.Vsys.Restapi.Objects.AntivirusSecurityProfiles + } + if o.Role.Vsys.Restapi.Objects.CustomSpywareSignatures != nil { + nestedRole.Vsys.Restapi.Objects.CustomSpywareSignatures = o.Role.Vsys.Restapi.Objects.CustomSpywareSignatures + } + if o.Role.Vsys.Restapi.Objects.DynamicUserGroups != nil { + nestedRole.Vsys.Restapi.Objects.DynamicUserGroups = o.Role.Vsys.Restapi.Objects.DynamicUserGroups + } + if o.Role.Vsys.Restapi.Objects.FileBlockingSecurityProfiles != nil { + nestedRole.Vsys.Restapi.Objects.FileBlockingSecurityProfiles = o.Role.Vsys.Restapi.Objects.FileBlockingSecurityProfiles } if o.Role.Vsys.Restapi.Objects.GlobalprotectHipProfiles != nil { nestedRole.Vsys.Restapi.Objects.GlobalprotectHipProfiles = o.Role.Vsys.Restapi.Objects.GlobalprotectHipProfiles } - if o.Role.Vsys.Restapi.Objects.SdwanTrafficDistributionProfiles != nil { - nestedRole.Vsys.Restapi.Objects.SdwanTrafficDistributionProfiles = o.Role.Vsys.Restapi.Objects.SdwanTrafficDistributionProfiles + if o.Role.Vsys.Restapi.Objects.LogForwardingProfiles != nil { + nestedRole.Vsys.Restapi.Objects.LogForwardingProfiles = o.Role.Vsys.Restapi.Objects.LogForwardingProfiles } - if o.Role.Vsys.Restapi.Objects.AddressGroups != nil { - nestedRole.Vsys.Restapi.Objects.AddressGroups = o.Role.Vsys.Restapi.Objects.AddressGroups + if o.Role.Vsys.Restapi.Objects.SdwanPathQualityProfiles != nil { + nestedRole.Vsys.Restapi.Objects.SdwanPathQualityProfiles = o.Role.Vsys.Restapi.Objects.SdwanPathQualityProfiles } if o.Role.Vsys.Restapi.Objects.AntiSpywareSecurityProfiles != nil { nestedRole.Vsys.Restapi.Objects.AntiSpywareSecurityProfiles = o.Role.Vsys.Restapi.Objects.AntiSpywareSecurityProfiles } - if o.Role.Vsys.Restapi.Objects.CustomSpywareSignatures != nil { - nestedRole.Vsys.Restapi.Objects.CustomSpywareSignatures = o.Role.Vsys.Restapi.Objects.CustomSpywareSignatures - } - if o.Role.Vsys.Restapi.Objects.CustomVulnerabilitySignatures != nil { - nestedRole.Vsys.Restapi.Objects.CustomVulnerabilitySignatures = o.Role.Vsys.Restapi.Objects.CustomVulnerabilitySignatures - } - if o.Role.Vsys.Restapi.Objects.FileBlockingSecurityProfiles != nil { - nestedRole.Vsys.Restapi.Objects.FileBlockingSecurityProfiles = o.Role.Vsys.Restapi.Objects.FileBlockingSecurityProfiles + if o.Role.Vsys.Restapi.Objects.Applications != nil { + nestedRole.Vsys.Restapi.Objects.Applications = o.Role.Vsys.Restapi.Objects.Applications } - if o.Role.Vsys.Restapi.Objects.SctpProtectionSecurityProfiles != nil { - nestedRole.Vsys.Restapi.Objects.SctpProtectionSecurityProfiles = o.Role.Vsys.Restapi.Objects.SctpProtectionSecurityProfiles + if o.Role.Vsys.Restapi.Objects.DosProtectionSecurityProfiles != nil { + nestedRole.Vsys.Restapi.Objects.DosProtectionSecurityProfiles = o.Role.Vsys.Restapi.Objects.DosProtectionSecurityProfiles } - if o.Role.Vsys.Restapi.Objects.ServiceGroups != nil { - nestedRole.Vsys.Restapi.Objects.ServiceGroups = o.Role.Vsys.Restapi.Objects.ServiceGroups + if o.Role.Vsys.Restapi.Objects.PacketBrokerProfiles != nil { + nestedRole.Vsys.Restapi.Objects.PacketBrokerProfiles = o.Role.Vsys.Restapi.Objects.PacketBrokerProfiles } - if o.Role.Vsys.Restapi.Objects.VulnerabilityProtectionSecurityProfiles != nil { - nestedRole.Vsys.Restapi.Objects.VulnerabilityProtectionSecurityProfiles = o.Role.Vsys.Restapi.Objects.VulnerabilityProtectionSecurityProfiles + if o.Role.Vsys.Restapi.Objects.SdwanTrafficDistributionProfiles != nil { + nestedRole.Vsys.Restapi.Objects.SdwanTrafficDistributionProfiles = o.Role.Vsys.Restapi.Objects.SdwanTrafficDistributionProfiles } - if o.Role.Vsys.Restapi.Objects.ApplicationGroups != nil { - nestedRole.Vsys.Restapi.Objects.ApplicationGroups = o.Role.Vsys.Restapi.Objects.ApplicationGroups + if o.Role.Vsys.Restapi.Objects.AuthenticationEnforcements != nil { + nestedRole.Vsys.Restapi.Objects.AuthenticationEnforcements = o.Role.Vsys.Restapi.Objects.AuthenticationEnforcements } - if o.Role.Vsys.Restapi.Objects.CustomDataPatterns != nil { - nestedRole.Vsys.Restapi.Objects.CustomDataPatterns = o.Role.Vsys.Restapi.Objects.CustomDataPatterns + if o.Role.Vsys.Restapi.Objects.DataFilteringSecurityProfiles != nil { + nestedRole.Vsys.Restapi.Objects.DataFilteringSecurityProfiles = o.Role.Vsys.Restapi.Objects.DataFilteringSecurityProfiles } if o.Role.Vsys.Restapi.Objects.Regions != nil { nestedRole.Vsys.Restapi.Objects.Regions = o.Role.Vsys.Restapi.Objects.Regions } - if o.Role.Vsys.Restapi.Objects.SdwanSaasQualityProfiles != nil { - nestedRole.Vsys.Restapi.Objects.SdwanSaasQualityProfiles = o.Role.Vsys.Restapi.Objects.SdwanSaasQualityProfiles + if o.Role.Vsys.Restapi.Objects.VulnerabilityProtectionSecurityProfiles != nil { + nestedRole.Vsys.Restapi.Objects.VulnerabilityProtectionSecurityProfiles = o.Role.Vsys.Restapi.Objects.VulnerabilityProtectionSecurityProfiles } - if o.Role.Vsys.Restapi.Objects.AntivirusSecurityProfiles != nil { - nestedRole.Vsys.Restapi.Objects.AntivirusSecurityProfiles = o.Role.Vsys.Restapi.Objects.AntivirusSecurityProfiles + if o.Role.Vsys.Restapi.Objects.AddressGroups != nil { + nestedRole.Vsys.Restapi.Objects.AddressGroups = o.Role.Vsys.Restapi.Objects.AddressGroups } - if o.Role.Vsys.Restapi.Objects.DecryptionProfiles != nil { - nestedRole.Vsys.Restapi.Objects.DecryptionProfiles = o.Role.Vsys.Restapi.Objects.DecryptionProfiles + if o.Role.Vsys.Restapi.Objects.ApplicationFilters != nil { + nestedRole.Vsys.Restapi.Objects.ApplicationFilters = o.Role.Vsys.Restapi.Objects.ApplicationFilters } - if o.Role.Vsys.Restapi.Objects.DynamicUserGroups != nil { - nestedRole.Vsys.Restapi.Objects.DynamicUserGroups = o.Role.Vsys.Restapi.Objects.DynamicUserGroups + if o.Role.Vsys.Restapi.Objects.ApplicationGroups != nil { + nestedRole.Vsys.Restapi.Objects.ApplicationGroups = o.Role.Vsys.Restapi.Objects.ApplicationGroups } - if o.Role.Vsys.Restapi.Objects.GlobalprotectHipObjects != nil { - nestedRole.Vsys.Restapi.Objects.GlobalprotectHipObjects = o.Role.Vsys.Restapi.Objects.GlobalprotectHipObjects + if o.Role.Vsys.Restapi.Objects.Devices != nil { + nestedRole.Vsys.Restapi.Objects.Devices = o.Role.Vsys.Restapi.Objects.Devices } - if o.Role.Vsys.Restapi.Objects.GtpProtectionSecurityProfiles != nil { - nestedRole.Vsys.Restapi.Objects.GtpProtectionSecurityProfiles = o.Role.Vsys.Restapi.Objects.GtpProtectionSecurityProfiles + if o.Role.Vsys.Restapi.Objects.Schedules != nil { + nestedRole.Vsys.Restapi.Objects.Schedules = o.Role.Vsys.Restapi.Objects.Schedules } if o.Role.Vsys.Restapi.Objects.SecurityProfileGroups != nil { nestedRole.Vsys.Restapi.Objects.SecurityProfileGroups = o.Role.Vsys.Restapi.Objects.SecurityProfileGroups } - if o.Role.Vsys.Restapi.Objects.UrlFilteringSecurityProfiles != nil { - nestedRole.Vsys.Restapi.Objects.UrlFilteringSecurityProfiles = o.Role.Vsys.Restapi.Objects.UrlFilteringSecurityProfiles + if o.Role.Vsys.Restapi.Objects.Services != nil { + nestedRole.Vsys.Restapi.Objects.Services = o.Role.Vsys.Restapi.Objects.Services } if o.Role.Vsys.Restapi.Objects.WildfireAnalysisSecurityProfiles != nil { nestedRole.Vsys.Restapi.Objects.WildfireAnalysisSecurityProfiles = o.Role.Vsys.Restapi.Objects.WildfireAnalysisSecurityProfiles } - if o.Role.Vsys.Restapi.Objects.AuthenticationEnforcements != nil { - nestedRole.Vsys.Restapi.Objects.AuthenticationEnforcements = o.Role.Vsys.Restapi.Objects.AuthenticationEnforcements - } - if o.Role.Vsys.Restapi.Objects.LogForwardingProfiles != nil { - nestedRole.Vsys.Restapi.Objects.LogForwardingProfiles = o.Role.Vsys.Restapi.Objects.LogForwardingProfiles - } - if o.Role.Vsys.Restapi.Objects.PacketBrokerProfiles != nil { - nestedRole.Vsys.Restapi.Objects.PacketBrokerProfiles = o.Role.Vsys.Restapi.Objects.PacketBrokerProfiles + if o.Role.Vsys.Restapi.Objects.Addresses != nil { + nestedRole.Vsys.Restapi.Objects.Addresses = o.Role.Vsys.Restapi.Objects.Addresses } - if o.Role.Vsys.Restapi.Objects.Tags != nil { - nestedRole.Vsys.Restapi.Objects.Tags = o.Role.Vsys.Restapi.Objects.Tags + if o.Role.Vsys.Restapi.Objects.CustomUrlCategories != nil { + nestedRole.Vsys.Restapi.Objects.CustomUrlCategories = o.Role.Vsys.Restapi.Objects.CustomUrlCategories } - if o.Role.Vsys.Restapi.Objects.ExternalDynamicLists != nil { - nestedRole.Vsys.Restapi.Objects.ExternalDynamicLists = o.Role.Vsys.Restapi.Objects.ExternalDynamicLists + if o.Role.Vsys.Restapi.Objects.DecryptionProfiles != nil { + nestedRole.Vsys.Restapi.Objects.DecryptionProfiles = o.Role.Vsys.Restapi.Objects.DecryptionProfiles } - if o.Role.Vsys.Restapi.Objects.Schedules != nil { - nestedRole.Vsys.Restapi.Objects.Schedules = o.Role.Vsys.Restapi.Objects.Schedules + if o.Role.Vsys.Restapi.Objects.GlobalprotectHipObjects != nil { + nestedRole.Vsys.Restapi.Objects.GlobalprotectHipObjects = o.Role.Vsys.Restapi.Objects.GlobalprotectHipObjects } - if o.Role.Vsys.Restapi.Objects.SdwanErrorCorrectionProfiles != nil { - nestedRole.Vsys.Restapi.Objects.SdwanErrorCorrectionProfiles = o.Role.Vsys.Restapi.Objects.SdwanErrorCorrectionProfiles + if o.Role.Vsys.Restapi.Objects.GtpProtectionSecurityProfiles != nil { + nestedRole.Vsys.Restapi.Objects.GtpProtectionSecurityProfiles = o.Role.Vsys.Restapi.Objects.GtpProtectionSecurityProfiles } - if o.Role.Vsys.Restapi.Objects.SdwanPathQualityProfiles != nil { - nestedRole.Vsys.Restapi.Objects.SdwanPathQualityProfiles = o.Role.Vsys.Restapi.Objects.SdwanPathQualityProfiles + if o.Role.Vsys.Restapi.Objects.ServiceGroups != nil { + nestedRole.Vsys.Restapi.Objects.ServiceGroups = o.Role.Vsys.Restapi.Objects.ServiceGroups } } if o.Role.Vsys.Restapi.Policies != nil { @@ -5404,164 +5431,65 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Role.Vsys.Restapi.Policies.Misc != nil { entry.Misc["RoleVsysRestapiPolicies"] = o.Role.Vsys.Restapi.Policies.Misc } - if o.Role.Vsys.Restapi.Policies.DecryptionRules != nil { - nestedRole.Vsys.Restapi.Policies.DecryptionRules = o.Role.Vsys.Restapi.Policies.DecryptionRules - } - if o.Role.Vsys.Restapi.Policies.PolicyBasedForwardingRules != nil { - nestedRole.Vsys.Restapi.Policies.PolicyBasedForwardingRules = o.Role.Vsys.Restapi.Policies.PolicyBasedForwardingRules - } if o.Role.Vsys.Restapi.Policies.QosRules != nil { nestedRole.Vsys.Restapi.Policies.QosRules = o.Role.Vsys.Restapi.Policies.QosRules } - if o.Role.Vsys.Restapi.Policies.TunnelInspectionRules != nil { - nestedRole.Vsys.Restapi.Policies.TunnelInspectionRules = o.Role.Vsys.Restapi.Policies.TunnelInspectionRules - } if o.Role.Vsys.Restapi.Policies.SecurityRules != nil { nestedRole.Vsys.Restapi.Policies.SecurityRules = o.Role.Vsys.Restapi.Policies.SecurityRules } - if o.Role.Vsys.Restapi.Policies.ApplicationOverrideRules != nil { - nestedRole.Vsys.Restapi.Policies.ApplicationOverrideRules = o.Role.Vsys.Restapi.Policies.ApplicationOverrideRules - } - if o.Role.Vsys.Restapi.Policies.AuthenticationRules != nil { - nestedRole.Vsys.Restapi.Policies.AuthenticationRules = o.Role.Vsys.Restapi.Policies.AuthenticationRules - } - if o.Role.Vsys.Restapi.Policies.DosRules != nil { - nestedRole.Vsys.Restapi.Policies.DosRules = o.Role.Vsys.Restapi.Policies.DosRules - } - if o.Role.Vsys.Restapi.Policies.NatRules != nil { - nestedRole.Vsys.Restapi.Policies.NatRules = o.Role.Vsys.Restapi.Policies.NatRules - } - if o.Role.Vsys.Restapi.Policies.NetworkPacketBrokerRules != nil { - nestedRole.Vsys.Restapi.Policies.NetworkPacketBrokerRules = o.Role.Vsys.Restapi.Policies.NetworkPacketBrokerRules - } - if o.Role.Vsys.Restapi.Policies.SdwanRules != nil { - nestedRole.Vsys.Restapi.Policies.SdwanRules = o.Role.Vsys.Restapi.Policies.SdwanRules - } - } - if o.Role.Vsys.Restapi.System != nil { - nestedRole.Vsys.Restapi.System = &RoleVsysRestapiSystem{} - if o.Role.Vsys.Restapi.System.Misc != nil { - entry.Misc["RoleVsysRestapiSystem"] = o.Role.Vsys.Restapi.System.Misc - } - if o.Role.Vsys.Restapi.System.Configuration != nil { - nestedRole.Vsys.Restapi.System.Configuration = o.Role.Vsys.Restapi.System.Configuration - } - } - if o.Role.Vsys.Restapi.Device != nil { - nestedRole.Vsys.Restapi.Device = &RoleVsysRestapiDevice{} - if o.Role.Vsys.Restapi.Device.Misc != nil { - entry.Misc["RoleVsysRestapiDevice"] = o.Role.Vsys.Restapi.Device.Misc - } - if o.Role.Vsys.Restapi.Device.LogInterfaceSetting != nil { - nestedRole.Vsys.Restapi.Device.LogInterfaceSetting = o.Role.Vsys.Restapi.Device.LogInterfaceSetting - } - if o.Role.Vsys.Restapi.Device.SnmpTrapServerProfiles != nil { - nestedRole.Vsys.Restapi.Device.SnmpTrapServerProfiles = o.Role.Vsys.Restapi.Device.SnmpTrapServerProfiles - } - if o.Role.Vsys.Restapi.Device.SyslogServerProfiles != nil { - nestedRole.Vsys.Restapi.Device.SyslogServerProfiles = o.Role.Vsys.Restapi.Device.SyslogServerProfiles - } - if o.Role.Vsys.Restapi.Device.VirtualSystems != nil { - nestedRole.Vsys.Restapi.Device.VirtualSystems = o.Role.Vsys.Restapi.Device.VirtualSystems - } - if o.Role.Vsys.Restapi.Device.EmailServerProfiles != nil { - nestedRole.Vsys.Restapi.Device.EmailServerProfiles = o.Role.Vsys.Restapi.Device.EmailServerProfiles - } - if o.Role.Vsys.Restapi.Device.HttpServerProfiles != nil { - nestedRole.Vsys.Restapi.Device.HttpServerProfiles = o.Role.Vsys.Restapi.Device.HttpServerProfiles - } - if o.Role.Vsys.Restapi.Device.LdapServerProfiles != nil { - nestedRole.Vsys.Restapi.Device.LdapServerProfiles = o.Role.Vsys.Restapi.Device.LdapServerProfiles - } - } - } - if o.Role.Vsys.Webui != nil { - nestedRole.Vsys.Webui = &RoleVsysWebui{} - if o.Role.Vsys.Webui.Misc != nil { - entry.Misc["RoleVsysWebui"] = o.Role.Vsys.Webui.Misc - } - if o.Role.Vsys.Webui.Validate != nil { - nestedRole.Vsys.Webui.Validate = o.Role.Vsys.Webui.Validate - } - if o.Role.Vsys.Webui.Acc != nil { - nestedRole.Vsys.Webui.Acc = o.Role.Vsys.Webui.Acc - } - if o.Role.Vsys.Webui.Dashboard != nil { - nestedRole.Vsys.Webui.Dashboard = o.Role.Vsys.Webui.Dashboard - } - if o.Role.Vsys.Webui.Policies != nil { - nestedRole.Vsys.Webui.Policies = &RoleVsysWebuiPolicies{} - if o.Role.Vsys.Webui.Policies.Misc != nil { - entry.Misc["RoleVsysWebuiPolicies"] = o.Role.Vsys.Webui.Policies.Misc - } - if o.Role.Vsys.Webui.Policies.SslDecryptionRulebase != nil { - nestedRole.Vsys.Webui.Policies.SslDecryptionRulebase = o.Role.Vsys.Webui.Policies.SslDecryptionRulebase - } - if o.Role.Vsys.Webui.Policies.TunnelInspectRulebase != nil { - nestedRole.Vsys.Webui.Policies.TunnelInspectRulebase = o.Role.Vsys.Webui.Policies.TunnelInspectRulebase - } - if o.Role.Vsys.Webui.Policies.ApplicationOverrideRulebase != nil { - nestedRole.Vsys.Webui.Policies.ApplicationOverrideRulebase = o.Role.Vsys.Webui.Policies.ApplicationOverrideRulebase - } - if o.Role.Vsys.Webui.Policies.QosRulebase != nil { - nestedRole.Vsys.Webui.Policies.QosRulebase = o.Role.Vsys.Webui.Policies.QosRulebase + if o.Role.Vsys.Restapi.Policies.TunnelInspectionRules != nil { + nestedRole.Vsys.Restapi.Policies.TunnelInspectionRules = o.Role.Vsys.Restapi.Policies.TunnelInspectionRules } - if o.Role.Vsys.Webui.Policies.NatRulebase != nil { - nestedRole.Vsys.Webui.Policies.NatRulebase = o.Role.Vsys.Webui.Policies.NatRulebase + if o.Role.Vsys.Restapi.Policies.ApplicationOverrideRules != nil { + nestedRole.Vsys.Restapi.Policies.ApplicationOverrideRules = o.Role.Vsys.Restapi.Policies.ApplicationOverrideRules } - if o.Role.Vsys.Webui.Policies.NetworkPacketBrokerRulebase != nil { - nestedRole.Vsys.Webui.Policies.NetworkPacketBrokerRulebase = o.Role.Vsys.Webui.Policies.NetworkPacketBrokerRulebase + if o.Role.Vsys.Restapi.Policies.AuthenticationRules != nil { + nestedRole.Vsys.Restapi.Policies.AuthenticationRules = o.Role.Vsys.Restapi.Policies.AuthenticationRules } - if o.Role.Vsys.Webui.Policies.PbfRulebase != nil { - nestedRole.Vsys.Webui.Policies.PbfRulebase = o.Role.Vsys.Webui.Policies.PbfRulebase + if o.Role.Vsys.Restapi.Policies.DecryptionRules != nil { + nestedRole.Vsys.Restapi.Policies.DecryptionRules = o.Role.Vsys.Restapi.Policies.DecryptionRules } - if o.Role.Vsys.Webui.Policies.RuleHitCountReset != nil { - nestedRole.Vsys.Webui.Policies.RuleHitCountReset = o.Role.Vsys.Webui.Policies.RuleHitCountReset + if o.Role.Vsys.Restapi.Policies.NatRules != nil { + nestedRole.Vsys.Restapi.Policies.NatRules = o.Role.Vsys.Restapi.Policies.NatRules } - if o.Role.Vsys.Webui.Policies.SdwanRulebase != nil { - nestedRole.Vsys.Webui.Policies.SdwanRulebase = o.Role.Vsys.Webui.Policies.SdwanRulebase + if o.Role.Vsys.Restapi.Policies.PolicyBasedForwardingRules != nil { + nestedRole.Vsys.Restapi.Policies.PolicyBasedForwardingRules = o.Role.Vsys.Restapi.Policies.PolicyBasedForwardingRules } - if o.Role.Vsys.Webui.Policies.SecurityRulebase != nil { - nestedRole.Vsys.Webui.Policies.SecurityRulebase = o.Role.Vsys.Webui.Policies.SecurityRulebase + if o.Role.Vsys.Restapi.Policies.DosRules != nil { + nestedRole.Vsys.Restapi.Policies.DosRules = o.Role.Vsys.Restapi.Policies.DosRules } - if o.Role.Vsys.Webui.Policies.AuthenticationRulebase != nil { - nestedRole.Vsys.Webui.Policies.AuthenticationRulebase = o.Role.Vsys.Webui.Policies.AuthenticationRulebase + if o.Role.Vsys.Restapi.Policies.NetworkPacketBrokerRules != nil { + nestedRole.Vsys.Restapi.Policies.NetworkPacketBrokerRules = o.Role.Vsys.Restapi.Policies.NetworkPacketBrokerRules } - if o.Role.Vsys.Webui.Policies.DosRulebase != nil { - nestedRole.Vsys.Webui.Policies.DosRulebase = o.Role.Vsys.Webui.Policies.DosRulebase + if o.Role.Vsys.Restapi.Policies.SdwanRules != nil { + nestedRole.Vsys.Restapi.Policies.SdwanRules = o.Role.Vsys.Restapi.Policies.SdwanRules } } - if o.Role.Vsys.Webui.Network != nil { - nestedRole.Vsys.Webui.Network = &RoleVsysWebuiNetwork{} - if o.Role.Vsys.Webui.Network.Misc != nil { - entry.Misc["RoleVsysWebuiNetwork"] = o.Role.Vsys.Webui.Network.Misc + if o.Role.Vsys.Restapi.System != nil { + nestedRole.Vsys.Restapi.System = &RoleVsysRestapiSystem{} + if o.Role.Vsys.Restapi.System.Misc != nil { + entry.Misc["RoleVsysRestapiSystem"] = o.Role.Vsys.Restapi.System.Misc } - if o.Role.Vsys.Webui.Network.GlobalProtect != nil { - nestedRole.Vsys.Webui.Network.GlobalProtect = &RoleVsysWebuiNetworkGlobalProtect{} - if o.Role.Vsys.Webui.Network.GlobalProtect.Misc != nil { - entry.Misc["RoleVsysWebuiNetworkGlobalProtect"] = o.Role.Vsys.Webui.Network.GlobalProtect.Misc - } - if o.Role.Vsys.Webui.Network.GlobalProtect.Mdm != nil { - nestedRole.Vsys.Webui.Network.GlobalProtect.Mdm = o.Role.Vsys.Webui.Network.GlobalProtect.Mdm - } - if o.Role.Vsys.Webui.Network.GlobalProtect.Portals != nil { - nestedRole.Vsys.Webui.Network.GlobalProtect.Portals = o.Role.Vsys.Webui.Network.GlobalProtect.Portals - } - if o.Role.Vsys.Webui.Network.GlobalProtect.ClientlessAppGroups != nil { - nestedRole.Vsys.Webui.Network.GlobalProtect.ClientlessAppGroups = o.Role.Vsys.Webui.Network.GlobalProtect.ClientlessAppGroups - } - if o.Role.Vsys.Webui.Network.GlobalProtect.ClientlessApps != nil { - nestedRole.Vsys.Webui.Network.GlobalProtect.ClientlessApps = o.Role.Vsys.Webui.Network.GlobalProtect.ClientlessApps - } - if o.Role.Vsys.Webui.Network.GlobalProtect.Gateways != nil { - nestedRole.Vsys.Webui.Network.GlobalProtect.Gateways = o.Role.Vsys.Webui.Network.GlobalProtect.Gateways - } + if o.Role.Vsys.Restapi.System.Configuration != nil { + nestedRole.Vsys.Restapi.System.Configuration = o.Role.Vsys.Restapi.System.Configuration } - if o.Role.Vsys.Webui.Network.SdwanInterfaceProfile != nil { - nestedRole.Vsys.Webui.Network.SdwanInterfaceProfile = o.Role.Vsys.Webui.Network.SdwanInterfaceProfile + } + } + if o.Role.Vsys.Webui != nil { + nestedRole.Vsys.Webui = &RoleVsysWebui{} + if o.Role.Vsys.Webui.Misc != nil { + entry.Misc["RoleVsysWebui"] = o.Role.Vsys.Webui.Misc + } + if o.Role.Vsys.Webui.Commit != nil { + nestedRole.Vsys.Webui.Commit = &RoleVsysWebuiCommit{} + if o.Role.Vsys.Webui.Commit.Misc != nil { + entry.Misc["RoleVsysWebuiCommit"] = o.Role.Vsys.Webui.Commit.Misc } - if o.Role.Vsys.Webui.Network.Zones != nil { - nestedRole.Vsys.Webui.Network.Zones = o.Role.Vsys.Webui.Network.Zones + if o.Role.Vsys.Webui.Commit.CommitForOtherAdmins != nil { + nestedRole.Vsys.Webui.Commit.CommitForOtherAdmins = o.Role.Vsys.Webui.Commit.CommitForOtherAdmins + } + if o.Role.Vsys.Webui.Commit.VirtualSystems != nil { + nestedRole.Vsys.Webui.Commit.VirtualSystems = o.Role.Vsys.Webui.Commit.VirtualSystems } } if o.Role.Vsys.Webui.Objects != nil { @@ -5569,36 +5497,60 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Role.Vsys.Webui.Objects.Misc != nil { entry.Misc["RoleVsysWebuiObjects"] = o.Role.Vsys.Webui.Objects.Misc } - if o.Role.Vsys.Webui.Objects.PacketBrokerProfile != nil { - nestedRole.Vsys.Webui.Objects.PacketBrokerProfile = o.Role.Vsys.Webui.Objects.PacketBrokerProfile + if o.Role.Vsys.Webui.Objects.Applications != nil { + nestedRole.Vsys.Webui.Objects.Applications = o.Role.Vsys.Webui.Objects.Applications + } + if o.Role.Vsys.Webui.Objects.Regions != nil { + nestedRole.Vsys.Webui.Objects.Regions = o.Role.Vsys.Webui.Objects.Regions } if o.Role.Vsys.Webui.Objects.Sdwan != nil { nestedRole.Vsys.Webui.Objects.Sdwan = &RoleVsysWebuiObjectsSdwan{} if o.Role.Vsys.Webui.Objects.Sdwan.Misc != nil { entry.Misc["RoleVsysWebuiObjectsSdwan"] = o.Role.Vsys.Webui.Objects.Sdwan.Misc } + if o.Role.Vsys.Webui.Objects.Sdwan.SdwanProfile != nil { + nestedRole.Vsys.Webui.Objects.Sdwan.SdwanProfile = o.Role.Vsys.Webui.Objects.Sdwan.SdwanProfile + } + if o.Role.Vsys.Webui.Objects.Sdwan.SdwanSaasQualityProfile != nil { + nestedRole.Vsys.Webui.Objects.Sdwan.SdwanSaasQualityProfile = o.Role.Vsys.Webui.Objects.Sdwan.SdwanSaasQualityProfile + } if o.Role.Vsys.Webui.Objects.Sdwan.SdwanDistProfile != nil { nestedRole.Vsys.Webui.Objects.Sdwan.SdwanDistProfile = o.Role.Vsys.Webui.Objects.Sdwan.SdwanDistProfile } if o.Role.Vsys.Webui.Objects.Sdwan.SdwanErrorCorrectionProfile != nil { nestedRole.Vsys.Webui.Objects.Sdwan.SdwanErrorCorrectionProfile = o.Role.Vsys.Webui.Objects.Sdwan.SdwanErrorCorrectionProfile } - if o.Role.Vsys.Webui.Objects.Sdwan.SdwanProfile != nil { - nestedRole.Vsys.Webui.Objects.Sdwan.SdwanProfile = o.Role.Vsys.Webui.Objects.Sdwan.SdwanProfile + } + if o.Role.Vsys.Webui.Objects.SecurityProfileGroups != nil { + nestedRole.Vsys.Webui.Objects.SecurityProfileGroups = o.Role.Vsys.Webui.Objects.SecurityProfileGroups + } + if o.Role.Vsys.Webui.Objects.ApplicationFilters != nil { + nestedRole.Vsys.Webui.Objects.ApplicationFilters = o.Role.Vsys.Webui.Objects.ApplicationFilters + } + if o.Role.Vsys.Webui.Objects.Authentication != nil { + nestedRole.Vsys.Webui.Objects.Authentication = o.Role.Vsys.Webui.Objects.Authentication + } + if o.Role.Vsys.Webui.Objects.CustomObjects != nil { + nestedRole.Vsys.Webui.Objects.CustomObjects = &RoleVsysWebuiObjectsCustomObjects{} + if o.Role.Vsys.Webui.Objects.CustomObjects.Misc != nil { + entry.Misc["RoleVsysWebuiObjectsCustomObjects"] = o.Role.Vsys.Webui.Objects.CustomObjects.Misc } - if o.Role.Vsys.Webui.Objects.Sdwan.SdwanSaasQualityProfile != nil { - nestedRole.Vsys.Webui.Objects.Sdwan.SdwanSaasQualityProfile = o.Role.Vsys.Webui.Objects.Sdwan.SdwanSaasQualityProfile + if o.Role.Vsys.Webui.Objects.CustomObjects.Spyware != nil { + nestedRole.Vsys.Webui.Objects.CustomObjects.Spyware = o.Role.Vsys.Webui.Objects.CustomObjects.Spyware + } + if o.Role.Vsys.Webui.Objects.CustomObjects.UrlCategory != nil { + nestedRole.Vsys.Webui.Objects.CustomObjects.UrlCategory = o.Role.Vsys.Webui.Objects.CustomObjects.UrlCategory + } + if o.Role.Vsys.Webui.Objects.CustomObjects.Vulnerability != nil { + nestedRole.Vsys.Webui.Objects.CustomObjects.Vulnerability = o.Role.Vsys.Webui.Objects.CustomObjects.Vulnerability + } + if o.Role.Vsys.Webui.Objects.CustomObjects.DataPatterns != nil { + nestedRole.Vsys.Webui.Objects.CustomObjects.DataPatterns = o.Role.Vsys.Webui.Objects.CustomObjects.DataPatterns } } if o.Role.Vsys.Webui.Objects.DynamicBlockLists != nil { nestedRole.Vsys.Webui.Objects.DynamicBlockLists = o.Role.Vsys.Webui.Objects.DynamicBlockLists } - if o.Role.Vsys.Webui.Objects.DynamicUserGroups != nil { - nestedRole.Vsys.Webui.Objects.DynamicUserGroups = o.Role.Vsys.Webui.Objects.DynamicUserGroups - } - if o.Role.Vsys.Webui.Objects.Devices != nil { - nestedRole.Vsys.Webui.Objects.Devices = o.Role.Vsys.Webui.Objects.Devices - } if o.Role.Vsys.Webui.Objects.GlobalProtect != nil { nestedRole.Vsys.Webui.Objects.GlobalProtect = &RoleVsysWebuiObjectsGlobalProtect{} if o.Role.Vsys.Webui.Objects.GlobalProtect.Misc != nil { @@ -5611,6 +5563,45 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { nestedRole.Vsys.Webui.Objects.GlobalProtect.HipProfiles = o.Role.Vsys.Webui.Objects.GlobalProtect.HipProfiles } } + if o.Role.Vsys.Webui.Objects.LogForwarding != nil { + nestedRole.Vsys.Webui.Objects.LogForwarding = o.Role.Vsys.Webui.Objects.LogForwarding + } + if o.Role.Vsys.Webui.Objects.PacketBrokerProfile != nil { + nestedRole.Vsys.Webui.Objects.PacketBrokerProfile = o.Role.Vsys.Webui.Objects.PacketBrokerProfile + } + if o.Role.Vsys.Webui.Objects.AddressGroups != nil { + nestedRole.Vsys.Webui.Objects.AddressGroups = o.Role.Vsys.Webui.Objects.AddressGroups + } + if o.Role.Vsys.Webui.Objects.Addresses != nil { + nestedRole.Vsys.Webui.Objects.Addresses = o.Role.Vsys.Webui.Objects.Addresses + } + if o.Role.Vsys.Webui.Objects.ApplicationGroups != nil { + nestedRole.Vsys.Webui.Objects.ApplicationGroups = o.Role.Vsys.Webui.Objects.ApplicationGroups + } + if o.Role.Vsys.Webui.Objects.ServiceGroups != nil { + nestedRole.Vsys.Webui.Objects.ServiceGroups = o.Role.Vsys.Webui.Objects.ServiceGroups + } + if o.Role.Vsys.Webui.Objects.Services != nil { + nestedRole.Vsys.Webui.Objects.Services = o.Role.Vsys.Webui.Objects.Services + } + if o.Role.Vsys.Webui.Objects.Tags != nil { + nestedRole.Vsys.Webui.Objects.Tags = o.Role.Vsys.Webui.Objects.Tags + } + if o.Role.Vsys.Webui.Objects.Decryption != nil { + nestedRole.Vsys.Webui.Objects.Decryption = &RoleVsysWebuiObjectsDecryption{} + if o.Role.Vsys.Webui.Objects.Decryption.Misc != nil { + entry.Misc["RoleVsysWebuiObjectsDecryption"] = o.Role.Vsys.Webui.Objects.Decryption.Misc + } + if o.Role.Vsys.Webui.Objects.Decryption.DecryptionProfile != nil { + nestedRole.Vsys.Webui.Objects.Decryption.DecryptionProfile = o.Role.Vsys.Webui.Objects.Decryption.DecryptionProfile + } + } + if o.Role.Vsys.Webui.Objects.Devices != nil { + nestedRole.Vsys.Webui.Objects.Devices = o.Role.Vsys.Webui.Objects.Devices + } + if o.Role.Vsys.Webui.Objects.DynamicUserGroups != nil { + nestedRole.Vsys.Webui.Objects.DynamicUserGroups = o.Role.Vsys.Webui.Objects.DynamicUserGroups + } if o.Role.Vsys.Webui.Objects.Schedules != nil { nestedRole.Vsys.Webui.Objects.Schedules = o.Role.Vsys.Webui.Objects.Schedules } @@ -5619,136 +5610,94 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Role.Vsys.Webui.Objects.SecurityProfiles.Misc != nil { entry.Misc["RoleVsysWebuiObjectsSecurityProfiles"] = o.Role.Vsys.Webui.Objects.SecurityProfiles.Misc } - if o.Role.Vsys.Webui.Objects.SecurityProfiles.VulnerabilityProtection != nil { - nestedRole.Vsys.Webui.Objects.SecurityProfiles.VulnerabilityProtection = o.Role.Vsys.Webui.Objects.SecurityProfiles.VulnerabilityProtection - } if o.Role.Vsys.Webui.Objects.SecurityProfiles.DosProtection != nil { nestedRole.Vsys.Webui.Objects.SecurityProfiles.DosProtection = o.Role.Vsys.Webui.Objects.SecurityProfiles.DosProtection } - if o.Role.Vsys.Webui.Objects.SecurityProfiles.FileBlocking != nil { - nestedRole.Vsys.Webui.Objects.SecurityProfiles.FileBlocking = o.Role.Vsys.Webui.Objects.SecurityProfiles.FileBlocking - } - if o.Role.Vsys.Webui.Objects.SecurityProfiles.GtpProtection != nil { - nestedRole.Vsys.Webui.Objects.SecurityProfiles.GtpProtection = o.Role.Vsys.Webui.Objects.SecurityProfiles.GtpProtection - } if o.Role.Vsys.Webui.Objects.SecurityProfiles.UrlFiltering != nil { nestedRole.Vsys.Webui.Objects.SecurityProfiles.UrlFiltering = o.Role.Vsys.Webui.Objects.SecurityProfiles.UrlFiltering } - if o.Role.Vsys.Webui.Objects.SecurityProfiles.WildfireAnalysis != nil { - nestedRole.Vsys.Webui.Objects.SecurityProfiles.WildfireAnalysis = o.Role.Vsys.Webui.Objects.SecurityProfiles.WildfireAnalysis - } if o.Role.Vsys.Webui.Objects.SecurityProfiles.AntiSpyware != nil { nestedRole.Vsys.Webui.Objects.SecurityProfiles.AntiSpyware = o.Role.Vsys.Webui.Objects.SecurityProfiles.AntiSpyware } - if o.Role.Vsys.Webui.Objects.SecurityProfiles.Antivirus != nil { - nestedRole.Vsys.Webui.Objects.SecurityProfiles.Antivirus = o.Role.Vsys.Webui.Objects.SecurityProfiles.Antivirus - } if o.Role.Vsys.Webui.Objects.SecurityProfiles.DataFiltering != nil { nestedRole.Vsys.Webui.Objects.SecurityProfiles.DataFiltering = o.Role.Vsys.Webui.Objects.SecurityProfiles.DataFiltering } + if o.Role.Vsys.Webui.Objects.SecurityProfiles.GtpProtection != nil { + nestedRole.Vsys.Webui.Objects.SecurityProfiles.GtpProtection = o.Role.Vsys.Webui.Objects.SecurityProfiles.GtpProtection + } if o.Role.Vsys.Webui.Objects.SecurityProfiles.SctpProtection != nil { nestedRole.Vsys.Webui.Objects.SecurityProfiles.SctpProtection = o.Role.Vsys.Webui.Objects.SecurityProfiles.SctpProtection } - } - if o.Role.Vsys.Webui.Objects.ServiceGroups != nil { - nestedRole.Vsys.Webui.Objects.ServiceGroups = o.Role.Vsys.Webui.Objects.ServiceGroups - } - if o.Role.Vsys.Webui.Objects.Addresses != nil { - nestedRole.Vsys.Webui.Objects.Addresses = o.Role.Vsys.Webui.Objects.Addresses - } - if o.Role.Vsys.Webui.Objects.Decryption != nil { - nestedRole.Vsys.Webui.Objects.Decryption = &RoleVsysWebuiObjectsDecryption{} - if o.Role.Vsys.Webui.Objects.Decryption.Misc != nil { - entry.Misc["RoleVsysWebuiObjectsDecryption"] = o.Role.Vsys.Webui.Objects.Decryption.Misc - } - if o.Role.Vsys.Webui.Objects.Decryption.DecryptionProfile != nil { - nestedRole.Vsys.Webui.Objects.Decryption.DecryptionProfile = o.Role.Vsys.Webui.Objects.Decryption.DecryptionProfile - } - } - if o.Role.Vsys.Webui.Objects.Applications != nil { - nestedRole.Vsys.Webui.Objects.Applications = o.Role.Vsys.Webui.Objects.Applications - } - if o.Role.Vsys.Webui.Objects.Authentication != nil { - nestedRole.Vsys.Webui.Objects.Authentication = o.Role.Vsys.Webui.Objects.Authentication - } - if o.Role.Vsys.Webui.Objects.Regions != nil { - nestedRole.Vsys.Webui.Objects.Regions = o.Role.Vsys.Webui.Objects.Regions - } - if o.Role.Vsys.Webui.Objects.Tags != nil { - nestedRole.Vsys.Webui.Objects.Tags = o.Role.Vsys.Webui.Objects.Tags - } - if o.Role.Vsys.Webui.Objects.AddressGroups != nil { - nestedRole.Vsys.Webui.Objects.AddressGroups = o.Role.Vsys.Webui.Objects.AddressGroups - } - if o.Role.Vsys.Webui.Objects.ApplicationGroups != nil { - nestedRole.Vsys.Webui.Objects.ApplicationGroups = o.Role.Vsys.Webui.Objects.ApplicationGroups - } - if o.Role.Vsys.Webui.Objects.LogForwarding != nil { - nestedRole.Vsys.Webui.Objects.LogForwarding = o.Role.Vsys.Webui.Objects.LogForwarding - } - if o.Role.Vsys.Webui.Objects.SecurityProfileGroups != nil { - nestedRole.Vsys.Webui.Objects.SecurityProfileGroups = o.Role.Vsys.Webui.Objects.SecurityProfileGroups - } - if o.Role.Vsys.Webui.Objects.Services != nil { - nestedRole.Vsys.Webui.Objects.Services = o.Role.Vsys.Webui.Objects.Services - } - if o.Role.Vsys.Webui.Objects.ApplicationFilters != nil { - nestedRole.Vsys.Webui.Objects.ApplicationFilters = o.Role.Vsys.Webui.Objects.ApplicationFilters - } - if o.Role.Vsys.Webui.Objects.CustomObjects != nil { - nestedRole.Vsys.Webui.Objects.CustomObjects = &RoleVsysWebuiObjectsCustomObjects{} - if o.Role.Vsys.Webui.Objects.CustomObjects.Misc != nil { - entry.Misc["RoleVsysWebuiObjectsCustomObjects"] = o.Role.Vsys.Webui.Objects.CustomObjects.Misc - } - if o.Role.Vsys.Webui.Objects.CustomObjects.DataPatterns != nil { - nestedRole.Vsys.Webui.Objects.CustomObjects.DataPatterns = o.Role.Vsys.Webui.Objects.CustomObjects.DataPatterns + if o.Role.Vsys.Webui.Objects.SecurityProfiles.VulnerabilityProtection != nil { + nestedRole.Vsys.Webui.Objects.SecurityProfiles.VulnerabilityProtection = o.Role.Vsys.Webui.Objects.SecurityProfiles.VulnerabilityProtection } - if o.Role.Vsys.Webui.Objects.CustomObjects.Spyware != nil { - nestedRole.Vsys.Webui.Objects.CustomObjects.Spyware = o.Role.Vsys.Webui.Objects.CustomObjects.Spyware + if o.Role.Vsys.Webui.Objects.SecurityProfiles.WildfireAnalysis != nil { + nestedRole.Vsys.Webui.Objects.SecurityProfiles.WildfireAnalysis = o.Role.Vsys.Webui.Objects.SecurityProfiles.WildfireAnalysis } - if o.Role.Vsys.Webui.Objects.CustomObjects.UrlCategory != nil { - nestedRole.Vsys.Webui.Objects.CustomObjects.UrlCategory = o.Role.Vsys.Webui.Objects.CustomObjects.UrlCategory + if o.Role.Vsys.Webui.Objects.SecurityProfiles.Antivirus != nil { + nestedRole.Vsys.Webui.Objects.SecurityProfiles.Antivirus = o.Role.Vsys.Webui.Objects.SecurityProfiles.Antivirus } - if o.Role.Vsys.Webui.Objects.CustomObjects.Vulnerability != nil { - nestedRole.Vsys.Webui.Objects.CustomObjects.Vulnerability = o.Role.Vsys.Webui.Objects.CustomObjects.Vulnerability + if o.Role.Vsys.Webui.Objects.SecurityProfiles.FileBlocking != nil { + nestedRole.Vsys.Webui.Objects.SecurityProfiles.FileBlocking = o.Role.Vsys.Webui.Objects.SecurityProfiles.FileBlocking } } } - if o.Role.Vsys.Webui.Operations != nil { - nestedRole.Vsys.Webui.Operations = &RoleVsysWebuiOperations{} - if o.Role.Vsys.Webui.Operations.Misc != nil { - entry.Misc["RoleVsysWebuiOperations"] = o.Role.Vsys.Webui.Operations.Misc - } - if o.Role.Vsys.Webui.Operations.DownloadCoreFiles != nil { - nestedRole.Vsys.Webui.Operations.DownloadCoreFiles = o.Role.Vsys.Webui.Operations.DownloadCoreFiles - } - if o.Role.Vsys.Webui.Operations.DownloadPcapFiles != nil { - nestedRole.Vsys.Webui.Operations.DownloadPcapFiles = o.Role.Vsys.Webui.Operations.DownloadPcapFiles - } - if o.Role.Vsys.Webui.Operations.GenerateStatsDumpFile != nil { - nestedRole.Vsys.Webui.Operations.GenerateStatsDumpFile = o.Role.Vsys.Webui.Operations.GenerateStatsDumpFile - } - if o.Role.Vsys.Webui.Operations.GenerateTechSupportFile != nil { - nestedRole.Vsys.Webui.Operations.GenerateTechSupportFile = o.Role.Vsys.Webui.Operations.GenerateTechSupportFile - } - if o.Role.Vsys.Webui.Operations.Reboot != nil { - nestedRole.Vsys.Webui.Operations.Reboot = o.Role.Vsys.Webui.Operations.Reboot - } - } if o.Role.Vsys.Webui.Privacy != nil { nestedRole.Vsys.Webui.Privacy = &RoleVsysWebuiPrivacy{} if o.Role.Vsys.Webui.Privacy.Misc != nil { entry.Misc["RoleVsysWebuiPrivacy"] = o.Role.Vsys.Webui.Privacy.Misc } - if o.Role.Vsys.Webui.Privacy.ViewPcapFiles != nil { - nestedRole.Vsys.Webui.Privacy.ViewPcapFiles = o.Role.Vsys.Webui.Privacy.ViewPcapFiles - } if o.Role.Vsys.Webui.Privacy.ShowFullIpAddresses != nil { nestedRole.Vsys.Webui.Privacy.ShowFullIpAddresses = o.Role.Vsys.Webui.Privacy.ShowFullIpAddresses } if o.Role.Vsys.Webui.Privacy.ShowUserNamesInLogsAndReports != nil { nestedRole.Vsys.Webui.Privacy.ShowUserNamesInLogsAndReports = o.Role.Vsys.Webui.Privacy.ShowUserNamesInLogsAndReports } + if o.Role.Vsys.Webui.Privacy.ViewPcapFiles != nil { + nestedRole.Vsys.Webui.Privacy.ViewPcapFiles = o.Role.Vsys.Webui.Privacy.ViewPcapFiles + } + } + if o.Role.Vsys.Webui.Policies != nil { + nestedRole.Vsys.Webui.Policies = &RoleVsysWebuiPolicies{} + if o.Role.Vsys.Webui.Policies.Misc != nil { + entry.Misc["RoleVsysWebuiPolicies"] = o.Role.Vsys.Webui.Policies.Misc + } + if o.Role.Vsys.Webui.Policies.AuthenticationRulebase != nil { + nestedRole.Vsys.Webui.Policies.AuthenticationRulebase = o.Role.Vsys.Webui.Policies.AuthenticationRulebase + } + if o.Role.Vsys.Webui.Policies.DosRulebase != nil { + nestedRole.Vsys.Webui.Policies.DosRulebase = o.Role.Vsys.Webui.Policies.DosRulebase + } + if o.Role.Vsys.Webui.Policies.PbfRulebase != nil { + nestedRole.Vsys.Webui.Policies.PbfRulebase = o.Role.Vsys.Webui.Policies.PbfRulebase + } + if o.Role.Vsys.Webui.Policies.TunnelInspectRulebase != nil { + nestedRole.Vsys.Webui.Policies.TunnelInspectRulebase = o.Role.Vsys.Webui.Policies.TunnelInspectRulebase + } + if o.Role.Vsys.Webui.Policies.ApplicationOverrideRulebase != nil { + nestedRole.Vsys.Webui.Policies.ApplicationOverrideRulebase = o.Role.Vsys.Webui.Policies.ApplicationOverrideRulebase + } + if o.Role.Vsys.Webui.Policies.NetworkPacketBrokerRulebase != nil { + nestedRole.Vsys.Webui.Policies.NetworkPacketBrokerRulebase = o.Role.Vsys.Webui.Policies.NetworkPacketBrokerRulebase + } + if o.Role.Vsys.Webui.Policies.QosRulebase != nil { + nestedRole.Vsys.Webui.Policies.QosRulebase = o.Role.Vsys.Webui.Policies.QosRulebase + } + if o.Role.Vsys.Webui.Policies.RuleHitCountReset != nil { + nestedRole.Vsys.Webui.Policies.RuleHitCountReset = o.Role.Vsys.Webui.Policies.RuleHitCountReset + } + if o.Role.Vsys.Webui.Policies.SdwanRulebase != nil { + nestedRole.Vsys.Webui.Policies.SdwanRulebase = o.Role.Vsys.Webui.Policies.SdwanRulebase + } + if o.Role.Vsys.Webui.Policies.SecurityRulebase != nil { + nestedRole.Vsys.Webui.Policies.SecurityRulebase = o.Role.Vsys.Webui.Policies.SecurityRulebase + } + if o.Role.Vsys.Webui.Policies.SslDecryptionRulebase != nil { + nestedRole.Vsys.Webui.Policies.SslDecryptionRulebase = o.Role.Vsys.Webui.Policies.SslDecryptionRulebase + } + if o.Role.Vsys.Webui.Policies.NatRulebase != nil { + nestedRole.Vsys.Webui.Policies.NatRulebase = o.Role.Vsys.Webui.Policies.NatRulebase + } } if o.Role.Vsys.Webui.Save != nil { nestedRole.Vsys.Webui.Save = &RoleVsysWebuiSave{} @@ -5765,37 +5714,46 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { nestedRole.Vsys.Webui.Save.ObjectLevelChanges = o.Role.Vsys.Webui.Save.ObjectLevelChanges } } - if o.Role.Vsys.Webui.Commit != nil { - nestedRole.Vsys.Webui.Commit = &RoleVsysWebuiCommit{} - if o.Role.Vsys.Webui.Commit.Misc != nil { - entry.Misc["RoleVsysWebuiCommit"] = o.Role.Vsys.Webui.Commit.Misc - } - if o.Role.Vsys.Webui.Commit.CommitForOtherAdmins != nil { - nestedRole.Vsys.Webui.Commit.CommitForOtherAdmins = o.Role.Vsys.Webui.Commit.CommitForOtherAdmins - } - if o.Role.Vsys.Webui.Commit.VirtualSystems != nil { - nestedRole.Vsys.Webui.Commit.VirtualSystems = o.Role.Vsys.Webui.Commit.VirtualSystems - } + if o.Role.Vsys.Webui.Acc != nil { + nestedRole.Vsys.Webui.Acc = o.Role.Vsys.Webui.Acc + } + if o.Role.Vsys.Webui.Dashboard != nil { + nestedRole.Vsys.Webui.Dashboard = o.Role.Vsys.Webui.Dashboard } if o.Role.Vsys.Webui.Device != nil { nestedRole.Vsys.Webui.Device = &RoleVsysWebuiDevice{} if o.Role.Vsys.Webui.Device.Misc != nil { entry.Misc["RoleVsysWebuiDevice"] = o.Role.Vsys.Webui.Device.Misc } + if o.Role.Vsys.Webui.Device.AuthenticationSequence != nil { + nestedRole.Vsys.Webui.Device.AuthenticationSequence = o.Role.Vsys.Webui.Device.AuthenticationSequence + } + if o.Role.Vsys.Webui.Device.LocalUserDatabase != nil { + nestedRole.Vsys.Webui.Device.LocalUserDatabase = &RoleVsysWebuiDeviceLocalUserDatabase{} + if o.Role.Vsys.Webui.Device.LocalUserDatabase.Misc != nil { + entry.Misc["RoleVsysWebuiDeviceLocalUserDatabase"] = o.Role.Vsys.Webui.Device.LocalUserDatabase.Misc + } + if o.Role.Vsys.Webui.Device.LocalUserDatabase.UserGroups != nil { + nestedRole.Vsys.Webui.Device.LocalUserDatabase.UserGroups = o.Role.Vsys.Webui.Device.LocalUserDatabase.UserGroups + } + if o.Role.Vsys.Webui.Device.LocalUserDatabase.Users != nil { + nestedRole.Vsys.Webui.Device.LocalUserDatabase.Users = o.Role.Vsys.Webui.Device.LocalUserDatabase.Users + } + } + if o.Role.Vsys.Webui.Device.Troubleshooting != nil { + nestedRole.Vsys.Webui.Device.Troubleshooting = o.Role.Vsys.Webui.Device.Troubleshooting + } + if o.Role.Vsys.Webui.Device.VmInfoSource != nil { + nestedRole.Vsys.Webui.Device.VmInfoSource = o.Role.Vsys.Webui.Device.VmInfoSource + } + if o.Role.Vsys.Webui.Device.BlockPages != nil { + nestedRole.Vsys.Webui.Device.BlockPages = o.Role.Vsys.Webui.Device.BlockPages + } if o.Role.Vsys.Webui.Device.CertificateManagement != nil { nestedRole.Vsys.Webui.Device.CertificateManagement = &RoleVsysWebuiDeviceCertificateManagement{} if o.Role.Vsys.Webui.Device.CertificateManagement.Misc != nil { entry.Misc["RoleVsysWebuiDeviceCertificateManagement"] = o.Role.Vsys.Webui.Device.CertificateManagement.Misc } - if o.Role.Vsys.Webui.Device.CertificateManagement.CertificateProfile != nil { - nestedRole.Vsys.Webui.Device.CertificateManagement.CertificateProfile = o.Role.Vsys.Webui.Device.CertificateManagement.CertificateProfile - } - if o.Role.Vsys.Webui.Device.CertificateManagement.Certificates != nil { - nestedRole.Vsys.Webui.Device.CertificateManagement.Certificates = o.Role.Vsys.Webui.Device.CertificateManagement.Certificates - } - if o.Role.Vsys.Webui.Device.CertificateManagement.OcspResponder != nil { - nestedRole.Vsys.Webui.Device.CertificateManagement.OcspResponder = o.Role.Vsys.Webui.Device.CertificateManagement.OcspResponder - } if o.Role.Vsys.Webui.Device.CertificateManagement.Scep != nil { nestedRole.Vsys.Webui.Device.CertificateManagement.Scep = o.Role.Vsys.Webui.Device.CertificateManagement.Scep } @@ -5808,30 +5766,24 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Role.Vsys.Webui.Device.CertificateManagement.SslTlsServiceProfile != nil { nestedRole.Vsys.Webui.Device.CertificateManagement.SslTlsServiceProfile = o.Role.Vsys.Webui.Device.CertificateManagement.SslTlsServiceProfile } - } - if o.Role.Vsys.Webui.Device.DataRedistribution != nil { - nestedRole.Vsys.Webui.Device.DataRedistribution = o.Role.Vsys.Webui.Device.DataRedistribution - } - if o.Role.Vsys.Webui.Device.LocalUserDatabase != nil { - nestedRole.Vsys.Webui.Device.LocalUserDatabase = &RoleVsysWebuiDeviceLocalUserDatabase{} - if o.Role.Vsys.Webui.Device.LocalUserDatabase.Misc != nil { - entry.Misc["RoleVsysWebuiDeviceLocalUserDatabase"] = o.Role.Vsys.Webui.Device.LocalUserDatabase.Misc + if o.Role.Vsys.Webui.Device.CertificateManagement.CertificateProfile != nil { + nestedRole.Vsys.Webui.Device.CertificateManagement.CertificateProfile = o.Role.Vsys.Webui.Device.CertificateManagement.CertificateProfile } - if o.Role.Vsys.Webui.Device.LocalUserDatabase.UserGroups != nil { - nestedRole.Vsys.Webui.Device.LocalUserDatabase.UserGroups = o.Role.Vsys.Webui.Device.LocalUserDatabase.UserGroups + if o.Role.Vsys.Webui.Device.CertificateManagement.Certificates != nil { + nestedRole.Vsys.Webui.Device.CertificateManagement.Certificates = o.Role.Vsys.Webui.Device.CertificateManagement.Certificates } - if o.Role.Vsys.Webui.Device.LocalUserDatabase.Users != nil { - nestedRole.Vsys.Webui.Device.LocalUserDatabase.Users = o.Role.Vsys.Webui.Device.LocalUserDatabase.Users + if o.Role.Vsys.Webui.Device.CertificateManagement.OcspResponder != nil { + nestedRole.Vsys.Webui.Device.CertificateManagement.OcspResponder = o.Role.Vsys.Webui.Device.CertificateManagement.OcspResponder } } + if o.Role.Vsys.Webui.Device.DeviceQuarantine != nil { + nestedRole.Vsys.Webui.Device.DeviceQuarantine = o.Role.Vsys.Webui.Device.DeviceQuarantine + } if o.Role.Vsys.Webui.Device.LogSettings != nil { nestedRole.Vsys.Webui.Device.LogSettings = &RoleVsysWebuiDeviceLogSettings{} if o.Role.Vsys.Webui.Device.LogSettings.Misc != nil { entry.Misc["RoleVsysWebuiDeviceLogSettings"] = o.Role.Vsys.Webui.Device.LogSettings.Misc } - if o.Role.Vsys.Webui.Device.LogSettings.Config != nil { - nestedRole.Vsys.Webui.Device.LogSettings.Config = o.Role.Vsys.Webui.Device.LogSettings.Config - } if o.Role.Vsys.Webui.Device.LogSettings.Correlation != nil { nestedRole.Vsys.Webui.Device.LogSettings.Correlation = o.Role.Vsys.Webui.Device.LogSettings.Correlation } @@ -5850,179 +5802,248 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Role.Vsys.Webui.Device.LogSettings.UserId != nil { nestedRole.Vsys.Webui.Device.LogSettings.UserId = o.Role.Vsys.Webui.Device.LogSettings.UserId } + if o.Role.Vsys.Webui.Device.LogSettings.Config != nil { + nestedRole.Vsys.Webui.Device.LogSettings.Config = o.Role.Vsys.Webui.Device.LogSettings.Config + } + } + if o.Role.Vsys.Webui.Device.PolicyRecommendations != nil { + nestedRole.Vsys.Webui.Device.PolicyRecommendations = &RoleVsysWebuiDevicePolicyRecommendations{} + if o.Role.Vsys.Webui.Device.PolicyRecommendations.Misc != nil { + entry.Misc["RoleVsysWebuiDevicePolicyRecommendations"] = o.Role.Vsys.Webui.Device.PolicyRecommendations.Misc + } + if o.Role.Vsys.Webui.Device.PolicyRecommendations.Iot != nil { + nestedRole.Vsys.Webui.Device.PolicyRecommendations.Iot = o.Role.Vsys.Webui.Device.PolicyRecommendations.Iot + } + if o.Role.Vsys.Webui.Device.PolicyRecommendations.Saas != nil { + nestedRole.Vsys.Webui.Device.PolicyRecommendations.Saas = o.Role.Vsys.Webui.Device.PolicyRecommendations.Saas + } + } + if o.Role.Vsys.Webui.Device.Setup != nil { + nestedRole.Vsys.Webui.Device.Setup = &RoleVsysWebuiDeviceSetup{} + if o.Role.Vsys.Webui.Device.Setup.Misc != nil { + entry.Misc["RoleVsysWebuiDeviceSetup"] = o.Role.Vsys.Webui.Device.Setup.Misc + } + if o.Role.Vsys.Webui.Device.Setup.Hsm != nil { + nestedRole.Vsys.Webui.Device.Setup.Hsm = o.Role.Vsys.Webui.Device.Setup.Hsm + } + if o.Role.Vsys.Webui.Device.Setup.Management != nil { + nestedRole.Vsys.Webui.Device.Setup.Management = o.Role.Vsys.Webui.Device.Setup.Management + } + if o.Role.Vsys.Webui.Device.Setup.Services != nil { + nestedRole.Vsys.Webui.Device.Setup.Services = o.Role.Vsys.Webui.Device.Setup.Services + } + if o.Role.Vsys.Webui.Device.Setup.ContentId != nil { + nestedRole.Vsys.Webui.Device.Setup.ContentId = o.Role.Vsys.Webui.Device.Setup.ContentId + } + if o.Role.Vsys.Webui.Device.Setup.Operations != nil { + nestedRole.Vsys.Webui.Device.Setup.Operations = o.Role.Vsys.Webui.Device.Setup.Operations + } + if o.Role.Vsys.Webui.Device.Setup.Session != nil { + nestedRole.Vsys.Webui.Device.Setup.Session = o.Role.Vsys.Webui.Device.Setup.Session + } + if o.Role.Vsys.Webui.Device.Setup.Telemetry != nil { + nestedRole.Vsys.Webui.Device.Setup.Telemetry = o.Role.Vsys.Webui.Device.Setup.Telemetry + } + if o.Role.Vsys.Webui.Device.Setup.Wildfire != nil { + nestedRole.Vsys.Webui.Device.Setup.Wildfire = o.Role.Vsys.Webui.Device.Setup.Wildfire + } + if o.Role.Vsys.Webui.Device.Setup.Interfaces != nil { + nestedRole.Vsys.Webui.Device.Setup.Interfaces = o.Role.Vsys.Webui.Device.Setup.Interfaces + } + } + if o.Role.Vsys.Webui.Device.DataRedistribution != nil { + nestedRole.Vsys.Webui.Device.DataRedistribution = o.Role.Vsys.Webui.Device.DataRedistribution + } + if o.Role.Vsys.Webui.Device.UserIdentification != nil { + nestedRole.Vsys.Webui.Device.UserIdentification = o.Role.Vsys.Webui.Device.UserIdentification + } + if o.Role.Vsys.Webui.Device.DhcpSyslogServer != nil { + nestedRole.Vsys.Webui.Device.DhcpSyslogServer = o.Role.Vsys.Webui.Device.DhcpSyslogServer + } + if o.Role.Vsys.Webui.Device.Administrators != nil { + nestedRole.Vsys.Webui.Device.Administrators = o.Role.Vsys.Webui.Device.Administrators + } + if o.Role.Vsys.Webui.Device.AuthenticationProfile != nil { + nestedRole.Vsys.Webui.Device.AuthenticationProfile = o.Role.Vsys.Webui.Device.AuthenticationProfile } if o.Role.Vsys.Webui.Device.ServerProfile != nil { nestedRole.Vsys.Webui.Device.ServerProfile = &RoleVsysWebuiDeviceServerProfile{} if o.Role.Vsys.Webui.Device.ServerProfile.Misc != nil { entry.Misc["RoleVsysWebuiDeviceServerProfile"] = o.Role.Vsys.Webui.Device.ServerProfile.Misc } + if o.Role.Vsys.Webui.Device.ServerProfile.Netflow != nil { + nestedRole.Vsys.Webui.Device.ServerProfile.Netflow = o.Role.Vsys.Webui.Device.ServerProfile.Netflow + } if o.Role.Vsys.Webui.Device.ServerProfile.Radius != nil { nestedRole.Vsys.Webui.Device.ServerProfile.Radius = o.Role.Vsys.Webui.Device.ServerProfile.Radius } + if o.Role.Vsys.Webui.Device.ServerProfile.SamlIdp != nil { + nestedRole.Vsys.Webui.Device.ServerProfile.SamlIdp = o.Role.Vsys.Webui.Device.ServerProfile.SamlIdp + } + if o.Role.Vsys.Webui.Device.ServerProfile.SnmpTrap != nil { + nestedRole.Vsys.Webui.Device.ServerProfile.SnmpTrap = o.Role.Vsys.Webui.Device.ServerProfile.SnmpTrap + } + if o.Role.Vsys.Webui.Device.ServerProfile.Dns != nil { + nestedRole.Vsys.Webui.Device.ServerProfile.Dns = o.Role.Vsys.Webui.Device.ServerProfile.Dns + } + if o.Role.Vsys.Webui.Device.ServerProfile.Http != nil { + nestedRole.Vsys.Webui.Device.ServerProfile.Http = o.Role.Vsys.Webui.Device.ServerProfile.Http + } + if o.Role.Vsys.Webui.Device.ServerProfile.Kerberos != nil { + nestedRole.Vsys.Webui.Device.ServerProfile.Kerberos = o.Role.Vsys.Webui.Device.ServerProfile.Kerberos + } if o.Role.Vsys.Webui.Device.ServerProfile.Scp != nil { nestedRole.Vsys.Webui.Device.ServerProfile.Scp = o.Role.Vsys.Webui.Device.ServerProfile.Scp } if o.Role.Vsys.Webui.Device.ServerProfile.Syslog != nil { nestedRole.Vsys.Webui.Device.ServerProfile.Syslog = o.Role.Vsys.Webui.Device.ServerProfile.Syslog } + if o.Role.Vsys.Webui.Device.ServerProfile.Tacplus != nil { + nestedRole.Vsys.Webui.Device.ServerProfile.Tacplus = o.Role.Vsys.Webui.Device.ServerProfile.Tacplus + } if o.Role.Vsys.Webui.Device.ServerProfile.Email != nil { nestedRole.Vsys.Webui.Device.ServerProfile.Email = o.Role.Vsys.Webui.Device.ServerProfile.Email } - if o.Role.Vsys.Webui.Device.ServerProfile.Kerberos != nil { - nestedRole.Vsys.Webui.Device.ServerProfile.Kerberos = o.Role.Vsys.Webui.Device.ServerProfile.Kerberos + if o.Role.Vsys.Webui.Device.ServerProfile.Ldap != nil { + nestedRole.Vsys.Webui.Device.ServerProfile.Ldap = o.Role.Vsys.Webui.Device.ServerProfile.Ldap + } + if o.Role.Vsys.Webui.Device.ServerProfile.Mfa != nil { + nestedRole.Vsys.Webui.Device.ServerProfile.Mfa = o.Role.Vsys.Webui.Device.ServerProfile.Mfa + } + } + } + if o.Role.Vsys.Webui.Monitor != nil { + nestedRole.Vsys.Webui.Monitor = &RoleVsysWebuiMonitor{} + if o.Role.Vsys.Webui.Monitor.Misc != nil { + entry.Misc["RoleVsysWebuiMonitor"] = o.Role.Vsys.Webui.Monitor.Misc + } + if o.Role.Vsys.Webui.Monitor.SessionBrowser != nil { + nestedRole.Vsys.Webui.Monitor.SessionBrowser = o.Role.Vsys.Webui.Monitor.SessionBrowser + } + if o.Role.Vsys.Webui.Monitor.ViewCustomReports != nil { + nestedRole.Vsys.Webui.Monitor.ViewCustomReports = o.Role.Vsys.Webui.Monitor.ViewCustomReports + } + if o.Role.Vsys.Webui.Monitor.AppScope != nil { + nestedRole.Vsys.Webui.Monitor.AppScope = o.Role.Vsys.Webui.Monitor.AppScope + } + if o.Role.Vsys.Webui.Monitor.CustomReports != nil { + nestedRole.Vsys.Webui.Monitor.CustomReports = &RoleVsysWebuiMonitorCustomReports{} + if o.Role.Vsys.Webui.Monitor.CustomReports.Misc != nil { + entry.Misc["RoleVsysWebuiMonitorCustomReports"] = o.Role.Vsys.Webui.Monitor.CustomReports.Misc } - if o.Role.Vsys.Webui.Device.ServerProfile.Ldap != nil { - nestedRole.Vsys.Webui.Device.ServerProfile.Ldap = o.Role.Vsys.Webui.Device.ServerProfile.Ldap + if o.Role.Vsys.Webui.Monitor.CustomReports.Hipmatch != nil { + nestedRole.Vsys.Webui.Monitor.CustomReports.Hipmatch = o.Role.Vsys.Webui.Monitor.CustomReports.Hipmatch } - if o.Role.Vsys.Webui.Device.ServerProfile.Mfa != nil { - nestedRole.Vsys.Webui.Device.ServerProfile.Mfa = o.Role.Vsys.Webui.Device.ServerProfile.Mfa + if o.Role.Vsys.Webui.Monitor.CustomReports.Iptag != nil { + nestedRole.Vsys.Webui.Monitor.CustomReports.Iptag = o.Role.Vsys.Webui.Monitor.CustomReports.Iptag } - if o.Role.Vsys.Webui.Device.ServerProfile.SnmpTrap != nil { - nestedRole.Vsys.Webui.Device.ServerProfile.SnmpTrap = o.Role.Vsys.Webui.Device.ServerProfile.SnmpTrap + if o.Role.Vsys.Webui.Monitor.CustomReports.ThreatSummary != nil { + nestedRole.Vsys.Webui.Monitor.CustomReports.ThreatSummary = o.Role.Vsys.Webui.Monitor.CustomReports.ThreatSummary } - if o.Role.Vsys.Webui.Device.ServerProfile.Tacplus != nil { - nestedRole.Vsys.Webui.Device.ServerProfile.Tacplus = o.Role.Vsys.Webui.Device.ServerProfile.Tacplus + if o.Role.Vsys.Webui.Monitor.CustomReports.TrafficSummary != nil { + nestedRole.Vsys.Webui.Monitor.CustomReports.TrafficSummary = o.Role.Vsys.Webui.Monitor.CustomReports.TrafficSummary } - if o.Role.Vsys.Webui.Device.ServerProfile.Dns != nil { - nestedRole.Vsys.Webui.Device.ServerProfile.Dns = o.Role.Vsys.Webui.Device.ServerProfile.Dns + if o.Role.Vsys.Webui.Monitor.CustomReports.UrlLog != nil { + nestedRole.Vsys.Webui.Monitor.CustomReports.UrlLog = o.Role.Vsys.Webui.Monitor.CustomReports.UrlLog } - if o.Role.Vsys.Webui.Device.ServerProfile.Http != nil { - nestedRole.Vsys.Webui.Device.ServerProfile.Http = o.Role.Vsys.Webui.Device.ServerProfile.Http + if o.Role.Vsys.Webui.Monitor.CustomReports.DataFilteringLog != nil { + nestedRole.Vsys.Webui.Monitor.CustomReports.DataFilteringLog = o.Role.Vsys.Webui.Monitor.CustomReports.DataFilteringLog } - if o.Role.Vsys.Webui.Device.ServerProfile.Netflow != nil { - nestedRole.Vsys.Webui.Device.ServerProfile.Netflow = o.Role.Vsys.Webui.Device.ServerProfile.Netflow + if o.Role.Vsys.Webui.Monitor.CustomReports.DecryptionSummary != nil { + nestedRole.Vsys.Webui.Monitor.CustomReports.DecryptionSummary = o.Role.Vsys.Webui.Monitor.CustomReports.DecryptionSummary } - if o.Role.Vsys.Webui.Device.ServerProfile.SamlIdp != nil { - nestedRole.Vsys.Webui.Device.ServerProfile.SamlIdp = o.Role.Vsys.Webui.Device.ServerProfile.SamlIdp + if o.Role.Vsys.Webui.Monitor.CustomReports.Globalprotect != nil { + nestedRole.Vsys.Webui.Monitor.CustomReports.Globalprotect = o.Role.Vsys.Webui.Monitor.CustomReports.Globalprotect } - } - if o.Role.Vsys.Webui.Device.Administrators != nil { - nestedRole.Vsys.Webui.Device.Administrators = o.Role.Vsys.Webui.Device.Administrators - } - if o.Role.Vsys.Webui.Device.AuthenticationSequence != nil { - nestedRole.Vsys.Webui.Device.AuthenticationSequence = o.Role.Vsys.Webui.Device.AuthenticationSequence - } - if o.Role.Vsys.Webui.Device.BlockPages != nil { - nestedRole.Vsys.Webui.Device.BlockPages = o.Role.Vsys.Webui.Device.BlockPages - } - if o.Role.Vsys.Webui.Device.UserIdentification != nil { - nestedRole.Vsys.Webui.Device.UserIdentification = o.Role.Vsys.Webui.Device.UserIdentification - } - if o.Role.Vsys.Webui.Device.DeviceQuarantine != nil { - nestedRole.Vsys.Webui.Device.DeviceQuarantine = o.Role.Vsys.Webui.Device.DeviceQuarantine - } - if o.Role.Vsys.Webui.Device.PolicyRecommendations != nil { - nestedRole.Vsys.Webui.Device.PolicyRecommendations = &RoleVsysWebuiDevicePolicyRecommendations{} - if o.Role.Vsys.Webui.Device.PolicyRecommendations.Misc != nil { - entry.Misc["RoleVsysWebuiDevicePolicyRecommendations"] = o.Role.Vsys.Webui.Device.PolicyRecommendations.Misc + if o.Role.Vsys.Webui.Monitor.CustomReports.UrlSummary != nil { + nestedRole.Vsys.Webui.Monitor.CustomReports.UrlSummary = o.Role.Vsys.Webui.Monitor.CustomReports.UrlSummary } - if o.Role.Vsys.Webui.Device.PolicyRecommendations.Iot != nil { - nestedRole.Vsys.Webui.Device.PolicyRecommendations.Iot = o.Role.Vsys.Webui.Device.PolicyRecommendations.Iot + if o.Role.Vsys.Webui.Monitor.CustomReports.WildfireLog != nil { + nestedRole.Vsys.Webui.Monitor.CustomReports.WildfireLog = o.Role.Vsys.Webui.Monitor.CustomReports.WildfireLog } - if o.Role.Vsys.Webui.Device.PolicyRecommendations.Saas != nil { - nestedRole.Vsys.Webui.Device.PolicyRecommendations.Saas = o.Role.Vsys.Webui.Device.PolicyRecommendations.Saas + if o.Role.Vsys.Webui.Monitor.CustomReports.DecryptionLog != nil { + nestedRole.Vsys.Webui.Monitor.CustomReports.DecryptionLog = o.Role.Vsys.Webui.Monitor.CustomReports.DecryptionLog } - } - if o.Role.Vsys.Webui.Device.DhcpSyslogServer != nil { - nestedRole.Vsys.Webui.Device.DhcpSyslogServer = o.Role.Vsys.Webui.Device.DhcpSyslogServer - } - if o.Role.Vsys.Webui.Device.VmInfoSource != nil { - nestedRole.Vsys.Webui.Device.VmInfoSource = o.Role.Vsys.Webui.Device.VmInfoSource - } - if o.Role.Vsys.Webui.Device.AuthenticationProfile != nil { - nestedRole.Vsys.Webui.Device.AuthenticationProfile = o.Role.Vsys.Webui.Device.AuthenticationProfile - } - if o.Role.Vsys.Webui.Device.Setup != nil { - nestedRole.Vsys.Webui.Device.Setup = &RoleVsysWebuiDeviceSetup{} - if o.Role.Vsys.Webui.Device.Setup.Misc != nil { - entry.Misc["RoleVsysWebuiDeviceSetup"] = o.Role.Vsys.Webui.Device.Setup.Misc + if o.Role.Vsys.Webui.Monitor.CustomReports.ThreatLog != nil { + nestedRole.Vsys.Webui.Monitor.CustomReports.ThreatLog = o.Role.Vsys.Webui.Monitor.CustomReports.ThreatLog } - if o.Role.Vsys.Webui.Device.Setup.ContentId != nil { - nestedRole.Vsys.Webui.Device.Setup.ContentId = o.Role.Vsys.Webui.Device.Setup.ContentId + if o.Role.Vsys.Webui.Monitor.CustomReports.TunnelSummary != nil { + nestedRole.Vsys.Webui.Monitor.CustomReports.TunnelSummary = o.Role.Vsys.Webui.Monitor.CustomReports.TunnelSummary } - if o.Role.Vsys.Webui.Device.Setup.Services != nil { - nestedRole.Vsys.Webui.Device.Setup.Services = o.Role.Vsys.Webui.Device.Setup.Services + if o.Role.Vsys.Webui.Monitor.CustomReports.ApplicationStatistics != nil { + nestedRole.Vsys.Webui.Monitor.CustomReports.ApplicationStatistics = o.Role.Vsys.Webui.Monitor.CustomReports.ApplicationStatistics } - if o.Role.Vsys.Webui.Device.Setup.Session != nil { - nestedRole.Vsys.Webui.Device.Setup.Session = o.Role.Vsys.Webui.Device.Setup.Session + if o.Role.Vsys.Webui.Monitor.CustomReports.Auth != nil { + nestedRole.Vsys.Webui.Monitor.CustomReports.Auth = o.Role.Vsys.Webui.Monitor.CustomReports.Auth } - if o.Role.Vsys.Webui.Device.Setup.Telemetry != nil { - nestedRole.Vsys.Webui.Device.Setup.Telemetry = o.Role.Vsys.Webui.Device.Setup.Telemetry + if o.Role.Vsys.Webui.Monitor.CustomReports.TunnelLog != nil { + nestedRole.Vsys.Webui.Monitor.CustomReports.TunnelLog = o.Role.Vsys.Webui.Monitor.CustomReports.TunnelLog } - if o.Role.Vsys.Webui.Device.Setup.Wildfire != nil { - nestedRole.Vsys.Webui.Device.Setup.Wildfire = o.Role.Vsys.Webui.Device.Setup.Wildfire + if o.Role.Vsys.Webui.Monitor.CustomReports.SctpSummary != nil { + nestedRole.Vsys.Webui.Monitor.CustomReports.SctpSummary = o.Role.Vsys.Webui.Monitor.CustomReports.SctpSummary } - if o.Role.Vsys.Webui.Device.Setup.Hsm != nil { - nestedRole.Vsys.Webui.Device.Setup.Hsm = o.Role.Vsys.Webui.Device.Setup.Hsm + if o.Role.Vsys.Webui.Monitor.CustomReports.TrafficLog != nil { + nestedRole.Vsys.Webui.Monitor.CustomReports.TrafficLog = o.Role.Vsys.Webui.Monitor.CustomReports.TrafficLog } - if o.Role.Vsys.Webui.Device.Setup.Interfaces != nil { - nestedRole.Vsys.Webui.Device.Setup.Interfaces = o.Role.Vsys.Webui.Device.Setup.Interfaces + if o.Role.Vsys.Webui.Monitor.CustomReports.Userid != nil { + nestedRole.Vsys.Webui.Monitor.CustomReports.Userid = o.Role.Vsys.Webui.Monitor.CustomReports.Userid } - if o.Role.Vsys.Webui.Device.Setup.Management != nil { - nestedRole.Vsys.Webui.Device.Setup.Management = o.Role.Vsys.Webui.Device.Setup.Management + if o.Role.Vsys.Webui.Monitor.CustomReports.GtpLog != nil { + nestedRole.Vsys.Webui.Monitor.CustomReports.GtpLog = o.Role.Vsys.Webui.Monitor.CustomReports.GtpLog } - if o.Role.Vsys.Webui.Device.Setup.Operations != nil { - nestedRole.Vsys.Webui.Device.Setup.Operations = o.Role.Vsys.Webui.Device.Setup.Operations + if o.Role.Vsys.Webui.Monitor.CustomReports.GtpSummary != nil { + nestedRole.Vsys.Webui.Monitor.CustomReports.GtpSummary = o.Role.Vsys.Webui.Monitor.CustomReports.GtpSummary + } + if o.Role.Vsys.Webui.Monitor.CustomReports.SctpLog != nil { + nestedRole.Vsys.Webui.Monitor.CustomReports.SctpLog = o.Role.Vsys.Webui.Monitor.CustomReports.SctpLog } - } - if o.Role.Vsys.Webui.Device.Troubleshooting != nil { - nestedRole.Vsys.Webui.Device.Troubleshooting = o.Role.Vsys.Webui.Device.Troubleshooting - } - } - if o.Role.Vsys.Webui.Monitor != nil { - nestedRole.Vsys.Webui.Monitor = &RoleVsysWebuiMonitor{} - if o.Role.Vsys.Webui.Monitor.Misc != nil { - entry.Misc["RoleVsysWebuiMonitor"] = o.Role.Vsys.Webui.Monitor.Misc - } - if o.Role.Vsys.Webui.Monitor.ExternalLogs != nil { - nestedRole.Vsys.Webui.Monitor.ExternalLogs = o.Role.Vsys.Webui.Monitor.ExternalLogs } if o.Role.Vsys.Webui.Monitor.Logs != nil { nestedRole.Vsys.Webui.Monitor.Logs = &RoleVsysWebuiMonitorLogs{} if o.Role.Vsys.Webui.Monitor.Logs.Misc != nil { entry.Misc["RoleVsysWebuiMonitorLogs"] = o.Role.Vsys.Webui.Monitor.Logs.Misc } - if o.Role.Vsys.Webui.Monitor.Logs.Traffic != nil { - nestedRole.Vsys.Webui.Monitor.Logs.Traffic = o.Role.Vsys.Webui.Monitor.Logs.Traffic + if o.Role.Vsys.Webui.Monitor.Logs.Threat != nil { + nestedRole.Vsys.Webui.Monitor.Logs.Threat = o.Role.Vsys.Webui.Monitor.Logs.Threat } - if o.Role.Vsys.Webui.Monitor.Logs.Decryption != nil { - nestedRole.Vsys.Webui.Monitor.Logs.Decryption = o.Role.Vsys.Webui.Monitor.Logs.Decryption + if o.Role.Vsys.Webui.Monitor.Logs.Wildfire != nil { + nestedRole.Vsys.Webui.Monitor.Logs.Wildfire = o.Role.Vsys.Webui.Monitor.Logs.Wildfire + } + if o.Role.Vsys.Webui.Monitor.Logs.DataFiltering != nil { + nestedRole.Vsys.Webui.Monitor.Logs.DataFiltering = o.Role.Vsys.Webui.Monitor.Logs.DataFiltering } if o.Role.Vsys.Webui.Monitor.Logs.Globalprotect != nil { nestedRole.Vsys.Webui.Monitor.Logs.Globalprotect = o.Role.Vsys.Webui.Monitor.Logs.Globalprotect } - if o.Role.Vsys.Webui.Monitor.Logs.Gtp != nil { - nestedRole.Vsys.Webui.Monitor.Logs.Gtp = o.Role.Vsys.Webui.Monitor.Logs.Gtp - } if o.Role.Vsys.Webui.Monitor.Logs.Hipmatch != nil { nestedRole.Vsys.Webui.Monitor.Logs.Hipmatch = o.Role.Vsys.Webui.Monitor.Logs.Hipmatch } - if o.Role.Vsys.Webui.Monitor.Logs.Iptag != nil { - nestedRole.Vsys.Webui.Monitor.Logs.Iptag = o.Role.Vsys.Webui.Monitor.Logs.Iptag + if o.Role.Vsys.Webui.Monitor.Logs.Url != nil { + nestedRole.Vsys.Webui.Monitor.Logs.Url = o.Role.Vsys.Webui.Monitor.Logs.Url + } + if o.Role.Vsys.Webui.Monitor.Logs.Userid != nil { + nestedRole.Vsys.Webui.Monitor.Logs.Userid = o.Role.Vsys.Webui.Monitor.Logs.Userid } if o.Role.Vsys.Webui.Monitor.Logs.Tunnel != nil { nestedRole.Vsys.Webui.Monitor.Logs.Tunnel = o.Role.Vsys.Webui.Monitor.Logs.Tunnel } - if o.Role.Vsys.Webui.Monitor.Logs.Wildfire != nil { - nestedRole.Vsys.Webui.Monitor.Logs.Wildfire = o.Role.Vsys.Webui.Monitor.Logs.Wildfire - } if o.Role.Vsys.Webui.Monitor.Logs.Authentication != nil { nestedRole.Vsys.Webui.Monitor.Logs.Authentication = o.Role.Vsys.Webui.Monitor.Logs.Authentication } - if o.Role.Vsys.Webui.Monitor.Logs.DataFiltering != nil { - nestedRole.Vsys.Webui.Monitor.Logs.DataFiltering = o.Role.Vsys.Webui.Monitor.Logs.DataFiltering + if o.Role.Vsys.Webui.Monitor.Logs.Decryption != nil { + nestedRole.Vsys.Webui.Monitor.Logs.Decryption = o.Role.Vsys.Webui.Monitor.Logs.Decryption } - if o.Role.Vsys.Webui.Monitor.Logs.Sctp != nil { - nestedRole.Vsys.Webui.Monitor.Logs.Sctp = o.Role.Vsys.Webui.Monitor.Logs.Sctp + if o.Role.Vsys.Webui.Monitor.Logs.Gtp != nil { + nestedRole.Vsys.Webui.Monitor.Logs.Gtp = o.Role.Vsys.Webui.Monitor.Logs.Gtp } - if o.Role.Vsys.Webui.Monitor.Logs.Threat != nil { - nestedRole.Vsys.Webui.Monitor.Logs.Threat = o.Role.Vsys.Webui.Monitor.Logs.Threat + if o.Role.Vsys.Webui.Monitor.Logs.Iptag != nil { + nestedRole.Vsys.Webui.Monitor.Logs.Iptag = o.Role.Vsys.Webui.Monitor.Logs.Iptag } - if o.Role.Vsys.Webui.Monitor.Logs.Url != nil { - nestedRole.Vsys.Webui.Monitor.Logs.Url = o.Role.Vsys.Webui.Monitor.Logs.Url + if o.Role.Vsys.Webui.Monitor.Logs.Traffic != nil { + nestedRole.Vsys.Webui.Monitor.Logs.Traffic = o.Role.Vsys.Webui.Monitor.Logs.Traffic } - if o.Role.Vsys.Webui.Monitor.Logs.Userid != nil { - nestedRole.Vsys.Webui.Monitor.Logs.Userid = o.Role.Vsys.Webui.Monitor.Logs.Userid + if o.Role.Vsys.Webui.Monitor.Logs.Sctp != nil { + nestedRole.Vsys.Webui.Monitor.Logs.Sctp = o.Role.Vsys.Webui.Monitor.Logs.Sctp } } if o.Role.Vsys.Webui.Monitor.PdfReports != nil { @@ -6030,6 +6051,12 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Role.Vsys.Webui.Monitor.PdfReports.Misc != nil { entry.Misc["RoleVsysWebuiMonitorPdfReports"] = o.Role.Vsys.Webui.Monitor.PdfReports.Misc } + if o.Role.Vsys.Webui.Monitor.PdfReports.SaasApplicationUsageReport != nil { + nestedRole.Vsys.Webui.Monitor.PdfReports.SaasApplicationUsageReport = o.Role.Vsys.Webui.Monitor.PdfReports.SaasApplicationUsageReport + } + if o.Role.Vsys.Webui.Monitor.PdfReports.UserActivityReport != nil { + nestedRole.Vsys.Webui.Monitor.PdfReports.UserActivityReport = o.Role.Vsys.Webui.Monitor.PdfReports.UserActivityReport + } if o.Role.Vsys.Webui.Monitor.PdfReports.EmailScheduler != nil { nestedRole.Vsys.Webui.Monitor.PdfReports.EmailScheduler = o.Role.Vsys.Webui.Monitor.PdfReports.EmailScheduler } @@ -6042,15 +6069,6 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Role.Vsys.Webui.Monitor.PdfReports.ReportGroups != nil { nestedRole.Vsys.Webui.Monitor.PdfReports.ReportGroups = o.Role.Vsys.Webui.Monitor.PdfReports.ReportGroups } - if o.Role.Vsys.Webui.Monitor.PdfReports.SaasApplicationUsageReport != nil { - nestedRole.Vsys.Webui.Monitor.PdfReports.SaasApplicationUsageReport = o.Role.Vsys.Webui.Monitor.PdfReports.SaasApplicationUsageReport - } - if o.Role.Vsys.Webui.Monitor.PdfReports.UserActivityReport != nil { - nestedRole.Vsys.Webui.Monitor.PdfReports.UserActivityReport = o.Role.Vsys.Webui.Monitor.PdfReports.UserActivityReport - } - } - if o.Role.Vsys.Webui.Monitor.AppScope != nil { - nestedRole.Vsys.Webui.Monitor.AppScope = o.Role.Vsys.Webui.Monitor.AppScope } if o.Role.Vsys.Webui.Monitor.AutomatedCorrelationEngine != nil { nestedRole.Vsys.Webui.Monitor.AutomatedCorrelationEngine = &RoleVsysWebuiMonitorAutomatedCorrelationEngine{} @@ -6067,117 +6085,99 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Role.Vsys.Webui.Monitor.BlockIpList != nil { nestedRole.Vsys.Webui.Monitor.BlockIpList = o.Role.Vsys.Webui.Monitor.BlockIpList } - if o.Role.Vsys.Webui.Monitor.CustomReports != nil { - nestedRole.Vsys.Webui.Monitor.CustomReports = &RoleVsysWebuiMonitorCustomReports{} - if o.Role.Vsys.Webui.Monitor.CustomReports.Misc != nil { - entry.Misc["RoleVsysWebuiMonitorCustomReports"] = o.Role.Vsys.Webui.Monitor.CustomReports.Misc - } - if o.Role.Vsys.Webui.Monitor.CustomReports.Hipmatch != nil { - nestedRole.Vsys.Webui.Monitor.CustomReports.Hipmatch = o.Role.Vsys.Webui.Monitor.CustomReports.Hipmatch - } - if o.Role.Vsys.Webui.Monitor.CustomReports.Iptag != nil { - nestedRole.Vsys.Webui.Monitor.CustomReports.Iptag = o.Role.Vsys.Webui.Monitor.CustomReports.Iptag - } - if o.Role.Vsys.Webui.Monitor.CustomReports.ThreatLog != nil { - nestedRole.Vsys.Webui.Monitor.CustomReports.ThreatLog = o.Role.Vsys.Webui.Monitor.CustomReports.ThreatLog - } - if o.Role.Vsys.Webui.Monitor.CustomReports.TrafficSummary != nil { - nestedRole.Vsys.Webui.Monitor.CustomReports.TrafficSummary = o.Role.Vsys.Webui.Monitor.CustomReports.TrafficSummary - } - if o.Role.Vsys.Webui.Monitor.CustomReports.TunnelLog != nil { - nestedRole.Vsys.Webui.Monitor.CustomReports.TunnelLog = o.Role.Vsys.Webui.Monitor.CustomReports.TunnelLog - } - if o.Role.Vsys.Webui.Monitor.CustomReports.UrlLog != nil { - nestedRole.Vsys.Webui.Monitor.CustomReports.UrlLog = o.Role.Vsys.Webui.Monitor.CustomReports.UrlLog - } - if o.Role.Vsys.Webui.Monitor.CustomReports.ApplicationStatistics != nil { - nestedRole.Vsys.Webui.Monitor.CustomReports.ApplicationStatistics = o.Role.Vsys.Webui.Monitor.CustomReports.ApplicationStatistics - } - if o.Role.Vsys.Webui.Monitor.CustomReports.Globalprotect != nil { - nestedRole.Vsys.Webui.Monitor.CustomReports.Globalprotect = o.Role.Vsys.Webui.Monitor.CustomReports.Globalprotect - } - if o.Role.Vsys.Webui.Monitor.CustomReports.UrlSummary != nil { - nestedRole.Vsys.Webui.Monitor.CustomReports.UrlSummary = o.Role.Vsys.Webui.Monitor.CustomReports.UrlSummary - } - if o.Role.Vsys.Webui.Monitor.CustomReports.Userid != nil { - nestedRole.Vsys.Webui.Monitor.CustomReports.Userid = o.Role.Vsys.Webui.Monitor.CustomReports.Userid - } - if o.Role.Vsys.Webui.Monitor.CustomReports.ThreatSummary != nil { - nestedRole.Vsys.Webui.Monitor.CustomReports.ThreatSummary = o.Role.Vsys.Webui.Monitor.CustomReports.ThreatSummary - } - if o.Role.Vsys.Webui.Monitor.CustomReports.WildfireLog != nil { - nestedRole.Vsys.Webui.Monitor.CustomReports.WildfireLog = o.Role.Vsys.Webui.Monitor.CustomReports.WildfireLog - } - if o.Role.Vsys.Webui.Monitor.CustomReports.Auth != nil { - nestedRole.Vsys.Webui.Monitor.CustomReports.Auth = o.Role.Vsys.Webui.Monitor.CustomReports.Auth - } - if o.Role.Vsys.Webui.Monitor.CustomReports.DecryptionSummary != nil { - nestedRole.Vsys.Webui.Monitor.CustomReports.DecryptionSummary = o.Role.Vsys.Webui.Monitor.CustomReports.DecryptionSummary - } - if o.Role.Vsys.Webui.Monitor.CustomReports.TrafficLog != nil { - nestedRole.Vsys.Webui.Monitor.CustomReports.TrafficLog = o.Role.Vsys.Webui.Monitor.CustomReports.TrafficLog - } - if o.Role.Vsys.Webui.Monitor.CustomReports.TunnelSummary != nil { - nestedRole.Vsys.Webui.Monitor.CustomReports.TunnelSummary = o.Role.Vsys.Webui.Monitor.CustomReports.TunnelSummary - } - if o.Role.Vsys.Webui.Monitor.CustomReports.DecryptionLog != nil { - nestedRole.Vsys.Webui.Monitor.CustomReports.DecryptionLog = o.Role.Vsys.Webui.Monitor.CustomReports.DecryptionLog + if o.Role.Vsys.Webui.Monitor.ExternalLogs != nil { + nestedRole.Vsys.Webui.Monitor.ExternalLogs = o.Role.Vsys.Webui.Monitor.ExternalLogs + } + } + if o.Role.Vsys.Webui.Network != nil { + nestedRole.Vsys.Webui.Network = &RoleVsysWebuiNetwork{} + if o.Role.Vsys.Webui.Network.Misc != nil { + entry.Misc["RoleVsysWebuiNetwork"] = o.Role.Vsys.Webui.Network.Misc + } + if o.Role.Vsys.Webui.Network.SdwanInterfaceProfile != nil { + nestedRole.Vsys.Webui.Network.SdwanInterfaceProfile = o.Role.Vsys.Webui.Network.SdwanInterfaceProfile + } + if o.Role.Vsys.Webui.Network.Zones != nil { + nestedRole.Vsys.Webui.Network.Zones = o.Role.Vsys.Webui.Network.Zones + } + if o.Role.Vsys.Webui.Network.GlobalProtect != nil { + nestedRole.Vsys.Webui.Network.GlobalProtect = &RoleVsysWebuiNetworkGlobalProtect{} + if o.Role.Vsys.Webui.Network.GlobalProtect.Misc != nil { + entry.Misc["RoleVsysWebuiNetworkGlobalProtect"] = o.Role.Vsys.Webui.Network.GlobalProtect.Misc } - if o.Role.Vsys.Webui.Monitor.CustomReports.GtpLog != nil { - nestedRole.Vsys.Webui.Monitor.CustomReports.GtpLog = o.Role.Vsys.Webui.Monitor.CustomReports.GtpLog + if o.Role.Vsys.Webui.Network.GlobalProtect.Gateways != nil { + nestedRole.Vsys.Webui.Network.GlobalProtect.Gateways = o.Role.Vsys.Webui.Network.GlobalProtect.Gateways } - if o.Role.Vsys.Webui.Monitor.CustomReports.SctpLog != nil { - nestedRole.Vsys.Webui.Monitor.CustomReports.SctpLog = o.Role.Vsys.Webui.Monitor.CustomReports.SctpLog + if o.Role.Vsys.Webui.Network.GlobalProtect.Mdm != nil { + nestedRole.Vsys.Webui.Network.GlobalProtect.Mdm = o.Role.Vsys.Webui.Network.GlobalProtect.Mdm } - if o.Role.Vsys.Webui.Monitor.CustomReports.SctpSummary != nil { - nestedRole.Vsys.Webui.Monitor.CustomReports.SctpSummary = o.Role.Vsys.Webui.Monitor.CustomReports.SctpSummary + if o.Role.Vsys.Webui.Network.GlobalProtect.Portals != nil { + nestedRole.Vsys.Webui.Network.GlobalProtect.Portals = o.Role.Vsys.Webui.Network.GlobalProtect.Portals } - if o.Role.Vsys.Webui.Monitor.CustomReports.DataFilteringLog != nil { - nestedRole.Vsys.Webui.Monitor.CustomReports.DataFilteringLog = o.Role.Vsys.Webui.Monitor.CustomReports.DataFilteringLog + if o.Role.Vsys.Webui.Network.GlobalProtect.ClientlessAppGroups != nil { + nestedRole.Vsys.Webui.Network.GlobalProtect.ClientlessAppGroups = o.Role.Vsys.Webui.Network.GlobalProtect.ClientlessAppGroups } - if o.Role.Vsys.Webui.Monitor.CustomReports.GtpSummary != nil { - nestedRole.Vsys.Webui.Monitor.CustomReports.GtpSummary = o.Role.Vsys.Webui.Monitor.CustomReports.GtpSummary + if o.Role.Vsys.Webui.Network.GlobalProtect.ClientlessApps != nil { + nestedRole.Vsys.Webui.Network.GlobalProtect.ClientlessApps = o.Role.Vsys.Webui.Network.GlobalProtect.ClientlessApps } } - if o.Role.Vsys.Webui.Monitor.SessionBrowser != nil { - nestedRole.Vsys.Webui.Monitor.SessionBrowser = o.Role.Vsys.Webui.Monitor.SessionBrowser + } + if o.Role.Vsys.Webui.Operations != nil { + nestedRole.Vsys.Webui.Operations = &RoleVsysWebuiOperations{} + if o.Role.Vsys.Webui.Operations.Misc != nil { + entry.Misc["RoleVsysWebuiOperations"] = o.Role.Vsys.Webui.Operations.Misc } - if o.Role.Vsys.Webui.Monitor.ViewCustomReports != nil { - nestedRole.Vsys.Webui.Monitor.ViewCustomReports = o.Role.Vsys.Webui.Monitor.ViewCustomReports + if o.Role.Vsys.Webui.Operations.Reboot != nil { + nestedRole.Vsys.Webui.Operations.Reboot = o.Role.Vsys.Webui.Operations.Reboot + } + if o.Role.Vsys.Webui.Operations.DownloadCoreFiles != nil { + nestedRole.Vsys.Webui.Operations.DownloadCoreFiles = o.Role.Vsys.Webui.Operations.DownloadCoreFiles + } + if o.Role.Vsys.Webui.Operations.DownloadPcapFiles != nil { + nestedRole.Vsys.Webui.Operations.DownloadPcapFiles = o.Role.Vsys.Webui.Operations.DownloadPcapFiles + } + if o.Role.Vsys.Webui.Operations.GenerateStatsDumpFile != nil { + nestedRole.Vsys.Webui.Operations.GenerateStatsDumpFile = o.Role.Vsys.Webui.Operations.GenerateStatsDumpFile + } + if o.Role.Vsys.Webui.Operations.GenerateTechSupportFile != nil { + nestedRole.Vsys.Webui.Operations.GenerateTechSupportFile = o.Role.Vsys.Webui.Operations.GenerateTechSupportFile } } if o.Role.Vsys.Webui.Tasks != nil { nestedRole.Vsys.Webui.Tasks = o.Role.Vsys.Webui.Tasks } + if o.Role.Vsys.Webui.Validate != nil { + nestedRole.Vsys.Webui.Validate = o.Role.Vsys.Webui.Validate + } } if o.Role.Vsys.Xmlapi != nil { nestedRole.Vsys.Xmlapi = &RoleVsysXmlapi{} if o.Role.Vsys.Xmlapi.Misc != nil { entry.Misc["RoleVsysXmlapi"] = o.Role.Vsys.Xmlapi.Misc } - if o.Role.Vsys.Xmlapi.Config != nil { - nestedRole.Vsys.Xmlapi.Config = o.Role.Vsys.Xmlapi.Config - } if o.Role.Vsys.Xmlapi.Import != nil { nestedRole.Vsys.Xmlapi.Import = o.Role.Vsys.Xmlapi.Import } + if o.Role.Vsys.Xmlapi.Iot != nil { + nestedRole.Vsys.Xmlapi.Iot = o.Role.Vsys.Xmlapi.Iot + } if o.Role.Vsys.Xmlapi.Log != nil { nestedRole.Vsys.Xmlapi.Log = o.Role.Vsys.Xmlapi.Log } - if o.Role.Vsys.Xmlapi.UserId != nil { - nestedRole.Vsys.Xmlapi.UserId = o.Role.Vsys.Xmlapi.UserId + if o.Role.Vsys.Xmlapi.Op != nil { + nestedRole.Vsys.Xmlapi.Op = o.Role.Vsys.Xmlapi.Op } if o.Role.Vsys.Xmlapi.Commit != nil { nestedRole.Vsys.Xmlapi.Commit = o.Role.Vsys.Xmlapi.Commit } - if o.Role.Vsys.Xmlapi.Export != nil { - nestedRole.Vsys.Xmlapi.Export = o.Role.Vsys.Xmlapi.Export + if o.Role.Vsys.Xmlapi.Config != nil { + nestedRole.Vsys.Xmlapi.Config = o.Role.Vsys.Xmlapi.Config } - if o.Role.Vsys.Xmlapi.Iot != nil { - nestedRole.Vsys.Xmlapi.Iot = o.Role.Vsys.Xmlapi.Iot + if o.Role.Vsys.Xmlapi.UserId != nil { + nestedRole.Vsys.Xmlapi.UserId = o.Role.Vsys.Xmlapi.UserId } - if o.Role.Vsys.Xmlapi.Op != nil { - nestedRole.Vsys.Xmlapi.Op = o.Role.Vsys.Xmlapi.Op + if o.Role.Vsys.Xmlapi.Export != nil { + nestedRole.Vsys.Xmlapi.Export = o.Role.Vsys.Xmlapi.Export } if o.Role.Vsys.Xmlapi.Report != nil { nestedRole.Vsys.Xmlapi.Report = o.Role.Vsys.Xmlapi.Report @@ -6213,103 +6213,84 @@ func SpecMatches(a, b *Entry) bool { return true } -func matchRoleDeviceRestapiPolicies(a *RoleDeviceRestapiPolicies, b *RoleDeviceRestapiPolicies) bool { +func matchRoleDeviceRestapiDevice(a *RoleDeviceRestapiDevice, b *RoleDeviceRestapiDevice) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.NatRules, b.NatRules) { - return false - } - if !util.StringsMatch(a.PolicyBasedForwardingRules, b.PolicyBasedForwardingRules) { - return false - } - if !util.StringsMatch(a.QosRules, b.QosRules) { - return false - } - if !util.StringsMatch(a.ApplicationOverrideRules, b.ApplicationOverrideRules) { - return false - } - if !util.StringsMatch(a.AuthenticationRules, b.AuthenticationRules) { + if !util.StringsMatch(a.SnmpTrapServerProfiles, b.SnmpTrapServerProfiles) { return false } - if !util.StringsMatch(a.NetworkPacketBrokerRules, b.NetworkPacketBrokerRules) { + if !util.StringsMatch(a.SyslogServerProfiles, b.SyslogServerProfiles) { return false } - if !util.StringsMatch(a.SdwanRules, b.SdwanRules) { + if !util.StringsMatch(a.VirtualSystems, b.VirtualSystems) { return false } - if !util.StringsMatch(a.SecurityRules, b.SecurityRules) { + if !util.StringsMatch(a.EmailServerProfiles, b.EmailServerProfiles) { return false } - if !util.StringsMatch(a.TunnelInspectionRules, b.TunnelInspectionRules) { + if !util.StringsMatch(a.HttpServerProfiles, b.HttpServerProfiles) { return false } - if !util.StringsMatch(a.DecryptionRules, b.DecryptionRules) { + if !util.StringsMatch(a.LdapServerProfiles, b.LdapServerProfiles) { return false } - if !util.StringsMatch(a.DosRules, b.DosRules) { + if !util.StringsMatch(a.LogInterfaceSetting, b.LogInterfaceSetting) { return false } return true } -func matchRoleDeviceRestapiSystem(a *RoleDeviceRestapiSystem, b *RoleDeviceRestapiSystem) bool { +func matchRoleDeviceRestapiNetwork(a *RoleDeviceRestapiNetwork, b *RoleDeviceRestapiNetwork) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Configuration, b.Configuration) { + if !util.StringsMatch(a.GlobalprotectIpsecCryptoNetworkProfiles, b.GlobalprotectIpsecCryptoNetworkProfiles) { return false } - return true -} -func matchRoleDeviceRestapiDevice(a *RoleDeviceRestapiDevice, b *RoleDeviceRestapiDevice) bool { - if a == nil && b != nil || a != nil && b == nil { + if !util.StringsMatch(a.LoopbackInterfaces, b.LoopbackInterfaces) { return false - } else if a == nil && b == nil { - return true } - if !util.StringsMatch(a.SyslogServerProfiles, b.SyslogServerProfiles) { + if !util.StringsMatch(a.QosInterfaces, b.QosInterfaces) { return false } - if !util.StringsMatch(a.VirtualSystems, b.VirtualSystems) { + if !util.StringsMatch(a.SdwanInterfaces, b.SdwanInterfaces) { return false } - if !util.StringsMatch(a.EmailServerProfiles, b.EmailServerProfiles) { + if !util.StringsMatch(a.Vlans, b.Vlans) { return false } - if !util.StringsMatch(a.HttpServerProfiles, b.HttpServerProfiles) { + if !util.StringsMatch(a.AggregateEthernetInterfaces, b.AggregateEthernetInterfaces) { return false } - if !util.StringsMatch(a.LdapServerProfiles, b.LdapServerProfiles) { + if !util.StringsMatch(a.GreTunnels, b.GreTunnels) { return false } - if !util.StringsMatch(a.LogInterfaceSetting, b.LogInterfaceSetting) { + if !util.StringsMatch(a.IkeCryptoNetworkProfiles, b.IkeCryptoNetworkProfiles) { return false } - if !util.StringsMatch(a.SnmpTrapServerProfiles, b.SnmpTrapServerProfiles) { + if !util.StringsMatch(a.IpsecTunnels, b.IpsecTunnels) { return false } - return true -} -func matchRoleDeviceRestapiNetwork(a *RoleDeviceRestapiNetwork, b *RoleDeviceRestapiNetwork) bool { - if a == nil && b != nil || a != nil && b == nil { + if !util.StringsMatch(a.LldpNetworkProfiles, b.LldpNetworkProfiles) { return false - } else if a == nil && b == nil { - return true } - if !util.StringsMatch(a.DhcpRelays, b.DhcpRelays) { + if !util.StringsMatch(a.VlanInterfaces, b.VlanInterfaces) { return false } - if !util.StringsMatch(a.GlobalprotectMdmServers, b.GlobalprotectMdmServers) { + if !util.StringsMatch(a.Zones, b.Zones) { return false } - if !util.StringsMatch(a.InterfaceManagementNetworkProfiles, b.InterfaceManagementNetworkProfiles) { + if !util.StringsMatch(a.BfdNetworkProfiles, b.BfdNetworkProfiles) { return false } - if !util.StringsMatch(a.QosNetworkProfiles, b.QosNetworkProfiles) { + if !util.StringsMatch(a.GlobalprotectGateways, b.GlobalprotectGateways) { + return false + } + if !util.StringsMatch(a.GlobalprotectMdmServers, b.GlobalprotectMdmServers) { return false } if !util.StringsMatch(a.GlobalprotectClientlessAppGroups, b.GlobalprotectClientlessAppGroups) { @@ -6318,213 +6299,232 @@ func matchRoleDeviceRestapiNetwork(a *RoleDeviceRestapiNetwork, b *RoleDeviceRes if !util.StringsMatch(a.TunnelInterfaces, b.TunnelInterfaces) { return false } - if !util.StringsMatch(a.VirtualWires, b.VirtualWires) { + if !util.StringsMatch(a.VirtualRouters, b.VirtualRouters) { return false } - if !util.StringsMatch(a.BgpRoutingProfiles, b.BgpRoutingProfiles) { + if !util.StringsMatch(a.VirtualWires, b.VirtualWires) { return false } - if !util.StringsMatch(a.GlobalprotectClientlessApps, b.GlobalprotectClientlessApps) { + if !util.StringsMatch(a.ZoneProtectionNetworkProfiles, b.ZoneProtectionNetworkProfiles) { return false } - if !util.StringsMatch(a.GreTunnels, b.GreTunnels) { + if !util.StringsMatch(a.InterfaceManagementNetworkProfiles, b.InterfaceManagementNetworkProfiles) { return false } - if !util.StringsMatch(a.IkeCryptoNetworkProfiles, b.IkeCryptoNetworkProfiles) { + if !util.StringsMatch(a.Lldp, b.Lldp) { return false } - if !util.StringsMatch(a.LogicalRouters, b.LogicalRouters) { + if !util.StringsMatch(a.GlobalprotectPortals, b.GlobalprotectPortals) { return false } - if !util.StringsMatch(a.LoopbackInterfaces, b.LoopbackInterfaces) { + if !util.StringsMatch(a.IkeGatewayNetworkProfiles, b.IkeGatewayNetworkProfiles) { return false } - if !util.StringsMatch(a.SdwanInterfaceProfiles, b.SdwanInterfaceProfiles) { + if !util.StringsMatch(a.IpsecCryptoNetworkProfiles, b.IpsecCryptoNetworkProfiles) { return false } - if !util.StringsMatch(a.AggregateEthernetInterfaces, b.AggregateEthernetInterfaces) { + if !util.StringsMatch(a.QosNetworkProfiles, b.QosNetworkProfiles) { return false } - if !util.StringsMatch(a.GlobalprotectPortals, b.GlobalprotectPortals) { + if !util.StringsMatch(a.TunnelMonitorNetworkProfiles, b.TunnelMonitorNetworkProfiles) { return false } - if !util.StringsMatch(a.TunnelMonitorNetworkProfiles, b.TunnelMonitorNetworkProfiles) { + if !util.StringsMatch(a.BgpRoutingProfiles, b.BgpRoutingProfiles) { return false } - if !util.StringsMatch(a.BfdNetworkProfiles, b.BfdNetworkProfiles) { + if !util.StringsMatch(a.DnsProxies, b.DnsProxies) { return false } if !util.StringsMatch(a.EthernetInterfaces, b.EthernetInterfaces) { return false } - if !util.StringsMatch(a.DhcpServers, b.DhcpServers) { + if !util.StringsMatch(a.GlobalprotectClientlessApps, b.GlobalprotectClientlessApps) { return false } - if !util.StringsMatch(a.LldpNetworkProfiles, b.LldpNetworkProfiles) { + if !util.StringsMatch(a.SdwanInterfaceProfiles, b.SdwanInterfaceProfiles) { return false } - if !util.StringsMatch(a.ZoneProtectionNetworkProfiles, b.ZoneProtectionNetworkProfiles) { + if !util.StringsMatch(a.DhcpServers, b.DhcpServers) { return false } - if !util.StringsMatch(a.Zones, b.Zones) { + if !util.StringsMatch(a.LogicalRouters, b.LogicalRouters) { return false } - if !util.StringsMatch(a.GlobalprotectIpsecCryptoNetworkProfiles, b.GlobalprotectIpsecCryptoNetworkProfiles) { + if !util.StringsMatch(a.DhcpRelays, b.DhcpRelays) { return false } - if !util.StringsMatch(a.IpsecTunnels, b.IpsecTunnels) { + return true +} +func matchRoleDeviceRestapiObjects(a *RoleDeviceRestapiObjects, b *RoleDeviceRestapiObjects) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } - if !util.StringsMatch(a.QosInterfaces, b.QosInterfaces) { + if !util.StringsMatch(a.ExternalDynamicLists, b.ExternalDynamicLists) { return false } - if !util.StringsMatch(a.SdwanInterfaces, b.SdwanInterfaces) { + if !util.StringsMatch(a.AddressGroups, b.AddressGroups) { return false } - if !util.StringsMatch(a.VirtualRouters, b.VirtualRouters) { + if !util.StringsMatch(a.AntivirusSecurityProfiles, b.AntivirusSecurityProfiles) { return false } - if !util.StringsMatch(a.VlanInterfaces, b.VlanInterfaces) { + if !util.StringsMatch(a.SecurityProfileGroups, b.SecurityProfileGroups) { return false } - if !util.StringsMatch(a.Vlans, b.Vlans) { + if !util.StringsMatch(a.PacketBrokerProfiles, b.PacketBrokerProfiles) { return false } - if !util.StringsMatch(a.DnsProxies, b.DnsProxies) { + if !util.StringsMatch(a.Schedules, b.Schedules) { return false } - if !util.StringsMatch(a.GlobalprotectGateways, b.GlobalprotectGateways) { + if !util.StringsMatch(a.ServiceGroups, b.ServiceGroups) { return false } - if !util.StringsMatch(a.IkeGatewayNetworkProfiles, b.IkeGatewayNetworkProfiles) { + if !util.StringsMatch(a.Addresses, b.Addresses) { return false } - if !util.StringsMatch(a.IpsecCryptoNetworkProfiles, b.IpsecCryptoNetworkProfiles) { + if !util.StringsMatch(a.ApplicationFilters, b.ApplicationFilters) { return false } - if !util.StringsMatch(a.Lldp, b.Lldp) { + if !util.StringsMatch(a.AuthenticationEnforcements, b.AuthenticationEnforcements) { return false } - return true -} -func matchRoleDeviceRestapiObjects(a *RoleDeviceRestapiObjects, b *RoleDeviceRestapiObjects) bool { - if a == nil && b != nil || a != nil && b == nil { + if !util.StringsMatch(a.FileBlockingSecurityProfiles, b.FileBlockingSecurityProfiles) { return false - } else if a == nil && b == nil { - return true } - if !util.StringsMatch(a.DosProtectionSecurityProfiles, b.DosProtectionSecurityProfiles) { + if !util.StringsMatch(a.GlobalprotectHipProfiles, b.GlobalprotectHipProfiles) { return false } - if !util.StringsMatch(a.AddressGroups, b.AddressGroups) { + if !util.StringsMatch(a.LogForwardingProfiles, b.LogForwardingProfiles) { return false } - if !util.StringsMatch(a.DataFilteringSecurityProfiles, b.DataFilteringSecurityProfiles) { + if !util.StringsMatch(a.SctpProtectionSecurityProfiles, b.SctpProtectionSecurityProfiles) { return false } - if !util.StringsMatch(a.SdwanErrorCorrectionProfiles, b.SdwanErrorCorrectionProfiles) { + if !util.StringsMatch(a.SdwanSaasQualityProfiles, b.SdwanSaasQualityProfiles) { return false } - if !util.StringsMatch(a.VulnerabilityProtectionSecurityProfiles, b.VulnerabilityProtectionSecurityProfiles) { + if !util.StringsMatch(a.AntiSpywareSecurityProfiles, b.AntiSpywareSecurityProfiles) { return false } if !util.StringsMatch(a.ApplicationGroups, b.ApplicationGroups) { return false } - if !util.StringsMatch(a.FileBlockingSecurityProfiles, b.FileBlockingSecurityProfiles) { + if !util.StringsMatch(a.CustomDataPatterns, b.CustomDataPatterns) { return false } - if !util.StringsMatch(a.GlobalprotectHipProfiles, b.GlobalprotectHipProfiles) { + if !util.StringsMatch(a.DataFilteringSecurityProfiles, b.DataFilteringSecurityProfiles) { return false } - if !util.StringsMatch(a.LogForwardingProfiles, b.LogForwardingProfiles) { + if !util.StringsMatch(a.WildfireAnalysisSecurityProfiles, b.WildfireAnalysisSecurityProfiles) { return false } - if !util.StringsMatch(a.SctpProtectionSecurityProfiles, b.SctpProtectionSecurityProfiles) { + if !util.StringsMatch(a.CustomSpywareSignatures, b.CustomSpywareSignatures) { return false } - if !util.StringsMatch(a.WildfireAnalysisSecurityProfiles, b.WildfireAnalysisSecurityProfiles) { + if !util.StringsMatch(a.DecryptionProfiles, b.DecryptionProfiles) { return false } - if !util.StringsMatch(a.Applications, b.Applications) { + if !util.StringsMatch(a.DynamicUserGroups, b.DynamicUserGroups) { return false } - if !util.StringsMatch(a.CustomDataPatterns, b.CustomDataPatterns) { + if !util.StringsMatch(a.UrlFilteringSecurityProfiles, b.UrlFilteringSecurityProfiles) { return false } - if !util.StringsMatch(a.CustomVulnerabilitySignatures, b.CustomVulnerabilitySignatures) { + if !util.StringsMatch(a.SdwanPathQualityProfiles, b.SdwanPathQualityProfiles) { return false } - if !util.StringsMatch(a.GtpProtectionSecurityProfiles, b.GtpProtectionSecurityProfiles) { + if !util.StringsMatch(a.SdwanTrafficDistributionProfiles, b.SdwanTrafficDistributionProfiles) { return false } - if !util.StringsMatch(a.SdwanSaasQualityProfiles, b.SdwanSaasQualityProfiles) { + if !util.StringsMatch(a.Services, b.Services) { return false } - if !util.StringsMatch(a.SecurityProfileGroups, b.SecurityProfileGroups) { + if !util.StringsMatch(a.Tags, b.Tags) { return false } - if !util.StringsMatch(a.AuthenticationEnforcements, b.AuthenticationEnforcements) { + if !util.StringsMatch(a.VulnerabilityProtectionSecurityProfiles, b.VulnerabilityProtectionSecurityProfiles) { + return false + } + if !util.StringsMatch(a.Applications, b.Applications) { + return false + } + if !util.StringsMatch(a.CustomVulnerabilitySignatures, b.CustomVulnerabilitySignatures) { + return false + } + if !util.StringsMatch(a.GlobalprotectHipObjects, b.GlobalprotectHipObjects) { return false } - if !util.StringsMatch(a.Schedules, b.Schedules) { + if !util.StringsMatch(a.SdwanErrorCorrectionProfiles, b.SdwanErrorCorrectionProfiles) { return false } - if !util.StringsMatch(a.UrlFilteringSecurityProfiles, b.UrlFilteringSecurityProfiles) { + if !util.StringsMatch(a.Regions, b.Regions) { return false } - if !util.StringsMatch(a.GlobalprotectHipObjects, b.GlobalprotectHipObjects) { + if !util.StringsMatch(a.CustomUrlCategories, b.CustomUrlCategories) { return false } - if !util.StringsMatch(a.PacketBrokerProfiles, b.PacketBrokerProfiles) { + if !util.StringsMatch(a.Devices, b.Devices) { return false } - if !util.StringsMatch(a.Regions, b.Regions) { + if !util.StringsMatch(a.DosProtectionSecurityProfiles, b.DosProtectionSecurityProfiles) { return false } - if !util.StringsMatch(a.Services, b.Services) { + if !util.StringsMatch(a.GtpProtectionSecurityProfiles, b.GtpProtectionSecurityProfiles) { return false } - if !util.StringsMatch(a.ExternalDynamicLists, b.ExternalDynamicLists) { + return true +} +func matchRoleDeviceRestapiPolicies(a *RoleDeviceRestapiPolicies, b *RoleDeviceRestapiPolicies) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } - if !util.StringsMatch(a.ServiceGroups, b.ServiceGroups) { + if !util.StringsMatch(a.AuthenticationRules, b.AuthenticationRules) { return false } - if !util.StringsMatch(a.Addresses, b.Addresses) { + if !util.StringsMatch(a.DosRules, b.DosRules) { return false } - if !util.StringsMatch(a.AntiSpywareSecurityProfiles, b.AntiSpywareSecurityProfiles) { + if !util.StringsMatch(a.NatRules, b.NatRules) { return false } - if !util.StringsMatch(a.AntivirusSecurityProfiles, b.AntivirusSecurityProfiles) { + if !util.StringsMatch(a.NetworkPacketBrokerRules, b.NetworkPacketBrokerRules) { return false } - if !util.StringsMatch(a.CustomSpywareSignatures, b.CustomSpywareSignatures) { + if !util.StringsMatch(a.TunnelInspectionRules, b.TunnelInspectionRules) { return false } - if !util.StringsMatch(a.DecryptionProfiles, b.DecryptionProfiles) { + if !util.StringsMatch(a.ApplicationOverrideRules, b.ApplicationOverrideRules) { return false } - if !util.StringsMatch(a.Devices, b.Devices) { + if !util.StringsMatch(a.DecryptionRules, b.DecryptionRules) { return false } - if !util.StringsMatch(a.Tags, b.Tags) { + if !util.StringsMatch(a.PolicyBasedForwardingRules, b.PolicyBasedForwardingRules) { return false } - if !util.StringsMatch(a.ApplicationFilters, b.ApplicationFilters) { + if !util.StringsMatch(a.QosRules, b.QosRules) { return false } - if !util.StringsMatch(a.CustomUrlCategories, b.CustomUrlCategories) { + if !util.StringsMatch(a.SdwanRules, b.SdwanRules) { return false } - if !util.StringsMatch(a.DynamicUserGroups, b.DynamicUserGroups) { + if !util.StringsMatch(a.SecurityRules, b.SecurityRules) { return false } - if !util.StringsMatch(a.SdwanPathQualityProfiles, b.SdwanPathQualityProfiles) { + return true +} +func matchRoleDeviceRestapiSystem(a *RoleDeviceRestapiSystem, b *RoleDeviceRestapiSystem) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } - if !util.StringsMatch(a.SdwanTrafficDistributionProfiles, b.SdwanTrafficDistributionProfiles) { + if !util.StringsMatch(a.Configuration, b.Configuration) { return false } return true @@ -6552,975 +6552,975 @@ func matchRoleDeviceRestapi(a *RoleDeviceRestapi, b *RoleDeviceRestapi) bool { } return true } -func matchRoleDeviceWebuiPolicies(a *RoleDeviceWebuiPolicies, b *RoleDeviceWebuiPolicies) bool { +func matchRoleDeviceWebuiNetworkNetworkProfiles(a *RoleDeviceWebuiNetworkNetworkProfiles, b *RoleDeviceWebuiNetworkNetworkProfiles) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.NatRulebase, b.NatRulebase) { - return false - } - if !util.StringsMatch(a.NetworkPacketBrokerRulebase, b.NetworkPacketBrokerRulebase) { - return false - } - if !util.StringsMatch(a.QosRulebase, b.QosRulebase) { + if !util.StringsMatch(a.TunnelMonitor, b.TunnelMonitor) { return false } - if !util.StringsMatch(a.RuleHitCountReset, b.RuleHitCountReset) { + if !util.StringsMatch(a.ZoneProtection, b.ZoneProtection) { return false } - if !util.StringsMatch(a.SdwanRulebase, b.SdwanRulebase) { + if !util.StringsMatch(a.BfdProfile, b.BfdProfile) { return false } - if !util.StringsMatch(a.SecurityRulebase, b.SecurityRulebase) { + if !util.StringsMatch(a.IkeCrypto, b.IkeCrypto) { return false } - if !util.StringsMatch(a.SslDecryptionRulebase, b.SslDecryptionRulebase) { + if !util.StringsMatch(a.QosProfile, b.QosProfile) { return false } - if !util.StringsMatch(a.TunnelInspectRulebase, b.TunnelInspectRulebase) { + if !util.StringsMatch(a.IpsecCrypto, b.IpsecCrypto) { return false } - if !util.StringsMatch(a.ApplicationOverrideRulebase, b.ApplicationOverrideRulebase) { + if !util.StringsMatch(a.LldpProfile, b.LldpProfile) { return false } - if !util.StringsMatch(a.AuthenticationRulebase, b.AuthenticationRulebase) { + if !util.StringsMatch(a.GpAppIpsecCrypto, b.GpAppIpsecCrypto) { return false } - if !util.StringsMatch(a.DosRulebase, b.DosRulebase) { + if !util.StringsMatch(a.IkeGateways, b.IkeGateways) { return false } - if !util.StringsMatch(a.PbfRulebase, b.PbfRulebase) { + if !util.StringsMatch(a.InterfaceMgmt, b.InterfaceMgmt) { return false } return true } -func matchRoleDeviceWebuiPrivacy(a *RoleDeviceWebuiPrivacy, b *RoleDeviceWebuiPrivacy) bool { +func matchRoleDeviceWebuiNetworkRoutingRoutingProfiles(a *RoleDeviceWebuiNetworkRoutingRoutingProfiles, b *RoleDeviceWebuiNetworkRoutingRoutingProfiles) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.ShowFullIpAddresses, b.ShowFullIpAddresses) { + if !util.StringsMatch(a.Ospfv3, b.Ospfv3) { return false } - if !util.StringsMatch(a.ShowUserNamesInLogsAndReports, b.ShowUserNamesInLogsAndReports) { + if !util.StringsMatch(a.Ripv2, b.Ripv2) { return false } - if !util.StringsMatch(a.ViewPcapFiles, b.ViewPcapFiles) { + if !util.StringsMatch(a.Bfd, b.Bfd) { + return false + } + if !util.StringsMatch(a.Bgp, b.Bgp) { + return false + } + if !util.StringsMatch(a.Filters, b.Filters) { + return false + } + if !util.StringsMatch(a.Multicast, b.Multicast) { + return false + } + if !util.StringsMatch(a.Ospf, b.Ospf) { return false } return true } -func matchRoleDeviceWebuiCommit(a *RoleDeviceWebuiCommit, b *RoleDeviceWebuiCommit) bool { +func matchRoleDeviceWebuiNetworkRouting(a *RoleDeviceWebuiNetworkRouting, b *RoleDeviceWebuiNetworkRouting) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.ObjectLevelChanges, b.ObjectLevelChanges) { - return false - } - if !util.StringsMatch(a.CommitForOtherAdmins, b.CommitForOtherAdmins) { + if !util.StringsMatch(a.LogicalRouters, b.LogicalRouters) { return false } - if !util.StringsMatch(a.Device, b.Device) { + if !matchRoleDeviceWebuiNetworkRoutingRoutingProfiles(a.RoutingProfiles, b.RoutingProfiles) { return false } return true } -func matchRoleDeviceWebuiMonitorPdfReports(a *RoleDeviceWebuiMonitorPdfReports, b *RoleDeviceWebuiMonitorPdfReports) bool { +func matchRoleDeviceWebuiNetworkGlobalProtect(a *RoleDeviceWebuiNetworkGlobalProtect, b *RoleDeviceWebuiNetworkGlobalProtect) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.EmailScheduler, b.EmailScheduler) { - return false - } - if !util.StringsMatch(a.ManagePdfSummary, b.ManagePdfSummary) { + if !util.StringsMatch(a.ClientlessAppGroups, b.ClientlessAppGroups) { return false } - if !util.StringsMatch(a.PdfSummaryReports, b.PdfSummaryReports) { + if !util.StringsMatch(a.ClientlessApps, b.ClientlessApps) { return false } - if !util.StringsMatch(a.ReportGroups, b.ReportGroups) { + if !util.StringsMatch(a.Gateways, b.Gateways) { return false } - if !util.StringsMatch(a.SaasApplicationUsageReport, b.SaasApplicationUsageReport) { + if !util.StringsMatch(a.Mdm, b.Mdm) { return false } - if !util.StringsMatch(a.UserActivityReport, b.UserActivityReport) { + if !util.StringsMatch(a.Portals, b.Portals) { return false } return true } -func matchRoleDeviceWebuiMonitorLogs(a *RoleDeviceWebuiMonitorLogs, b *RoleDeviceWebuiMonitorLogs) bool { +func matchRoleDeviceWebuiNetwork(a *RoleDeviceWebuiNetwork, b *RoleDeviceWebuiNetwork) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Authentication, b.Authentication) { - return false - } - if !util.StringsMatch(a.Traffic, b.Traffic) { + if !util.StringsMatch(a.Qos, b.Qos) { return false } - if !util.StringsMatch(a.Userid, b.Userid) { + if !util.StringsMatch(a.VirtualRouters, b.VirtualRouters) { return false } - if !util.StringsMatch(a.Sctp, b.Sctp) { + if !util.StringsMatch(a.Dhcp, b.Dhcp) { return false } - if !util.StringsMatch(a.Configuration, b.Configuration) { + if !matchRoleDeviceWebuiNetworkGlobalProtect(a.GlobalProtect, b.GlobalProtect) { return false } - if !util.StringsMatch(a.DataFiltering, b.DataFiltering) { + if !util.StringsMatch(a.GreTunnels, b.GreTunnels) { return false } - if !util.StringsMatch(a.Gtp, b.Gtp) { + if !util.StringsMatch(a.Lldp, b.Lldp) { return false } - if !util.StringsMatch(a.Alarm, b.Alarm) { + if !util.StringsMatch(a.DnsProxy, b.DnsProxy) { return false } - if !util.StringsMatch(a.System, b.System) { + if !util.StringsMatch(a.Interfaces, b.Interfaces) { return false } - if !util.StringsMatch(a.Threat, b.Threat) { + if !util.StringsMatch(a.Zones, b.Zones) { return false } - if !util.StringsMatch(a.Iptag, b.Iptag) { + if !util.StringsMatch(a.IpsecTunnels, b.IpsecTunnels) { return false } - if !util.StringsMatch(a.Tunnel, b.Tunnel) { + if !matchRoleDeviceWebuiNetworkNetworkProfiles(a.NetworkProfiles, b.NetworkProfiles) { return false } - if !util.StringsMatch(a.Url, b.Url) { + if !matchRoleDeviceWebuiNetworkRouting(a.Routing, b.Routing) { return false } - if !util.StringsMatch(a.Wildfire, b.Wildfire) { + if !util.StringsMatch(a.VirtualWires, b.VirtualWires) { return false } - if !util.StringsMatch(a.Decryption, b.Decryption) { + if !util.StringsMatch(a.SdwanInterfaceProfile, b.SdwanInterfaceProfile) { return false } - if !util.StringsMatch(a.Globalprotect, b.Globalprotect) { + if !util.StringsMatch(a.Vlans, b.Vlans) { return false } - if !util.StringsMatch(a.Hipmatch, b.Hipmatch) { + if !util.StringsMatch(a.SecureWebGateway, b.SecureWebGateway) { return false } return true } -func matchRoleDeviceWebuiMonitorAutomatedCorrelationEngine(a *RoleDeviceWebuiMonitorAutomatedCorrelationEngine, b *RoleDeviceWebuiMonitorAutomatedCorrelationEngine) bool { +func matchRoleDeviceWebuiPrivacy(a *RoleDeviceWebuiPrivacy, b *RoleDeviceWebuiPrivacy) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.CorrelatedEvents, b.CorrelatedEvents) { + if !util.StringsMatch(a.ShowFullIpAddresses, b.ShowFullIpAddresses) { return false } - if !util.StringsMatch(a.CorrelationObjects, b.CorrelationObjects) { + if !util.StringsMatch(a.ShowUserNamesInLogsAndReports, b.ShowUserNamesInLogsAndReports) { + return false + } + if !util.StringsMatch(a.ViewPcapFiles, b.ViewPcapFiles) { return false } return true } -func matchRoleDeviceWebuiMonitorCustomReports(a *RoleDeviceWebuiMonitorCustomReports, b *RoleDeviceWebuiMonitorCustomReports) bool { +func matchRoleDeviceWebuiCommit(a *RoleDeviceWebuiCommit, b *RoleDeviceWebuiCommit) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.GtpSummary, b.GtpSummary) { - return false - } - if !util.StringsMatch(a.Iptag, b.Iptag) { - return false - } - if !util.StringsMatch(a.TrafficSummary, b.TrafficSummary) { - return false - } - if !util.StringsMatch(a.TunnelSummary, b.TunnelSummary) { - return false - } - if !util.StringsMatch(a.DecryptionLog, b.DecryptionLog) { - return false - } - if !util.StringsMatch(a.DecryptionSummary, b.DecryptionSummary) { - return false - } - if !util.StringsMatch(a.GtpLog, b.GtpLog) { - return false - } - if !util.StringsMatch(a.Hipmatch, b.Hipmatch) { - return false - } - if !util.StringsMatch(a.SctpLog, b.SctpLog) { - return false - } - if !util.StringsMatch(a.ThreatLog, b.ThreatLog) { + if !util.StringsMatch(a.Device, b.Device) { return false } - if !util.StringsMatch(a.TrafficLog, b.TrafficLog) { + if !util.StringsMatch(a.ObjectLevelChanges, b.ObjectLevelChanges) { return false } - if !util.StringsMatch(a.Userid, b.Userid) { + if !util.StringsMatch(a.CommitForOtherAdmins, b.CommitForOtherAdmins) { return false } - if !util.StringsMatch(a.Auth, b.Auth) { + return true +} +func matchRoleDeviceWebuiDeviceLogSettings(a *RoleDeviceWebuiDeviceLogSettings, b *RoleDeviceWebuiDeviceLogSettings) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } - if !util.StringsMatch(a.DataFilteringLog, b.DataFilteringLog) { + if !util.StringsMatch(a.Correlation, b.Correlation) { return false } if !util.StringsMatch(a.Globalprotect, b.Globalprotect) { return false } - if !util.StringsMatch(a.UrlSummary, b.UrlSummary) { + if !util.StringsMatch(a.Iptag, b.Iptag) { return false } - if !util.StringsMatch(a.WildfireLog, b.WildfireLog) { + if !util.StringsMatch(a.ManageLog, b.ManageLog) { return false } - if !util.StringsMatch(a.ApplicationStatistics, b.ApplicationStatistics) { + if !util.StringsMatch(a.UserId, b.UserId) { return false } - if !util.StringsMatch(a.SctpSummary, b.SctpSummary) { + if !util.StringsMatch(a.CcAlarm, b.CcAlarm) { return false } - if !util.StringsMatch(a.ThreatSummary, b.ThreatSummary) { + if !util.StringsMatch(a.Config, b.Config) { return false } - if !util.StringsMatch(a.TunnelLog, b.TunnelLog) { + if !util.StringsMatch(a.Hipmatch, b.Hipmatch) { return false } - if !util.StringsMatch(a.UrlLog, b.UrlLog) { + if !util.StringsMatch(a.System, b.System) { return false } return true } -func matchRoleDeviceWebuiMonitor(a *RoleDeviceWebuiMonitor, b *RoleDeviceWebuiMonitor) bool { +func matchRoleDeviceWebuiDeviceSetup(a *RoleDeviceWebuiDeviceSetup, b *RoleDeviceWebuiDeviceSetup) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Botnet, b.Botnet) { - return false - } - if !matchRoleDeviceWebuiMonitorCustomReports(a.CustomReports, b.CustomReports) { - return false - } - if !util.StringsMatch(a.GtpReports, b.GtpReports) { - return false - } - if !util.StringsMatch(a.PacketCapture, b.PacketCapture) { - return false - } - if !util.StringsMatch(a.SctpReports, b.SctpReports) { - return false - } - if !util.StringsMatch(a.ThreatReports, b.ThreatReports) { - return false - } - if !util.StringsMatch(a.TrafficReports, b.TrafficReports) { - return false - } - if !util.StringsMatch(a.ApplicationReports, b.ApplicationReports) { - return false - } - if !matchRoleDeviceWebuiMonitorPdfReports(a.PdfReports, b.PdfReports) { + if !util.StringsMatch(a.Hsm, b.Hsm) { return false } - if !util.StringsMatch(a.SessionBrowser, b.SessionBrowser) { + if !util.StringsMatch(a.Interfaces, b.Interfaces) { return false } - if !util.StringsMatch(a.ViewCustomReports, b.ViewCustomReports) { + if !util.StringsMatch(a.Operations, b.Operations) { return false } - if !util.StringsMatch(a.AppScope, b.AppScope) { + if !util.StringsMatch(a.Telemetry, b.Telemetry) { return false } - if !matchRoleDeviceWebuiMonitorAutomatedCorrelationEngine(a.AutomatedCorrelationEngine, b.AutomatedCorrelationEngine) { + if !util.StringsMatch(a.ContentId, b.ContentId) { return false } - if !util.StringsMatch(a.BlockIpList, b.BlockIpList) { + if !util.StringsMatch(a.Management, b.Management) { return false } - if !util.StringsMatch(a.ExternalLogs, b.ExternalLogs) { + if !util.StringsMatch(a.Services, b.Services) { return false } - if !matchRoleDeviceWebuiMonitorLogs(a.Logs, b.Logs) { + if !util.StringsMatch(a.Session, b.Session) { return false } - if !util.StringsMatch(a.UrlFilteringReports, b.UrlFilteringReports) { + if !util.StringsMatch(a.Wildfire, b.Wildfire) { return false } return true } -func matchRoleDeviceWebuiObjectsCustomObjects(a *RoleDeviceWebuiObjectsCustomObjects, b *RoleDeviceWebuiObjectsCustomObjects) bool { +func matchRoleDeviceWebuiDeviceCertificateManagement(a *RoleDeviceWebuiDeviceCertificateManagement, b *RoleDeviceWebuiDeviceCertificateManagement) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.DataPatterns, b.DataPatterns) { + if !util.StringsMatch(a.Scep, b.Scep) { return false } - if !util.StringsMatch(a.Spyware, b.Spyware) { + if !util.StringsMatch(a.SshServiceProfile, b.SshServiceProfile) { return false } - if !util.StringsMatch(a.UrlCategory, b.UrlCategory) { + if !util.StringsMatch(a.SslDecryptionExclusion, b.SslDecryptionExclusion) { return false } - if !util.StringsMatch(a.Vulnerability, b.Vulnerability) { + if !util.StringsMatch(a.SslTlsServiceProfile, b.SslTlsServiceProfile) { + return false + } + if !util.StringsMatch(a.CertificateProfile, b.CertificateProfile) { + return false + } + if !util.StringsMatch(a.Certificates, b.Certificates) { + return false + } + if !util.StringsMatch(a.OcspResponder, b.OcspResponder) { return false } return true } -func matchRoleDeviceWebuiObjectsSecurityProfiles(a *RoleDeviceWebuiObjectsSecurityProfiles, b *RoleDeviceWebuiObjectsSecurityProfiles) bool { +func matchRoleDeviceWebuiDevicePolicyRecommendations(a *RoleDeviceWebuiDevicePolicyRecommendations, b *RoleDeviceWebuiDevicePolicyRecommendations) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.GtpProtection, b.GtpProtection) { + if !util.StringsMatch(a.Iot, b.Iot) { return false } - if !util.StringsMatch(a.SctpProtection, b.SctpProtection) { + if !util.StringsMatch(a.Saas, b.Saas) { return false } - if !util.StringsMatch(a.WildfireAnalysis, b.WildfireAnalysis) { + return true +} +func matchRoleDeviceWebuiDeviceServerProfile(a *RoleDeviceWebuiDeviceServerProfile, b *RoleDeviceWebuiDeviceServerProfile) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } - if !util.StringsMatch(a.DataFiltering, b.DataFiltering) { + if !util.StringsMatch(a.Tacplus, b.Tacplus) { return false } - if !util.StringsMatch(a.DosProtection, b.DosProtection) { + if !util.StringsMatch(a.Dns, b.Dns) { return false } - if !util.StringsMatch(a.FileBlocking, b.FileBlocking) { + if !util.StringsMatch(a.Email, b.Email) { return false } - if !util.StringsMatch(a.VulnerabilityProtection, b.VulnerabilityProtection) { + if !util.StringsMatch(a.Netflow, b.Netflow) { return false } - if !util.StringsMatch(a.AntiSpyware, b.AntiSpyware) { + if !util.StringsMatch(a.SamlIdp, b.SamlIdp) { return false } - if !util.StringsMatch(a.Antivirus, b.Antivirus) { + if !util.StringsMatch(a.Radius, b.Radius) { return false } - if !util.StringsMatch(a.UrlFiltering, b.UrlFiltering) { + if !util.StringsMatch(a.Scp, b.Scp) { return false } - return true -} -func matchRoleDeviceWebuiObjectsSdwan(a *RoleDeviceWebuiObjectsSdwan, b *RoleDeviceWebuiObjectsSdwan) bool { - if a == nil && b != nil || a != nil && b == nil { + if !util.StringsMatch(a.SnmpTrap, b.SnmpTrap) { return false - } else if a == nil && b == nil { - return true } - if !util.StringsMatch(a.SdwanProfile, b.SdwanProfile) { + if !util.StringsMatch(a.Syslog, b.Syslog) { return false } - if !util.StringsMatch(a.SdwanSaasQualityProfile, b.SdwanSaasQualityProfile) { + if !util.StringsMatch(a.Http, b.Http) { return false } - if !util.StringsMatch(a.SdwanDistProfile, b.SdwanDistProfile) { + if !util.StringsMatch(a.Kerberos, b.Kerberos) { return false } - if !util.StringsMatch(a.SdwanErrorCorrectionProfile, b.SdwanErrorCorrectionProfile) { + if !util.StringsMatch(a.Ldap, b.Ldap) { + return false + } + if !util.StringsMatch(a.Mfa, b.Mfa) { return false } return true } -func matchRoleDeviceWebuiObjectsGlobalProtect(a *RoleDeviceWebuiObjectsGlobalProtect, b *RoleDeviceWebuiObjectsGlobalProtect) bool { +func matchRoleDeviceWebuiDeviceLocalUserDatabase(a *RoleDeviceWebuiDeviceLocalUserDatabase, b *RoleDeviceWebuiDeviceLocalUserDatabase) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.HipObjects, b.HipObjects) { + if !util.StringsMatch(a.Users, b.Users) { return false } - if !util.StringsMatch(a.HipProfiles, b.HipProfiles) { + if !util.StringsMatch(a.UserGroups, b.UserGroups) { return false } return true } -func matchRoleDeviceWebuiObjectsDecryption(a *RoleDeviceWebuiObjectsDecryption, b *RoleDeviceWebuiObjectsDecryption) bool { +func matchRoleDeviceWebuiDevice(a *RoleDeviceWebuiDevice, b *RoleDeviceWebuiDevice) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.DecryptionProfile, b.DecryptionProfile) { + if !util.StringsMatch(a.HighAvailability, b.HighAvailability) { return false } - return true -} -func matchRoleDeviceWebuiObjects(a *RoleDeviceWebuiObjects, b *RoleDeviceWebuiObjects) bool { - if a == nil && b != nil || a != nil && b == nil { + if !matchRoleDeviceWebuiDeviceLocalUserDatabase(a.LocalUserDatabase, b.LocalUserDatabase) { return false - } else if a == nil && b == nil { - return true } - if !util.StringsMatch(a.SecurityProfileGroups, b.SecurityProfileGroups) { + if !util.StringsMatch(a.MasterKey, b.MasterKey) { return false } - if !util.StringsMatch(a.Services, b.Services) { + if !util.StringsMatch(a.Plugins, b.Plugins) { return false } - if !util.StringsMatch(a.Addresses, b.Addresses) { + if !matchRoleDeviceWebuiDevicePolicyRecommendations(a.PolicyRecommendations, b.PolicyRecommendations) { return false } - if !util.StringsMatch(a.DynamicBlockLists, b.DynamicBlockLists) { + if !matchRoleDeviceWebuiDeviceServerProfile(a.ServerProfile, b.ServerProfile) { return false } - if !matchRoleDeviceWebuiObjectsGlobalProtect(a.GlobalProtect, b.GlobalProtect) { + if !util.StringsMatch(a.ConfigAudit, b.ConfigAudit) { return false } - if !util.StringsMatch(a.LogForwarding, b.LogForwarding) { + if !util.StringsMatch(a.DataRedistribution, b.DataRedistribution) { return false } - if !util.StringsMatch(a.PacketBrokerProfile, b.PacketBrokerProfile) { + if !util.StringsMatch(a.Support, b.Support) { return false } - if !matchRoleDeviceWebuiObjectsSdwan(a.Sdwan, b.Sdwan) { + if !matchRoleDeviceWebuiDeviceLogSettings(a.LogSettings, b.LogSettings) { return false } - if !matchRoleDeviceWebuiObjectsDecryption(a.Decryption, b.Decryption) { + if !util.StringsMatch(a.VmInfoSource, b.VmInfoSource) { return false } - if !util.StringsMatch(a.ServiceGroups, b.ServiceGroups) { + if !util.StringsMatch(a.AdminRoles, b.AdminRoles) { return false } - if !util.StringsMatch(a.Tags, b.Tags) { + if !util.StringsMatch(a.DynamicUpdates, b.DynamicUpdates) { return false } - if !util.StringsMatch(a.AddressGroups, b.AddressGroups) { + if !util.StringsMatch(a.VirtualSystems, b.VirtualSystems) { return false } - if !util.StringsMatch(a.ApplicationFilters, b.ApplicationFilters) { + if !util.StringsMatch(a.AuthenticationProfile, b.AuthenticationProfile) { return false } - if !util.StringsMatch(a.Devices, b.Devices) { + if !util.StringsMatch(a.Licenses, b.Licenses) { return false } - if !util.StringsMatch(a.DynamicUserGroups, b.DynamicUserGroups) { + if !util.StringsMatch(a.BlockPages, b.BlockPages) { return false } - if !util.StringsMatch(a.Regions, b.Regions) { + if !util.StringsMatch(a.GlobalProtectClient, b.GlobalProtectClient) { return false } - if !util.StringsMatch(a.Schedules, b.Schedules) { + if !util.StringsMatch(a.AuthenticationSequence, b.AuthenticationSequence) { return false } - if !util.StringsMatch(a.ApplicationGroups, b.ApplicationGroups) { + if !util.StringsMatch(a.AccessDomain, b.AccessDomain) { return false } - if !util.StringsMatch(a.Applications, b.Applications) { + if !util.StringsMatch(a.Administrators, b.Administrators) { return false } - if !util.StringsMatch(a.Authentication, b.Authentication) { + if !matchRoleDeviceWebuiDeviceSetup(a.Setup, b.Setup) { return false } - if !matchRoleDeviceWebuiObjectsCustomObjects(a.CustomObjects, b.CustomObjects) { + if !util.StringsMatch(a.Software, b.Software) { return false } - if !matchRoleDeviceWebuiObjectsSecurityProfiles(a.SecurityProfiles, b.SecurityProfiles) { + if !util.StringsMatch(a.Troubleshooting, b.Troubleshooting) { return false } - return true -} -func matchRoleDeviceWebuiOperations(a *RoleDeviceWebuiOperations, b *RoleDeviceWebuiOperations) bool { - if a == nil && b != nil || a != nil && b == nil { + if !util.StringsMatch(a.UserIdentification, b.UserIdentification) { return false - } else if a == nil && b == nil { - return true } - if !util.StringsMatch(a.GenerateStatsDumpFile, b.GenerateStatsDumpFile) { + if !util.StringsMatch(a.DhcpSyslogServer, b.DhcpSyslogServer) { return false } - if !util.StringsMatch(a.GenerateTechSupportFile, b.GenerateTechSupportFile) { + if !matchRoleDeviceWebuiDeviceCertificateManagement(a.CertificateManagement, b.CertificateManagement) { return false } - if !util.StringsMatch(a.Reboot, b.Reboot) { + if !util.StringsMatch(a.ScheduledLogExport, b.ScheduledLogExport) { return false } - if !util.StringsMatch(a.DownloadCoreFiles, b.DownloadCoreFiles) { + if !util.StringsMatch(a.SharedGateways, b.SharedGateways) { return false } - if !util.StringsMatch(a.DownloadPcapFiles, b.DownloadPcapFiles) { + if !util.StringsMatch(a.DeviceQuarantine, b.DeviceQuarantine) { + return false + } + if !util.StringsMatch(a.LogFwdCard, b.LogFwdCard) { return false } return true } -func matchRoleDeviceWebuiDeviceSetup(a *RoleDeviceWebuiDeviceSetup, b *RoleDeviceWebuiDeviceSetup) bool { +func matchRoleDeviceWebuiMonitorLogs(a *RoleDeviceWebuiMonitorLogs, b *RoleDeviceWebuiMonitorLogs) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Telemetry, b.Telemetry) { + if !util.StringsMatch(a.Configuration, b.Configuration) { return false } - if !util.StringsMatch(a.ContentId, b.ContentId) { + if !util.StringsMatch(a.Sctp, b.Sctp) { return false } - if !util.StringsMatch(a.Hsm, b.Hsm) { + if !util.StringsMatch(a.Url, b.Url) { return false } - if !util.StringsMatch(a.Interfaces, b.Interfaces) { + if !util.StringsMatch(a.Alarm, b.Alarm) { return false } - if !util.StringsMatch(a.Session, b.Session) { + if !util.StringsMatch(a.Authentication, b.Authentication) { return false } - if !util.StringsMatch(a.Management, b.Management) { + if !util.StringsMatch(a.Globalprotect, b.Globalprotect) { return false } - if !util.StringsMatch(a.Operations, b.Operations) { + if !util.StringsMatch(a.Hipmatch, b.Hipmatch) { return false } - if !util.StringsMatch(a.Services, b.Services) { + if !util.StringsMatch(a.System, b.System) { return false } - if !util.StringsMatch(a.Wildfire, b.Wildfire) { + if !util.StringsMatch(a.Traffic, b.Traffic) { return false } - return true -} -func matchRoleDeviceWebuiDeviceServerProfile(a *RoleDeviceWebuiDeviceServerProfile, b *RoleDeviceWebuiDeviceServerProfile) bool { - if a == nil && b != nil || a != nil && b == nil { + if !util.StringsMatch(a.Tunnel, b.Tunnel) { return false - } else if a == nil && b == nil { - return true } - if !util.StringsMatch(a.Mfa, b.Mfa) { + if !util.StringsMatch(a.Wildfire, b.Wildfire) { return false } - if !util.StringsMatch(a.Netflow, b.Netflow) { + if !util.StringsMatch(a.Decryption, b.Decryption) { return false } - if !util.StringsMatch(a.Radius, b.Radius) { + if !util.StringsMatch(a.Gtp, b.Gtp) { return false } - if !util.StringsMatch(a.Scp, b.Scp) { + if !util.StringsMatch(a.DataFiltering, b.DataFiltering) { return false } - if !util.StringsMatch(a.Syslog, b.Syslog) { + if !util.StringsMatch(a.Iptag, b.Iptag) { return false } - if !util.StringsMatch(a.Email, b.Email) { + if !util.StringsMatch(a.Threat, b.Threat) { return false } - if !util.StringsMatch(a.Http, b.Http) { + if !util.StringsMatch(a.Userid, b.Userid) { return false } - if !util.StringsMatch(a.Ldap, b.Ldap) { + return true +} +func matchRoleDeviceWebuiMonitorPdfReports(a *RoleDeviceWebuiMonitorPdfReports, b *RoleDeviceWebuiMonitorPdfReports) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } - if !util.StringsMatch(a.SnmpTrap, b.SnmpTrap) { + if !util.StringsMatch(a.EmailScheduler, b.EmailScheduler) { return false } - if !util.StringsMatch(a.Tacplus, b.Tacplus) { + if !util.StringsMatch(a.ManagePdfSummary, b.ManagePdfSummary) { return false } - if !util.StringsMatch(a.Dns, b.Dns) { + if !util.StringsMatch(a.PdfSummaryReports, b.PdfSummaryReports) { return false } - if !util.StringsMatch(a.Kerberos, b.Kerberos) { + if !util.StringsMatch(a.ReportGroups, b.ReportGroups) { return false } - if !util.StringsMatch(a.SamlIdp, b.SamlIdp) { + if !util.StringsMatch(a.SaasApplicationUsageReport, b.SaasApplicationUsageReport) { + return false + } + if !util.StringsMatch(a.UserActivityReport, b.UserActivityReport) { return false } return true } -func matchRoleDeviceWebuiDeviceLocalUserDatabase(a *RoleDeviceWebuiDeviceLocalUserDatabase, b *RoleDeviceWebuiDeviceLocalUserDatabase) bool { +func matchRoleDeviceWebuiMonitorAutomatedCorrelationEngine(a *RoleDeviceWebuiMonitorAutomatedCorrelationEngine, b *RoleDeviceWebuiMonitorAutomatedCorrelationEngine) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.UserGroups, b.UserGroups) { + if !util.StringsMatch(a.CorrelationObjects, b.CorrelationObjects) { return false } - if !util.StringsMatch(a.Users, b.Users) { + if !util.StringsMatch(a.CorrelatedEvents, b.CorrelatedEvents) { return false } return true } -func matchRoleDeviceWebuiDevicePolicyRecommendations(a *RoleDeviceWebuiDevicePolicyRecommendations, b *RoleDeviceWebuiDevicePolicyRecommendations) bool { +func matchRoleDeviceWebuiMonitorCustomReports(a *RoleDeviceWebuiMonitorCustomReports, b *RoleDeviceWebuiMonitorCustomReports) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Iot, b.Iot) { + if !util.StringsMatch(a.GtpLog, b.GtpLog) { return false } - if !util.StringsMatch(a.Saas, b.Saas) { + if !util.StringsMatch(a.ThreatSummary, b.ThreatSummary) { return false } - return true -} -func matchRoleDeviceWebuiDeviceCertificateManagement(a *RoleDeviceWebuiDeviceCertificateManagement, b *RoleDeviceWebuiDeviceCertificateManagement) bool { - if a == nil && b != nil || a != nil && b == nil { + if !util.StringsMatch(a.UrlSummary, b.UrlSummary) { return false - } else if a == nil && b == nil { - return true } - if !util.StringsMatch(a.OcspResponder, b.OcspResponder) { + if !util.StringsMatch(a.WildfireLog, b.WildfireLog) { return false } - if !util.StringsMatch(a.Scep, b.Scep) { + if !util.StringsMatch(a.ApplicationStatistics, b.ApplicationStatistics) { return false } - if !util.StringsMatch(a.SshServiceProfile, b.SshServiceProfile) { + if !util.StringsMatch(a.Hipmatch, b.Hipmatch) { return false } - if !util.StringsMatch(a.SslDecryptionExclusion, b.SslDecryptionExclusion) { + if !util.StringsMatch(a.ThreatLog, b.ThreatLog) { return false } - if !util.StringsMatch(a.SslTlsServiceProfile, b.SslTlsServiceProfile) { + if !util.StringsMatch(a.TrafficLog, b.TrafficLog) { return false } - if !util.StringsMatch(a.CertificateProfile, b.CertificateProfile) { + if !util.StringsMatch(a.TunnelLog, b.TunnelLog) { + return false + } + if !util.StringsMatch(a.TunnelSummary, b.TunnelSummary) { + return false + } + if !util.StringsMatch(a.UrlLog, b.UrlLog) { return false } - if !util.StringsMatch(a.Certificates, b.Certificates) { + if !util.StringsMatch(a.Auth, b.Auth) { return false } - return true -} -func matchRoleDeviceWebuiDeviceLogSettings(a *RoleDeviceWebuiDeviceLogSettings, b *RoleDeviceWebuiDeviceLogSettings) bool { - if a == nil && b != nil || a != nil && b == nil { + if !util.StringsMatch(a.DataFilteringLog, b.DataFilteringLog) { return false - } else if a == nil && b == nil { - return true } if !util.StringsMatch(a.Globalprotect, b.Globalprotect) { return false } - if !util.StringsMatch(a.Hipmatch, b.Hipmatch) { + if !util.StringsMatch(a.GtpSummary, b.GtpSummary) { return false } - if !util.StringsMatch(a.Iptag, b.Iptag) { + if !util.StringsMatch(a.SctpSummary, b.SctpSummary) { return false } - if !util.StringsMatch(a.ManageLog, b.ManageLog) { + if !util.StringsMatch(a.TrafficSummary, b.TrafficSummary) { return false } - if !util.StringsMatch(a.System, b.System) { + if !util.StringsMatch(a.DecryptionLog, b.DecryptionLog) { return false } - if !util.StringsMatch(a.UserId, b.UserId) { + if !util.StringsMatch(a.DecryptionSummary, b.DecryptionSummary) { return false } - if !util.StringsMatch(a.Correlation, b.Correlation) { + if !util.StringsMatch(a.Iptag, b.Iptag) { return false } - if !util.StringsMatch(a.Config, b.Config) { + if !util.StringsMatch(a.SctpLog, b.SctpLog) { return false } - if !util.StringsMatch(a.CcAlarm, b.CcAlarm) { + if !util.StringsMatch(a.Userid, b.Userid) { return false } return true } -func matchRoleDeviceWebuiDevice(a *RoleDeviceWebuiDevice, b *RoleDeviceWebuiDevice) bool { +func matchRoleDeviceWebuiMonitor(a *RoleDeviceWebuiMonitor, b *RoleDeviceWebuiMonitor) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.AccessDomain, b.AccessDomain) { + if !util.StringsMatch(a.AppScope, b.AppScope) { return false } - if !util.StringsMatch(a.DynamicUpdates, b.DynamicUpdates) { + if !util.StringsMatch(a.ApplicationReports, b.ApplicationReports) { return false } - if !util.StringsMatch(a.MasterKey, b.MasterKey) { + if !util.StringsMatch(a.GtpReports, b.GtpReports) { return false } - if !matchRoleDeviceWebuiDeviceSetup(a.Setup, b.Setup) { + if !util.StringsMatch(a.ViewCustomReports, b.ViewCustomReports) { return false } - if !util.StringsMatch(a.Support, b.Support) { + if !util.StringsMatch(a.Botnet, b.Botnet) { return false } - if !util.StringsMatch(a.Troubleshooting, b.Troubleshooting) { + if !util.StringsMatch(a.ExternalLogs, b.ExternalLogs) { return false } - if !util.StringsMatch(a.AuthenticationProfile, b.AuthenticationProfile) { + if !matchRoleDeviceWebuiMonitorLogs(a.Logs, b.Logs) { return false } - if !util.StringsMatch(a.ConfigAudit, b.ConfigAudit) { + if !util.StringsMatch(a.PacketCapture, b.PacketCapture) { return false } - if !util.StringsMatch(a.HighAvailability, b.HighAvailability) { + if !util.StringsMatch(a.TrafficReports, b.TrafficReports) { return false } - if !util.StringsMatch(a.AuthenticationSequence, b.AuthenticationSequence) { + if !util.StringsMatch(a.UrlFilteringReports, b.UrlFilteringReports) { return false } - if !util.StringsMatch(a.DeviceQuarantine, b.DeviceQuarantine) { + if !matchRoleDeviceWebuiMonitorAutomatedCorrelationEngine(a.AutomatedCorrelationEngine, b.AutomatedCorrelationEngine) { return false } - if !matchRoleDeviceWebuiDeviceServerProfile(a.ServerProfile, b.ServerProfile) { + if !util.StringsMatch(a.BlockIpList, b.BlockIpList) { return false } - if !util.StringsMatch(a.UserIdentification, b.UserIdentification) { + if !matchRoleDeviceWebuiMonitorPdfReports(a.PdfReports, b.PdfReports) { return false } - if !util.StringsMatch(a.VmInfoSource, b.VmInfoSource) { + if !util.StringsMatch(a.SctpReports, b.SctpReports) { return false } - if !util.StringsMatch(a.GlobalProtectClient, b.GlobalProtectClient) { + if !util.StringsMatch(a.SessionBrowser, b.SessionBrowser) { return false } - if !matchRoleDeviceWebuiDeviceLocalUserDatabase(a.LocalUserDatabase, b.LocalUserDatabase) { + if !matchRoleDeviceWebuiMonitorCustomReports(a.CustomReports, b.CustomReports) { return false } - if !util.StringsMatch(a.Plugins, b.Plugins) { + if !util.StringsMatch(a.ThreatReports, b.ThreatReports) { return false } - if !util.StringsMatch(a.DhcpSyslogServer, b.DhcpSyslogServer) { + return true +} +func matchRoleDeviceWebuiOperations(a *RoleDeviceWebuiOperations, b *RoleDeviceWebuiOperations) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } - if !matchRoleDeviceWebuiDevicePolicyRecommendations(a.PolicyRecommendations, b.PolicyRecommendations) { + if !util.StringsMatch(a.DownloadCoreFiles, b.DownloadCoreFiles) { return false } - if !util.StringsMatch(a.Software, b.Software) { + if !util.StringsMatch(a.DownloadPcapFiles, b.DownloadPcapFiles) { return false } - if !util.StringsMatch(a.AdminRoles, b.AdminRoles) { + if !util.StringsMatch(a.GenerateStatsDumpFile, b.GenerateStatsDumpFile) { return false } - if !util.StringsMatch(a.Administrators, b.Administrators) { + if !util.StringsMatch(a.GenerateTechSupportFile, b.GenerateTechSupportFile) { return false } - if !matchRoleDeviceWebuiDeviceCertificateManagement(a.CertificateManagement, b.CertificateManagement) { + if !util.StringsMatch(a.Reboot, b.Reboot) { return false } - if !util.StringsMatch(a.LogFwdCard, b.LogFwdCard) { + return true +} +func matchRoleDeviceWebuiSave(a *RoleDeviceWebuiSave, b *RoleDeviceWebuiSave) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } - if !matchRoleDeviceWebuiDeviceLogSettings(a.LogSettings, b.LogSettings) { + if !util.StringsMatch(a.ObjectLevelChanges, b.ObjectLevelChanges) { return false } - if !util.StringsMatch(a.ScheduledLogExport, b.ScheduledLogExport) { + if !util.StringsMatch(a.PartialSave, b.PartialSave) { return false } - if !util.StringsMatch(a.VirtualSystems, b.VirtualSystems) { + if !util.StringsMatch(a.SaveForOtherAdmins, b.SaveForOtherAdmins) { return false } - if !util.StringsMatch(a.BlockPages, b.BlockPages) { + return true +} +func matchRoleDeviceWebuiGlobal(a *RoleDeviceWebuiGlobal, b *RoleDeviceWebuiGlobal) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } - if !util.StringsMatch(a.Licenses, b.Licenses) { + if !util.StringsMatch(a.SystemAlarms, b.SystemAlarms) { return false } - if !util.StringsMatch(a.SharedGateways, b.SharedGateways) { + return true +} +func matchRoleDeviceWebuiObjectsGlobalProtect(a *RoleDeviceWebuiObjectsGlobalProtect, b *RoleDeviceWebuiObjectsGlobalProtect) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + if !util.StringsMatch(a.HipObjects, b.HipObjects) { return false } - if !util.StringsMatch(a.DataRedistribution, b.DataRedistribution) { + if !util.StringsMatch(a.HipProfiles, b.HipProfiles) { return false } return true } -func matchRoleDeviceWebuiGlobal(a *RoleDeviceWebuiGlobal, b *RoleDeviceWebuiGlobal) bool { +func matchRoleDeviceWebuiObjectsDecryption(a *RoleDeviceWebuiObjectsDecryption, b *RoleDeviceWebuiObjectsDecryption) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.SystemAlarms, b.SystemAlarms) { + if !util.StringsMatch(a.DecryptionProfile, b.DecryptionProfile) { return false } return true } -func matchRoleDeviceWebuiSave(a *RoleDeviceWebuiSave, b *RoleDeviceWebuiSave) bool { +func matchRoleDeviceWebuiObjectsCustomObjects(a *RoleDeviceWebuiObjectsCustomObjects, b *RoleDeviceWebuiObjectsCustomObjects) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.ObjectLevelChanges, b.ObjectLevelChanges) { + if !util.StringsMatch(a.DataPatterns, b.DataPatterns) { return false } - if !util.StringsMatch(a.PartialSave, b.PartialSave) { + if !util.StringsMatch(a.Spyware, b.Spyware) { return false } - if !util.StringsMatch(a.SaveForOtherAdmins, b.SaveForOtherAdmins) { + if !util.StringsMatch(a.UrlCategory, b.UrlCategory) { + return false + } + if !util.StringsMatch(a.Vulnerability, b.Vulnerability) { return false } return true } -func matchRoleDeviceWebuiNetworkGlobalProtect(a *RoleDeviceWebuiNetworkGlobalProtect, b *RoleDeviceWebuiNetworkGlobalProtect) bool { +func matchRoleDeviceWebuiObjectsSecurityProfiles(a *RoleDeviceWebuiObjectsSecurityProfiles, b *RoleDeviceWebuiObjectsSecurityProfiles) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.ClientlessAppGroups, b.ClientlessAppGroups) { + if !util.StringsMatch(a.Antivirus, b.Antivirus) { return false } - if !util.StringsMatch(a.ClientlessApps, b.ClientlessApps) { + if !util.StringsMatch(a.DosProtection, b.DosProtection) { return false } - if !util.StringsMatch(a.Gateways, b.Gateways) { + if !util.StringsMatch(a.FileBlocking, b.FileBlocking) { return false } - if !util.StringsMatch(a.Mdm, b.Mdm) { + if !util.StringsMatch(a.GtpProtection, b.GtpProtection) { return false } - if !util.StringsMatch(a.Portals, b.Portals) { + if !util.StringsMatch(a.VulnerabilityProtection, b.VulnerabilityProtection) { + return false + } + if !util.StringsMatch(a.WildfireAnalysis, b.WildfireAnalysis) { + return false + } + if !util.StringsMatch(a.AntiSpyware, b.AntiSpyware) { + return false + } + if !util.StringsMatch(a.DataFiltering, b.DataFiltering) { + return false + } + if !util.StringsMatch(a.SctpProtection, b.SctpProtection) { + return false + } + if !util.StringsMatch(a.UrlFiltering, b.UrlFiltering) { return false } return true } -func matchRoleDeviceWebuiNetworkNetworkProfiles(a *RoleDeviceWebuiNetworkNetworkProfiles, b *RoleDeviceWebuiNetworkNetworkProfiles) bool { +func matchRoleDeviceWebuiObjectsSdwan(a *RoleDeviceWebuiObjectsSdwan, b *RoleDeviceWebuiObjectsSdwan) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.TunnelMonitor, b.TunnelMonitor) { + if !util.StringsMatch(a.SdwanErrorCorrectionProfile, b.SdwanErrorCorrectionProfile) { return false } - if !util.StringsMatch(a.ZoneProtection, b.ZoneProtection) { + if !util.StringsMatch(a.SdwanProfile, b.SdwanProfile) { return false } - if !util.StringsMatch(a.BfdProfile, b.BfdProfile) { + if !util.StringsMatch(a.SdwanSaasQualityProfile, b.SdwanSaasQualityProfile) { return false } - if !util.StringsMatch(a.GpAppIpsecCrypto, b.GpAppIpsecCrypto) { + if !util.StringsMatch(a.SdwanDistProfile, b.SdwanDistProfile) { return false } - if !util.StringsMatch(a.IpsecCrypto, b.IpsecCrypto) { + return true +} +func matchRoleDeviceWebuiObjects(a *RoleDeviceWebuiObjects, b *RoleDeviceWebuiObjects) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } - if !util.StringsMatch(a.QosProfile, b.QosProfile) { + if !util.StringsMatch(a.Applications, b.Applications) { return false } - if !util.StringsMatch(a.IkeCrypto, b.IkeCrypto) { + if !util.StringsMatch(a.LogForwarding, b.LogForwarding) { return false } - if !util.StringsMatch(a.IkeGateways, b.IkeGateways) { + if !matchRoleDeviceWebuiObjectsSdwan(a.Sdwan, b.Sdwan) { return false } - if !util.StringsMatch(a.InterfaceMgmt, b.InterfaceMgmt) { + if !matchRoleDeviceWebuiObjectsSecurityProfiles(a.SecurityProfiles, b.SecurityProfiles) { return false } - if !util.StringsMatch(a.LldpProfile, b.LldpProfile) { + if !util.StringsMatch(a.ApplicationFilters, b.ApplicationFilters) { return false } - return true -} -func matchRoleDeviceWebuiNetworkRoutingRoutingProfiles(a *RoleDeviceWebuiNetworkRoutingRoutingProfiles, b *RoleDeviceWebuiNetworkRoutingRoutingProfiles) bool { - if a == nil && b != nil || a != nil && b == nil { + if !matchRoleDeviceWebuiObjectsDecryption(a.Decryption, b.Decryption) { return false - } else if a == nil && b == nil { - return true } - if !util.StringsMatch(a.Ospfv3, b.Ospfv3) { + if !util.StringsMatch(a.Devices, b.Devices) { return false } - if !util.StringsMatch(a.Ripv2, b.Ripv2) { + if !matchRoleDeviceWebuiObjectsGlobalProtect(a.GlobalProtect, b.GlobalProtect) { return false } - if !util.StringsMatch(a.Bfd, b.Bfd) { + if !util.StringsMatch(a.PacketBrokerProfile, b.PacketBrokerProfile) { return false } - if !util.StringsMatch(a.Bgp, b.Bgp) { + if !util.StringsMatch(a.Regions, b.Regions) { return false } - if !util.StringsMatch(a.Filters, b.Filters) { + if !util.StringsMatch(a.Schedules, b.Schedules) { return false } - if !util.StringsMatch(a.Multicast, b.Multicast) { + if !util.StringsMatch(a.ServiceGroups, b.ServiceGroups) { return false } - if !util.StringsMatch(a.Ospf, b.Ospf) { + if !util.StringsMatch(a.Tags, b.Tags) { return false } - return true -} -func matchRoleDeviceWebuiNetworkRouting(a *RoleDeviceWebuiNetworkRouting, b *RoleDeviceWebuiNetworkRouting) bool { - if a == nil && b != nil || a != nil && b == nil { + if !util.StringsMatch(a.Addresses, b.Addresses) { return false - } else if a == nil && b == nil { - return true } - if !util.StringsMatch(a.LogicalRouters, b.LogicalRouters) { + if !util.StringsMatch(a.Authentication, b.Authentication) { return false } - if !matchRoleDeviceWebuiNetworkRoutingRoutingProfiles(a.RoutingProfiles, b.RoutingProfiles) { + if !matchRoleDeviceWebuiObjectsCustomObjects(a.CustomObjects, b.CustomObjects) { return false } - return true -} -func matchRoleDeviceWebuiNetwork(a *RoleDeviceWebuiNetwork, b *RoleDeviceWebuiNetwork) bool { - if a == nil && b != nil || a != nil && b == nil { + if !util.StringsMatch(a.SecurityProfileGroups, b.SecurityProfileGroups) { return false - } else if a == nil && b == nil { - return true } - if !util.StringsMatch(a.SdwanInterfaceProfile, b.SdwanInterfaceProfile) { + if !util.StringsMatch(a.AddressGroups, b.AddressGroups) { return false } - if !util.StringsMatch(a.Zones, b.Zones) { + if !util.StringsMatch(a.ApplicationGroups, b.ApplicationGroups) { return false } - if !util.StringsMatch(a.Dhcp, b.Dhcp) { + if !util.StringsMatch(a.DynamicBlockLists, b.DynamicBlockLists) { return false } - if !util.StringsMatch(a.GreTunnels, b.GreTunnels) { + if !util.StringsMatch(a.DynamicUserGroups, b.DynamicUserGroups) { return false } - if !util.StringsMatch(a.IpsecTunnels, b.IpsecTunnels) { + if !util.StringsMatch(a.Services, b.Services) { return false } - if !util.StringsMatch(a.Lldp, b.Lldp) { + return true +} +func matchRoleDeviceWebuiPolicies(a *RoleDeviceWebuiPolicies, b *RoleDeviceWebuiPolicies) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } - if !util.StringsMatch(a.Qos, b.Qos) { + if !util.StringsMatch(a.AuthenticationRulebase, b.AuthenticationRulebase) { return false } - if !util.StringsMatch(a.Vlans, b.Vlans) { + if !util.StringsMatch(a.NatRulebase, b.NatRulebase) { return false } - if !util.StringsMatch(a.VirtualWires, b.VirtualWires) { + if !util.StringsMatch(a.NetworkPacketBrokerRulebase, b.NetworkPacketBrokerRulebase) { return false } - if !util.StringsMatch(a.SecureWebGateway, b.SecureWebGateway) { + if !util.StringsMatch(a.SecurityRulebase, b.SecurityRulebase) { return false } - if !util.StringsMatch(a.DnsProxy, b.DnsProxy) { + if !util.StringsMatch(a.SslDecryptionRulebase, b.SslDecryptionRulebase) { return false } - if !util.StringsMatch(a.Interfaces, b.Interfaces) { + if !util.StringsMatch(a.SdwanRulebase, b.SdwanRulebase) { + return false + } + if !util.StringsMatch(a.TunnelInspectRulebase, b.TunnelInspectRulebase) { + return false + } + if !util.StringsMatch(a.ApplicationOverrideRulebase, b.ApplicationOverrideRulebase) { return false } - if !matchRoleDeviceWebuiNetworkRouting(a.Routing, b.Routing) { + if !util.StringsMatch(a.DosRulebase, b.DosRulebase) { return false } - if !util.StringsMatch(a.VirtualRouters, b.VirtualRouters) { + if !util.StringsMatch(a.PbfRulebase, b.PbfRulebase) { return false } - if !matchRoleDeviceWebuiNetworkGlobalProtect(a.GlobalProtect, b.GlobalProtect) { + if !util.StringsMatch(a.QosRulebase, b.QosRulebase) { return false } - if !matchRoleDeviceWebuiNetworkNetworkProfiles(a.NetworkProfiles, b.NetworkProfiles) { + if !util.StringsMatch(a.RuleHitCountReset, b.RuleHitCountReset) { return false } return true @@ -7534,43 +7534,43 @@ func matchRoleDeviceWebui(a *RoleDeviceWebui, b *RoleDeviceWebui) bool { if !util.StringsMatch(a.Acc, b.Acc) { return false } - if !matchRoleDeviceWebuiDevice(a.Device, b.Device) { + if !util.StringsMatch(a.Dashboard, b.Dashboard) { return false } - if !matchRoleDeviceWebuiGlobal(a.Global, b.Global) { + if !matchRoleDeviceWebuiNetwork(a.Network, b.Network) { return false } - if !matchRoleDeviceWebuiSave(a.Save, b.Save) { + if !matchRoleDeviceWebuiPrivacy(a.Privacy, b.Privacy) { return false } if !util.StringsMatch(a.Tasks, b.Tasks) { return false } - if !util.StringsMatch(a.Dashboard, b.Dashboard) { + if !matchRoleDeviceWebuiCommit(a.Commit, b.Commit) { return false } - if !matchRoleDeviceWebuiNetwork(a.Network, b.Network) { + if !matchRoleDeviceWebuiDevice(a.Device, b.Device) { return false } - if !util.StringsMatch(a.Validate, b.Validate) { + if !matchRoleDeviceWebuiMonitor(a.Monitor, b.Monitor) { return false } - if !matchRoleDeviceWebuiPolicies(a.Policies, b.Policies) { + if !matchRoleDeviceWebuiOperations(a.Operations, b.Operations) { return false } - if !matchRoleDeviceWebuiPrivacy(a.Privacy, b.Privacy) { + if !matchRoleDeviceWebuiSave(a.Save, b.Save) { return false } - if !matchRoleDeviceWebuiCommit(a.Commit, b.Commit) { + if !util.StringsMatch(a.Validate, b.Validate) { return false } - if !matchRoleDeviceWebuiMonitor(a.Monitor, b.Monitor) { + if !matchRoleDeviceWebuiGlobal(a.Global, b.Global) { return false } if !matchRoleDeviceWebuiObjects(a.Objects, b.Objects) { return false } - if !matchRoleDeviceWebuiOperations(a.Operations, b.Operations) { + if !matchRoleDeviceWebuiPolicies(a.Policies, b.Policies) { return false } return true @@ -7581,19 +7581,25 @@ func matchRoleDeviceXmlapi(a *RoleDeviceXmlapi, b *RoleDeviceXmlapi) bool { } else if a == nil && b == nil { return true } + if !util.StringsMatch(a.Op, b.Op) { + return false + } + if !util.StringsMatch(a.Commit, b.Commit) { + return false + } if !util.StringsMatch(a.Import, b.Import) { return false } if !util.StringsMatch(a.Iot, b.Iot) { return false } - if !util.StringsMatch(a.Op, b.Op) { + if !util.StringsMatch(a.Log, b.Log) { return false } if !util.StringsMatch(a.Report, b.Report) { return false } - if !util.StringsMatch(a.Commit, b.Commit) { + if !util.StringsMatch(a.UserId, b.UserId) { return false } if !util.StringsMatch(a.Config, b.Config) { @@ -7602,12 +7608,6 @@ func matchRoleDeviceXmlapi(a *RoleDeviceXmlapi, b *RoleDeviceXmlapi) bool { if !util.StringsMatch(a.Export, b.Export) { return false } - if !util.StringsMatch(a.Log, b.Log) { - return false - } - if !util.StringsMatch(a.UserId, b.UserId) { - return false - } return true } func matchRoleDevice(a *RoleDevice, b *RoleDevice) bool { @@ -7665,6 +7665,12 @@ func matchRoleVsysRestapiNetwork(a *RoleVsysRestapiNetwork, b *RoleVsysRestapiNe } else if a == nil && b == nil { return true } + if !util.StringsMatch(a.Zones, b.Zones) { + return false + } + if !util.StringsMatch(a.SdwanInterfaceProfiles, b.SdwanInterfaceProfiles) { + return false + } if !util.StringsMatch(a.GlobalprotectClientlessAppGroups, b.GlobalprotectClientlessAppGroups) { return false } @@ -7680,12 +7686,6 @@ func matchRoleVsysRestapiNetwork(a *RoleVsysRestapiNetwork, b *RoleVsysRestapiNe if !util.StringsMatch(a.GlobalprotectPortals, b.GlobalprotectPortals) { return false } - if !util.StringsMatch(a.Zones, b.Zones) { - return false - } - if !util.StringsMatch(a.SdwanInterfaceProfiles, b.SdwanInterfaceProfiles) { - return false - } return true } func matchRoleVsysRestapiObjects(a *RoleVsysRestapiObjects, b *RoleVsysRestapiObjects) bool { @@ -7694,118 +7694,118 @@ func matchRoleVsysRestapiObjects(a *RoleVsysRestapiObjects, b *RoleVsysRestapiOb } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.AntivirusSecurityProfiles, b.AntivirusSecurityProfiles) { + if !util.StringsMatch(a.DynamicUserGroups, b.DynamicUserGroups) { return false } - if !util.StringsMatch(a.UrlFilteringSecurityProfiles, b.UrlFilteringSecurityProfiles) { + if !util.StringsMatch(a.FileBlockingSecurityProfiles, b.FileBlockingSecurityProfiles) { return false } - if !util.StringsMatch(a.WildfireAnalysisSecurityProfiles, b.WildfireAnalysisSecurityProfiles) { + if !util.StringsMatch(a.GlobalprotectHipProfiles, b.GlobalprotectHipProfiles) { return false } - if !util.StringsMatch(a.DecryptionProfiles, b.DecryptionProfiles) { + if !util.StringsMatch(a.LogForwardingProfiles, b.LogForwardingProfiles) { return false } - if !util.StringsMatch(a.DynamicUserGroups, b.DynamicUserGroups) { + if !util.StringsMatch(a.SdwanPathQualityProfiles, b.SdwanPathQualityProfiles) { return false } - if !util.StringsMatch(a.GlobalprotectHipObjects, b.GlobalprotectHipObjects) { + if !util.StringsMatch(a.AntivirusSecurityProfiles, b.AntivirusSecurityProfiles) { return false } - if !util.StringsMatch(a.GtpProtectionSecurityProfiles, b.GtpProtectionSecurityProfiles) { + if !util.StringsMatch(a.CustomSpywareSignatures, b.CustomSpywareSignatures) { return false } - if !util.StringsMatch(a.SecurityProfileGroups, b.SecurityProfileGroups) { + if !util.StringsMatch(a.DosProtectionSecurityProfiles, b.DosProtectionSecurityProfiles) { return false } - if !util.StringsMatch(a.AuthenticationEnforcements, b.AuthenticationEnforcements) { + if !util.StringsMatch(a.PacketBrokerProfiles, b.PacketBrokerProfiles) { return false } - if !util.StringsMatch(a.LogForwardingProfiles, b.LogForwardingProfiles) { + if !util.StringsMatch(a.SdwanTrafficDistributionProfiles, b.SdwanTrafficDistributionProfiles) { return false } - if !util.StringsMatch(a.PacketBrokerProfiles, b.PacketBrokerProfiles) { + if !util.StringsMatch(a.AntiSpywareSecurityProfiles, b.AntiSpywareSecurityProfiles) { return false } - if !util.StringsMatch(a.Tags, b.Tags) { + if !util.StringsMatch(a.Applications, b.Applications) { return false } - if !util.StringsMatch(a.ExternalDynamicLists, b.ExternalDynamicLists) { + if !util.StringsMatch(a.Regions, b.Regions) { return false } - if !util.StringsMatch(a.Schedules, b.Schedules) { + if !util.StringsMatch(a.VulnerabilityProtectionSecurityProfiles, b.VulnerabilityProtectionSecurityProfiles) { return false } - if !util.StringsMatch(a.SdwanErrorCorrectionProfiles, b.SdwanErrorCorrectionProfiles) { + if !util.StringsMatch(a.AuthenticationEnforcements, b.AuthenticationEnforcements) { return false } - if !util.StringsMatch(a.SdwanPathQualityProfiles, b.SdwanPathQualityProfiles) { + if !util.StringsMatch(a.DataFilteringSecurityProfiles, b.DataFilteringSecurityProfiles) { return false } - if !util.StringsMatch(a.DosProtectionSecurityProfiles, b.DosProtectionSecurityProfiles) { + if !util.StringsMatch(a.ApplicationGroups, b.ApplicationGroups) { return false } - if !util.StringsMatch(a.Services, b.Services) { + if !util.StringsMatch(a.Devices, b.Devices) { return false } - if !util.StringsMatch(a.Addresses, b.Addresses) { + if !util.StringsMatch(a.Schedules, b.Schedules) { return false } - if !util.StringsMatch(a.ApplicationFilters, b.ApplicationFilters) { + if !util.StringsMatch(a.SecurityProfileGroups, b.SecurityProfileGroups) { return false } - if !util.StringsMatch(a.Applications, b.Applications) { + if !util.StringsMatch(a.Services, b.Services) { return false } - if !util.StringsMatch(a.CustomUrlCategories, b.CustomUrlCategories) { + if !util.StringsMatch(a.WildfireAnalysisSecurityProfiles, b.WildfireAnalysisSecurityProfiles) { return false } - if !util.StringsMatch(a.Devices, b.Devices) { + if !util.StringsMatch(a.AddressGroups, b.AddressGroups) { return false } - if !util.StringsMatch(a.DataFilteringSecurityProfiles, b.DataFilteringSecurityProfiles) { + if !util.StringsMatch(a.ApplicationFilters, b.ApplicationFilters) { return false } - if !util.StringsMatch(a.GlobalprotectHipProfiles, b.GlobalprotectHipProfiles) { + if !util.StringsMatch(a.DecryptionProfiles, b.DecryptionProfiles) { return false } - if !util.StringsMatch(a.SdwanTrafficDistributionProfiles, b.SdwanTrafficDistributionProfiles) { + if !util.StringsMatch(a.GlobalprotectHipObjects, b.GlobalprotectHipObjects) { return false } - if !util.StringsMatch(a.SctpProtectionSecurityProfiles, b.SctpProtectionSecurityProfiles) { + if !util.StringsMatch(a.GtpProtectionSecurityProfiles, b.GtpProtectionSecurityProfiles) { return false } if !util.StringsMatch(a.ServiceGroups, b.ServiceGroups) { return false } - if !util.StringsMatch(a.VulnerabilityProtectionSecurityProfiles, b.VulnerabilityProtectionSecurityProfiles) { + if !util.StringsMatch(a.Addresses, b.Addresses) { return false } - if !util.StringsMatch(a.AddressGroups, b.AddressGroups) { + if !util.StringsMatch(a.CustomUrlCategories, b.CustomUrlCategories) { return false } - if !util.StringsMatch(a.AntiSpywareSecurityProfiles, b.AntiSpywareSecurityProfiles) { + if !util.StringsMatch(a.UrlFilteringSecurityProfiles, b.UrlFilteringSecurityProfiles) { return false } - if !util.StringsMatch(a.CustomSpywareSignatures, b.CustomSpywareSignatures) { + if !util.StringsMatch(a.ExternalDynamicLists, b.ExternalDynamicLists) { return false } - if !util.StringsMatch(a.CustomVulnerabilitySignatures, b.CustomVulnerabilitySignatures) { + if !util.StringsMatch(a.SctpProtectionSecurityProfiles, b.SctpProtectionSecurityProfiles) { return false } - if !util.StringsMatch(a.FileBlockingSecurityProfiles, b.FileBlockingSecurityProfiles) { + if !util.StringsMatch(a.SdwanErrorCorrectionProfiles, b.SdwanErrorCorrectionProfiles) { return false } - if !util.StringsMatch(a.ApplicationGroups, b.ApplicationGroups) { + if !util.StringsMatch(a.Tags, b.Tags) { return false } - if !util.StringsMatch(a.CustomDataPatterns, b.CustomDataPatterns) { + if !util.StringsMatch(a.SdwanSaasQualityProfiles, b.SdwanSaasQualityProfiles) { return false } - if !util.StringsMatch(a.Regions, b.Regions) { + if !util.StringsMatch(a.CustomDataPatterns, b.CustomDataPatterns) { return false } - if !util.StringsMatch(a.SdwanSaasQualityProfiles, b.SdwanSaasQualityProfiles) { + if !util.StringsMatch(a.CustomVulnerabilitySignatures, b.CustomVulnerabilitySignatures) { return false } return true @@ -7816,37 +7816,37 @@ func matchRoleVsysRestapiPolicies(a *RoleVsysRestapiPolicies, b *RoleVsysRestapi } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.SdwanRules, b.SdwanRules) { + if !util.StringsMatch(a.ApplicationOverrideRules, b.ApplicationOverrideRules) { return false } - if !util.StringsMatch(a.SecurityRules, b.SecurityRules) { + if !util.StringsMatch(a.AuthenticationRules, b.AuthenticationRules) { return false } - if !util.StringsMatch(a.ApplicationOverrideRules, b.ApplicationOverrideRules) { + if !util.StringsMatch(a.DecryptionRules, b.DecryptionRules) { return false } - if !util.StringsMatch(a.AuthenticationRules, b.AuthenticationRules) { + if !util.StringsMatch(a.NatRules, b.NatRules) { return false } - if !util.StringsMatch(a.DosRules, b.DosRules) { + if !util.StringsMatch(a.PolicyBasedForwardingRules, b.PolicyBasedForwardingRules) { return false } - if !util.StringsMatch(a.NatRules, b.NatRules) { + if !util.StringsMatch(a.QosRules, b.QosRules) { return false } - if !util.StringsMatch(a.NetworkPacketBrokerRules, b.NetworkPacketBrokerRules) { + if !util.StringsMatch(a.SecurityRules, b.SecurityRules) { return false } - if !util.StringsMatch(a.DecryptionRules, b.DecryptionRules) { + if !util.StringsMatch(a.TunnelInspectionRules, b.TunnelInspectionRules) { return false } - if !util.StringsMatch(a.PolicyBasedForwardingRules, b.PolicyBasedForwardingRules) { + if !util.StringsMatch(a.DosRules, b.DosRules) { return false } - if !util.StringsMatch(a.QosRules, b.QosRules) { + if !util.StringsMatch(a.NetworkPacketBrokerRules, b.NetworkPacketBrokerRules) { return false } - if !util.StringsMatch(a.TunnelInspectionRules, b.TunnelInspectionRules) { + if !util.StringsMatch(a.SdwanRules, b.SdwanRules) { return false } return true @@ -7868,774 +7868,774 @@ func matchRoleVsysRestapi(a *RoleVsysRestapi, b *RoleVsysRestapi) bool { } else if a == nil && b == nil { return true } - if !matchRoleVsysRestapiPolicies(a.Policies, b.Policies) { + if !matchRoleVsysRestapiDevice(a.Device, b.Device) { return false } - if !matchRoleVsysRestapiSystem(a.System, b.System) { + if !matchRoleVsysRestapiNetwork(a.Network, b.Network) { return false } - if !matchRoleVsysRestapiDevice(a.Device, b.Device) { + if !matchRoleVsysRestapiObjects(a.Objects, b.Objects) { return false } - if !matchRoleVsysRestapiNetwork(a.Network, b.Network) { + if !matchRoleVsysRestapiPolicies(a.Policies, b.Policies) { return false } - if !matchRoleVsysRestapiObjects(a.Objects, b.Objects) { + if !matchRoleVsysRestapiSystem(a.System, b.System) { return false } return true } -func matchRoleVsysWebuiPolicies(a *RoleVsysWebuiPolicies, b *RoleVsysWebuiPolicies) bool { +func matchRoleVsysWebuiDeviceLocalUserDatabase(a *RoleVsysWebuiDeviceLocalUserDatabase, b *RoleVsysWebuiDeviceLocalUserDatabase) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.RuleHitCountReset, b.RuleHitCountReset) { - return false - } - if !util.StringsMatch(a.SdwanRulebase, b.SdwanRulebase) { - return false - } - if !util.StringsMatch(a.SecurityRulebase, b.SecurityRulebase) { - return false - } - if !util.StringsMatch(a.AuthenticationRulebase, b.AuthenticationRulebase) { - return false - } - if !util.StringsMatch(a.DosRulebase, b.DosRulebase) { - return false - } - if !util.StringsMatch(a.NatRulebase, b.NatRulebase) { - return false - } - if !util.StringsMatch(a.NetworkPacketBrokerRulebase, b.NetworkPacketBrokerRulebase) { - return false - } - if !util.StringsMatch(a.PbfRulebase, b.PbfRulebase) { - return false - } - if !util.StringsMatch(a.ApplicationOverrideRulebase, b.ApplicationOverrideRulebase) { - return false - } - if !util.StringsMatch(a.QosRulebase, b.QosRulebase) { - return false - } - if !util.StringsMatch(a.SslDecryptionRulebase, b.SslDecryptionRulebase) { + if !util.StringsMatch(a.UserGroups, b.UserGroups) { return false } - if !util.StringsMatch(a.TunnelInspectRulebase, b.TunnelInspectRulebase) { + if !util.StringsMatch(a.Users, b.Users) { return false } return true } -func matchRoleVsysWebuiNetworkGlobalProtect(a *RoleVsysWebuiNetworkGlobalProtect, b *RoleVsysWebuiNetworkGlobalProtect) bool { +func matchRoleVsysWebuiDeviceCertificateManagement(a *RoleVsysWebuiDeviceCertificateManagement, b *RoleVsysWebuiDeviceCertificateManagement) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.ClientlessAppGroups, b.ClientlessAppGroups) { + if !util.StringsMatch(a.SslTlsServiceProfile, b.SslTlsServiceProfile) { return false } - if !util.StringsMatch(a.ClientlessApps, b.ClientlessApps) { + if !util.StringsMatch(a.CertificateProfile, b.CertificateProfile) { return false } - if !util.StringsMatch(a.Gateways, b.Gateways) { + if !util.StringsMatch(a.Certificates, b.Certificates) { return false } - if !util.StringsMatch(a.Mdm, b.Mdm) { + if !util.StringsMatch(a.OcspResponder, b.OcspResponder) { return false } - if !util.StringsMatch(a.Portals, b.Portals) { + if !util.StringsMatch(a.Scep, b.Scep) { + return false + } + if !util.StringsMatch(a.SshServiceProfile, b.SshServiceProfile) { + return false + } + if !util.StringsMatch(a.SslDecryptionExclusion, b.SslDecryptionExclusion) { return false } return true } -func matchRoleVsysWebuiNetwork(a *RoleVsysWebuiNetwork, b *RoleVsysWebuiNetwork) bool { +func matchRoleVsysWebuiDeviceLogSettings(a *RoleVsysWebuiDeviceLogSettings, b *RoleVsysWebuiDeviceLogSettings) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchRoleVsysWebuiNetworkGlobalProtect(a.GlobalProtect, b.GlobalProtect) { - return false - } - if !util.StringsMatch(a.SdwanInterfaceProfile, b.SdwanInterfaceProfile) { + if !util.StringsMatch(a.UserId, b.UserId) { return false } - if !util.StringsMatch(a.Zones, b.Zones) { + if !util.StringsMatch(a.Config, b.Config) { return false } - return true -} -func matchRoleVsysWebuiObjectsSdwan(a *RoleVsysWebuiObjectsSdwan, b *RoleVsysWebuiObjectsSdwan) bool { - if a == nil && b != nil || a != nil && b == nil { + if !util.StringsMatch(a.Correlation, b.Correlation) { return false - } else if a == nil && b == nil { - return true } - if !util.StringsMatch(a.SdwanSaasQualityProfile, b.SdwanSaasQualityProfile) { + if !util.StringsMatch(a.Globalprotect, b.Globalprotect) { return false } - if !util.StringsMatch(a.SdwanDistProfile, b.SdwanDistProfile) { + if !util.StringsMatch(a.Hipmatch, b.Hipmatch) { return false } - if !util.StringsMatch(a.SdwanErrorCorrectionProfile, b.SdwanErrorCorrectionProfile) { + if !util.StringsMatch(a.Iptag, b.Iptag) { return false } - if !util.StringsMatch(a.SdwanProfile, b.SdwanProfile) { + if !util.StringsMatch(a.System, b.System) { return false } return true } -func matchRoleVsysWebuiObjectsGlobalProtect(a *RoleVsysWebuiObjectsGlobalProtect, b *RoleVsysWebuiObjectsGlobalProtect) bool { +func matchRoleVsysWebuiDevicePolicyRecommendations(a *RoleVsysWebuiDevicePolicyRecommendations, b *RoleVsysWebuiDevicePolicyRecommendations) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.HipObjects, b.HipObjects) { + if !util.StringsMatch(a.Iot, b.Iot) { return false } - if !util.StringsMatch(a.HipProfiles, b.HipProfiles) { + if !util.StringsMatch(a.Saas, b.Saas) { return false } return true } -func matchRoleVsysWebuiObjectsSecurityProfiles(a *RoleVsysWebuiObjectsSecurityProfiles, b *RoleVsysWebuiObjectsSecurityProfiles) bool { +func matchRoleVsysWebuiDeviceSetup(a *RoleVsysWebuiDeviceSetup, b *RoleVsysWebuiDeviceSetup) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.AntiSpyware, b.AntiSpyware) { - return false - } - if !util.StringsMatch(a.Antivirus, b.Antivirus) { + if !util.StringsMatch(a.Operations, b.Operations) { return false } - if !util.StringsMatch(a.DataFiltering, b.DataFiltering) { + if !util.StringsMatch(a.Session, b.Session) { return false } - if !util.StringsMatch(a.SctpProtection, b.SctpProtection) { + if !util.StringsMatch(a.Telemetry, b.Telemetry) { return false } - if !util.StringsMatch(a.WildfireAnalysis, b.WildfireAnalysis) { + if !util.StringsMatch(a.Wildfire, b.Wildfire) { return false } - if !util.StringsMatch(a.DosProtection, b.DosProtection) { + if !util.StringsMatch(a.Interfaces, b.Interfaces) { return false } - if !util.StringsMatch(a.FileBlocking, b.FileBlocking) { + if !util.StringsMatch(a.Hsm, b.Hsm) { return false } - if !util.StringsMatch(a.GtpProtection, b.GtpProtection) { + if !util.StringsMatch(a.Management, b.Management) { return false } - if !util.StringsMatch(a.UrlFiltering, b.UrlFiltering) { + if !util.StringsMatch(a.Services, b.Services) { return false } - if !util.StringsMatch(a.VulnerabilityProtection, b.VulnerabilityProtection) { + if !util.StringsMatch(a.ContentId, b.ContentId) { return false } return true } -func matchRoleVsysWebuiObjectsDecryption(a *RoleVsysWebuiObjectsDecryption, b *RoleVsysWebuiObjectsDecryption) bool { +func matchRoleVsysWebuiDeviceServerProfile(a *RoleVsysWebuiDeviceServerProfile, b *RoleVsysWebuiDeviceServerProfile) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.DecryptionProfile, b.DecryptionProfile) { + if !util.StringsMatch(a.Http, b.Http) { return false } - return true -} -func matchRoleVsysWebuiObjectsCustomObjects(a *RoleVsysWebuiObjectsCustomObjects, b *RoleVsysWebuiObjectsCustomObjects) bool { - if a == nil && b != nil || a != nil && b == nil { + if !util.StringsMatch(a.Kerberos, b.Kerberos) { return false - } else if a == nil && b == nil { - return true } - if !util.StringsMatch(a.DataPatterns, b.DataPatterns) { + if !util.StringsMatch(a.Netflow, b.Netflow) { return false } - if !util.StringsMatch(a.Spyware, b.Spyware) { + if !util.StringsMatch(a.Radius, b.Radius) { return false } - if !util.StringsMatch(a.UrlCategory, b.UrlCategory) { + if !util.StringsMatch(a.SamlIdp, b.SamlIdp) { return false } - if !util.StringsMatch(a.Vulnerability, b.Vulnerability) { + if !util.StringsMatch(a.SnmpTrap, b.SnmpTrap) { return false } - return true -} -func matchRoleVsysWebuiObjects(a *RoleVsysWebuiObjects, b *RoleVsysWebuiObjects) bool { - if a == nil && b != nil || a != nil && b == nil { + if !util.StringsMatch(a.Dns, b.Dns) { return false - } else if a == nil && b == nil { - return true } - if !util.StringsMatch(a.DynamicBlockLists, b.DynamicBlockLists) { + if !util.StringsMatch(a.Ldap, b.Ldap) { return false } - if !util.StringsMatch(a.DynamicUserGroups, b.DynamicUserGroups) { + if !util.StringsMatch(a.Mfa, b.Mfa) { return false } - if !util.StringsMatch(a.PacketBrokerProfile, b.PacketBrokerProfile) { + if !util.StringsMatch(a.Scp, b.Scp) { return false } - if !matchRoleVsysWebuiObjectsSdwan(a.Sdwan, b.Sdwan) { + if !util.StringsMatch(a.Syslog, b.Syslog) { return false } - if !util.StringsMatch(a.Addresses, b.Addresses) { + if !util.StringsMatch(a.Tacplus, b.Tacplus) { return false } - if !matchRoleVsysWebuiObjectsDecryption(a.Decryption, b.Decryption) { + if !util.StringsMatch(a.Email, b.Email) { return false } - if !util.StringsMatch(a.Devices, b.Devices) { + return true +} +func matchRoleVsysWebuiDevice(a *RoleVsysWebuiDevice, b *RoleVsysWebuiDevice) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } - if !matchRoleVsysWebuiObjectsGlobalProtect(a.GlobalProtect, b.GlobalProtect) { + if !util.StringsMatch(a.DataRedistribution, b.DataRedistribution) { return false } - if !util.StringsMatch(a.Schedules, b.Schedules) { + if !util.StringsMatch(a.UserIdentification, b.UserIdentification) { return false } - if !matchRoleVsysWebuiObjectsSecurityProfiles(a.SecurityProfiles, b.SecurityProfiles) { + if !util.StringsMatch(a.DhcpSyslogServer, b.DhcpSyslogServer) { return false } - if !util.StringsMatch(a.ServiceGroups, b.ServiceGroups) { + if !util.StringsMatch(a.Administrators, b.Administrators) { return false } - if !util.StringsMatch(a.AddressGroups, b.AddressGroups) { + if !util.StringsMatch(a.AuthenticationProfile, b.AuthenticationProfile) { return false } - if !util.StringsMatch(a.ApplicationGroups, b.ApplicationGroups) { + if !matchRoleVsysWebuiDeviceServerProfile(a.ServerProfile, b.ServerProfile) { return false } - if !util.StringsMatch(a.Applications, b.Applications) { + if !util.StringsMatch(a.AuthenticationSequence, b.AuthenticationSequence) { return false } - if !util.StringsMatch(a.Authentication, b.Authentication) { + if !matchRoleVsysWebuiDeviceLocalUserDatabase(a.LocalUserDatabase, b.LocalUserDatabase) { return false } - if !util.StringsMatch(a.Regions, b.Regions) { + if !util.StringsMatch(a.Troubleshooting, b.Troubleshooting) { return false } - if !util.StringsMatch(a.Tags, b.Tags) { + if !util.StringsMatch(a.VmInfoSource, b.VmInfoSource) { return false } - if !util.StringsMatch(a.ApplicationFilters, b.ApplicationFilters) { + if !matchRoleVsysWebuiDevicePolicyRecommendations(a.PolicyRecommendations, b.PolicyRecommendations) { return false } - if !matchRoleVsysWebuiObjectsCustomObjects(a.CustomObjects, b.CustomObjects) { + if !matchRoleVsysWebuiDeviceSetup(a.Setup, b.Setup) { return false } - if !util.StringsMatch(a.LogForwarding, b.LogForwarding) { + if !util.StringsMatch(a.BlockPages, b.BlockPages) { return false } - if !util.StringsMatch(a.SecurityProfileGroups, b.SecurityProfileGroups) { + if !matchRoleVsysWebuiDeviceCertificateManagement(a.CertificateManagement, b.CertificateManagement) { return false } - if !util.StringsMatch(a.Services, b.Services) { + if !util.StringsMatch(a.DeviceQuarantine, b.DeviceQuarantine) { + return false + } + if !matchRoleVsysWebuiDeviceLogSettings(a.LogSettings, b.LogSettings) { return false } return true } -func matchRoleVsysWebuiOperations(a *RoleVsysWebuiOperations, b *RoleVsysWebuiOperations) bool { +func matchRoleVsysWebuiMonitorPdfReports(a *RoleVsysWebuiMonitorPdfReports, b *RoleVsysWebuiMonitorPdfReports) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.GenerateTechSupportFile, b.GenerateTechSupportFile) { + if !util.StringsMatch(a.ReportGroups, b.ReportGroups) { return false } - if !util.StringsMatch(a.Reboot, b.Reboot) { + if !util.StringsMatch(a.SaasApplicationUsageReport, b.SaasApplicationUsageReport) { return false } - if !util.StringsMatch(a.DownloadCoreFiles, b.DownloadCoreFiles) { + if !util.StringsMatch(a.UserActivityReport, b.UserActivityReport) { return false } - if !util.StringsMatch(a.DownloadPcapFiles, b.DownloadPcapFiles) { + if !util.StringsMatch(a.EmailScheduler, b.EmailScheduler) { return false } - if !util.StringsMatch(a.GenerateStatsDumpFile, b.GenerateStatsDumpFile) { + if !util.StringsMatch(a.ManagePdfSummary, b.ManagePdfSummary) { + return false + } + if !util.StringsMatch(a.PdfSummaryReports, b.PdfSummaryReports) { return false } return true } -func matchRoleVsysWebuiPrivacy(a *RoleVsysWebuiPrivacy, b *RoleVsysWebuiPrivacy) bool { +func matchRoleVsysWebuiMonitorAutomatedCorrelationEngine(a *RoleVsysWebuiMonitorAutomatedCorrelationEngine, b *RoleVsysWebuiMonitorAutomatedCorrelationEngine) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.ShowUserNamesInLogsAndReports, b.ShowUserNamesInLogsAndReports) { - return false - } - if !util.StringsMatch(a.ViewPcapFiles, b.ViewPcapFiles) { + if !util.StringsMatch(a.CorrelatedEvents, b.CorrelatedEvents) { return false } - if !util.StringsMatch(a.ShowFullIpAddresses, b.ShowFullIpAddresses) { + if !util.StringsMatch(a.CorrelationObjects, b.CorrelationObjects) { return false } return true } -func matchRoleVsysWebuiSave(a *RoleVsysWebuiSave, b *RoleVsysWebuiSave) bool { +func matchRoleVsysWebuiMonitorCustomReports(a *RoleVsysWebuiMonitorCustomReports, b *RoleVsysWebuiMonitorCustomReports) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.PartialSave, b.PartialSave) { - return false - } - if !util.StringsMatch(a.SaveForOtherAdmins, b.SaveForOtherAdmins) { - return false - } - if !util.StringsMatch(a.ObjectLevelChanges, b.ObjectLevelChanges) { + if !util.StringsMatch(a.ApplicationStatistics, b.ApplicationStatistics) { return false } - return true -} -func matchRoleVsysWebuiCommit(a *RoleVsysWebuiCommit, b *RoleVsysWebuiCommit) bool { - if a == nil && b != nil || a != nil && b == nil { + if !util.StringsMatch(a.Auth, b.Auth) { return false - } else if a == nil && b == nil { - return true } - if !util.StringsMatch(a.CommitForOtherAdmins, b.CommitForOtherAdmins) { + if !util.StringsMatch(a.TunnelLog, b.TunnelLog) { return false } - if !util.StringsMatch(a.VirtualSystems, b.VirtualSystems) { + if !util.StringsMatch(a.TunnelSummary, b.TunnelSummary) { return false } - return true -} -func matchRoleVsysWebuiDeviceSetup(a *RoleVsysWebuiDeviceSetup, b *RoleVsysWebuiDeviceSetup) bool { - if a == nil && b != nil || a != nil && b == nil { + if !util.StringsMatch(a.GtpLog, b.GtpLog) { return false - } else if a == nil && b == nil { - return true } - if !util.StringsMatch(a.Hsm, b.Hsm) { + if !util.StringsMatch(a.GtpSummary, b.GtpSummary) { return false } - if !util.StringsMatch(a.Interfaces, b.Interfaces) { + if !util.StringsMatch(a.SctpLog, b.SctpLog) { return false } - if !util.StringsMatch(a.Management, b.Management) { + if !util.StringsMatch(a.SctpSummary, b.SctpSummary) { return false } - if !util.StringsMatch(a.Operations, b.Operations) { + if !util.StringsMatch(a.TrafficLog, b.TrafficLog) { return false } - if !util.StringsMatch(a.ContentId, b.ContentId) { + if !util.StringsMatch(a.Userid, b.Userid) { return false } - if !util.StringsMatch(a.Services, b.Services) { + if !util.StringsMatch(a.TrafficSummary, b.TrafficSummary) { return false } - if !util.StringsMatch(a.Session, b.Session) { + if !util.StringsMatch(a.UrlLog, b.UrlLog) { return false } - if !util.StringsMatch(a.Telemetry, b.Telemetry) { + if !util.StringsMatch(a.DataFilteringLog, b.DataFilteringLog) { return false } - if !util.StringsMatch(a.Wildfire, b.Wildfire) { + if !util.StringsMatch(a.DecryptionSummary, b.DecryptionSummary) { return false } - return true -} -func matchRoleVsysWebuiDeviceCertificateManagement(a *RoleVsysWebuiDeviceCertificateManagement, b *RoleVsysWebuiDeviceCertificateManagement) bool { - if a == nil && b != nil || a != nil && b == nil { + if !util.StringsMatch(a.Globalprotect, b.Globalprotect) { return false - } else if a == nil && b == nil { - return true } - if !util.StringsMatch(a.SslTlsServiceProfile, b.SslTlsServiceProfile) { + if !util.StringsMatch(a.Hipmatch, b.Hipmatch) { return false } - if !util.StringsMatch(a.CertificateProfile, b.CertificateProfile) { + if !util.StringsMatch(a.Iptag, b.Iptag) { return false } - if !util.StringsMatch(a.Certificates, b.Certificates) { + if !util.StringsMatch(a.ThreatSummary, b.ThreatSummary) { return false } - if !util.StringsMatch(a.OcspResponder, b.OcspResponder) { + if !util.StringsMatch(a.UrlSummary, b.UrlSummary) { return false } - if !util.StringsMatch(a.Scep, b.Scep) { + if !util.StringsMatch(a.WildfireLog, b.WildfireLog) { return false } - if !util.StringsMatch(a.SshServiceProfile, b.SshServiceProfile) { + if !util.StringsMatch(a.DecryptionLog, b.DecryptionLog) { return false } - if !util.StringsMatch(a.SslDecryptionExclusion, b.SslDecryptionExclusion) { + if !util.StringsMatch(a.ThreatLog, b.ThreatLog) { return false } return true } -func matchRoleVsysWebuiDeviceLocalUserDatabase(a *RoleVsysWebuiDeviceLocalUserDatabase, b *RoleVsysWebuiDeviceLocalUserDatabase) bool { +func matchRoleVsysWebuiMonitorLogs(a *RoleVsysWebuiMonitorLogs, b *RoleVsysWebuiMonitorLogs) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.UserGroups, b.UserGroups) { + if !util.StringsMatch(a.Threat, b.Threat) { return false } - if !util.StringsMatch(a.Users, b.Users) { + if !util.StringsMatch(a.Wildfire, b.Wildfire) { return false } - return true -} -func matchRoleVsysWebuiDeviceLogSettings(a *RoleVsysWebuiDeviceLogSettings, b *RoleVsysWebuiDeviceLogSettings) bool { - if a == nil && b != nil || a != nil && b == nil { + if !util.StringsMatch(a.DataFiltering, b.DataFiltering) { return false - } else if a == nil && b == nil { - return true } - if !util.StringsMatch(a.UserId, b.UserId) { + if !util.StringsMatch(a.Globalprotect, b.Globalprotect) { return false } - if !util.StringsMatch(a.Config, b.Config) { + if !util.StringsMatch(a.Hipmatch, b.Hipmatch) { return false } - if !util.StringsMatch(a.Correlation, b.Correlation) { + if !util.StringsMatch(a.Url, b.Url) { return false } - if !util.StringsMatch(a.Globalprotect, b.Globalprotect) { + if !util.StringsMatch(a.Userid, b.Userid) { return false } - if !util.StringsMatch(a.Hipmatch, b.Hipmatch) { + if !util.StringsMatch(a.Authentication, b.Authentication) { + return false + } + if !util.StringsMatch(a.Decryption, b.Decryption) { + return false + } + if !util.StringsMatch(a.Gtp, b.Gtp) { return false } if !util.StringsMatch(a.Iptag, b.Iptag) { return false } - if !util.StringsMatch(a.System, b.System) { + if !util.StringsMatch(a.Traffic, b.Traffic) { + return false + } + if !util.StringsMatch(a.Tunnel, b.Tunnel) { + return false + } + if !util.StringsMatch(a.Sctp, b.Sctp) { return false } return true } -func matchRoleVsysWebuiDeviceServerProfile(a *RoleVsysWebuiDeviceServerProfile, b *RoleVsysWebuiDeviceServerProfile) bool { +func matchRoleVsysWebuiMonitor(a *RoleVsysWebuiMonitor, b *RoleVsysWebuiMonitor) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Tacplus, b.Tacplus) { + if !matchRoleVsysWebuiMonitorAutomatedCorrelationEngine(a.AutomatedCorrelationEngine, b.AutomatedCorrelationEngine) { return false } - if !util.StringsMatch(a.Dns, b.Dns) { + if !util.StringsMatch(a.BlockIpList, b.BlockIpList) { return false } - if !util.StringsMatch(a.Http, b.Http) { + if !util.StringsMatch(a.ExternalLogs, b.ExternalLogs) { return false } - if !util.StringsMatch(a.Netflow, b.Netflow) { + if !matchRoleVsysWebuiMonitorPdfReports(a.PdfReports, b.PdfReports) { return false } - if !util.StringsMatch(a.SamlIdp, b.SamlIdp) { + if !util.StringsMatch(a.AppScope, b.AppScope) { return false } - if !util.StringsMatch(a.SnmpTrap, b.SnmpTrap) { + if !matchRoleVsysWebuiMonitorCustomReports(a.CustomReports, b.CustomReports) { return false } - if !util.StringsMatch(a.Scp, b.Scp) { + if !matchRoleVsysWebuiMonitorLogs(a.Logs, b.Logs) { return false } - if !util.StringsMatch(a.Syslog, b.Syslog) { + if !util.StringsMatch(a.SessionBrowser, b.SessionBrowser) { return false } - if !util.StringsMatch(a.Email, b.Email) { + if !util.StringsMatch(a.ViewCustomReports, b.ViewCustomReports) { return false } - if !util.StringsMatch(a.Kerberos, b.Kerberos) { + return true +} +func matchRoleVsysWebuiNetworkGlobalProtect(a *RoleVsysWebuiNetworkGlobalProtect, b *RoleVsysWebuiNetworkGlobalProtect) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + if !util.StringsMatch(a.ClientlessApps, b.ClientlessApps) { return false } - if !util.StringsMatch(a.Ldap, b.Ldap) { + if !util.StringsMatch(a.Gateways, b.Gateways) { + return false + } + if !util.StringsMatch(a.Mdm, b.Mdm) { return false } - if !util.StringsMatch(a.Mfa, b.Mfa) { + if !util.StringsMatch(a.Portals, b.Portals) { return false } - if !util.StringsMatch(a.Radius, b.Radius) { + if !util.StringsMatch(a.ClientlessAppGroups, b.ClientlessAppGroups) { return false } return true } -func matchRoleVsysWebuiDevicePolicyRecommendations(a *RoleVsysWebuiDevicePolicyRecommendations, b *RoleVsysWebuiDevicePolicyRecommendations) bool { +func matchRoleVsysWebuiNetwork(a *RoleVsysWebuiNetwork, b *RoleVsysWebuiNetwork) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Iot, b.Iot) { + if !matchRoleVsysWebuiNetworkGlobalProtect(a.GlobalProtect, b.GlobalProtect) { return false } - if !util.StringsMatch(a.Saas, b.Saas) { + if !util.StringsMatch(a.SdwanInterfaceProfile, b.SdwanInterfaceProfile) { + return false + } + if !util.StringsMatch(a.Zones, b.Zones) { return false } return true } -func matchRoleVsysWebuiDevice(a *RoleVsysWebuiDevice, b *RoleVsysWebuiDevice) bool { +func matchRoleVsysWebuiOperations(a *RoleVsysWebuiOperations, b *RoleVsysWebuiOperations) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.AuthenticationProfile, b.AuthenticationProfile) { + if !util.StringsMatch(a.DownloadCoreFiles, b.DownloadCoreFiles) { return false } - if !matchRoleVsysWebuiDeviceSetup(a.Setup, b.Setup) { + if !util.StringsMatch(a.DownloadPcapFiles, b.DownloadPcapFiles) { return false } - if !util.StringsMatch(a.Troubleshooting, b.Troubleshooting) { + if !util.StringsMatch(a.GenerateStatsDumpFile, b.GenerateStatsDumpFile) { return false } - if !util.StringsMatch(a.VmInfoSource, b.VmInfoSource) { + if !util.StringsMatch(a.GenerateTechSupportFile, b.GenerateTechSupportFile) { return false } - if !util.StringsMatch(a.DataRedistribution, b.DataRedistribution) { + if !util.StringsMatch(a.Reboot, b.Reboot) { return false } - if !matchRoleVsysWebuiDeviceLocalUserDatabase(a.LocalUserDatabase, b.LocalUserDatabase) { + return true +} +func matchRoleVsysWebuiPolicies(a *RoleVsysWebuiPolicies, b *RoleVsysWebuiPolicies) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + if !util.StringsMatch(a.ApplicationOverrideRulebase, b.ApplicationOverrideRulebase) { return false } - if !matchRoleVsysWebuiDeviceLogSettings(a.LogSettings, b.LogSettings) { + if !util.StringsMatch(a.AuthenticationRulebase, b.AuthenticationRulebase) { return false } - if !matchRoleVsysWebuiDeviceServerProfile(a.ServerProfile, b.ServerProfile) { + if !util.StringsMatch(a.DosRulebase, b.DosRulebase) { return false } - if !util.StringsMatch(a.Administrators, b.Administrators) { + if !util.StringsMatch(a.PbfRulebase, b.PbfRulebase) { return false } - if !util.StringsMatch(a.AuthenticationSequence, b.AuthenticationSequence) { + if !util.StringsMatch(a.TunnelInspectRulebase, b.TunnelInspectRulebase) { return false } - if !util.StringsMatch(a.BlockPages, b.BlockPages) { + if !util.StringsMatch(a.SecurityRulebase, b.SecurityRulebase) { return false } - if !matchRoleVsysWebuiDeviceCertificateManagement(a.CertificateManagement, b.CertificateManagement) { + if !util.StringsMatch(a.SslDecryptionRulebase, b.SslDecryptionRulebase) { return false } - if !util.StringsMatch(a.UserIdentification, b.UserIdentification) { + if !util.StringsMatch(a.NatRulebase, b.NatRulebase) { return false } - if !util.StringsMatch(a.DeviceQuarantine, b.DeviceQuarantine) { + if !util.StringsMatch(a.NetworkPacketBrokerRulebase, b.NetworkPacketBrokerRulebase) { return false } - if !matchRoleVsysWebuiDevicePolicyRecommendations(a.PolicyRecommendations, b.PolicyRecommendations) { + if !util.StringsMatch(a.QosRulebase, b.QosRulebase) { return false } - if !util.StringsMatch(a.DhcpSyslogServer, b.DhcpSyslogServer) { + if !util.StringsMatch(a.RuleHitCountReset, b.RuleHitCountReset) { + return false + } + if !util.StringsMatch(a.SdwanRulebase, b.SdwanRulebase) { return false } return true } -func matchRoleVsysWebuiMonitorAutomatedCorrelationEngine(a *RoleVsysWebuiMonitorAutomatedCorrelationEngine, b *RoleVsysWebuiMonitorAutomatedCorrelationEngine) bool { +func matchRoleVsysWebuiSave(a *RoleVsysWebuiSave, b *RoleVsysWebuiSave) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.CorrelatedEvents, b.CorrelatedEvents) { + if !util.StringsMatch(a.SaveForOtherAdmins, b.SaveForOtherAdmins) { return false } - if !util.StringsMatch(a.CorrelationObjects, b.CorrelationObjects) { + if !util.StringsMatch(a.ObjectLevelChanges, b.ObjectLevelChanges) { + return false + } + if !util.StringsMatch(a.PartialSave, b.PartialSave) { return false } return true } -func matchRoleVsysWebuiMonitorCustomReports(a *RoleVsysWebuiMonitorCustomReports, b *RoleVsysWebuiMonitorCustomReports) bool { +func matchRoleVsysWebuiCommit(a *RoleVsysWebuiCommit, b *RoleVsysWebuiCommit) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Auth, b.Auth) { + if !util.StringsMatch(a.CommitForOtherAdmins, b.CommitForOtherAdmins) { return false } - if !util.StringsMatch(a.DecryptionSummary, b.DecryptionSummary) { + if !util.StringsMatch(a.VirtualSystems, b.VirtualSystems) { return false } - if !util.StringsMatch(a.ThreatSummary, b.ThreatSummary) { + return true +} +func matchRoleVsysWebuiObjectsCustomObjects(a *RoleVsysWebuiObjectsCustomObjects, b *RoleVsysWebuiObjectsCustomObjects) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } - if !util.StringsMatch(a.WildfireLog, b.WildfireLog) { + if !util.StringsMatch(a.Spyware, b.Spyware) { return false } - if !util.StringsMatch(a.DecryptionLog, b.DecryptionLog) { + if !util.StringsMatch(a.UrlCategory, b.UrlCategory) { return false } - if !util.StringsMatch(a.GtpLog, b.GtpLog) { + if !util.StringsMatch(a.Vulnerability, b.Vulnerability) { return false } - if !util.StringsMatch(a.TrafficLog, b.TrafficLog) { + if !util.StringsMatch(a.DataPatterns, b.DataPatterns) { return false } - if !util.StringsMatch(a.TunnelSummary, b.TunnelSummary) { + return true +} +func matchRoleVsysWebuiObjectsGlobalProtect(a *RoleVsysWebuiObjectsGlobalProtect, b *RoleVsysWebuiObjectsGlobalProtect) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } - if !util.StringsMatch(a.DataFilteringLog, b.DataFilteringLog) { + if !util.StringsMatch(a.HipObjects, b.HipObjects) { return false } - if !util.StringsMatch(a.GtpSummary, b.GtpSummary) { + if !util.StringsMatch(a.HipProfiles, b.HipProfiles) { return false } - if !util.StringsMatch(a.SctpLog, b.SctpLog) { + return true +} +func matchRoleVsysWebuiObjectsDecryption(a *RoleVsysWebuiObjectsDecryption, b *RoleVsysWebuiObjectsDecryption) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } - if !util.StringsMatch(a.SctpSummary, b.SctpSummary) { + if !util.StringsMatch(a.DecryptionProfile, b.DecryptionProfile) { return false } - if !util.StringsMatch(a.UrlLog, b.UrlLog) { + return true +} +func matchRoleVsysWebuiObjectsSecurityProfiles(a *RoleVsysWebuiObjectsSecurityProfiles, b *RoleVsysWebuiObjectsSecurityProfiles) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } - if !util.StringsMatch(a.ApplicationStatistics, b.ApplicationStatistics) { + if !util.StringsMatch(a.DosProtection, b.DosProtection) { return false } - if !util.StringsMatch(a.Globalprotect, b.Globalprotect) { + if !util.StringsMatch(a.UrlFiltering, b.UrlFiltering) { return false } - if !util.StringsMatch(a.Hipmatch, b.Hipmatch) { + if !util.StringsMatch(a.AntiSpyware, b.AntiSpyware) { return false } - if !util.StringsMatch(a.Iptag, b.Iptag) { + if !util.StringsMatch(a.DataFiltering, b.DataFiltering) { return false } - if !util.StringsMatch(a.ThreatLog, b.ThreatLog) { + if !util.StringsMatch(a.GtpProtection, b.GtpProtection) { return false } - if !util.StringsMatch(a.TrafficSummary, b.TrafficSummary) { + if !util.StringsMatch(a.SctpProtection, b.SctpProtection) { return false } - if !util.StringsMatch(a.TunnelLog, b.TunnelLog) { + if !util.StringsMatch(a.VulnerabilityProtection, b.VulnerabilityProtection) { return false } - if !util.StringsMatch(a.UrlSummary, b.UrlSummary) { + if !util.StringsMatch(a.WildfireAnalysis, b.WildfireAnalysis) { return false } - if !util.StringsMatch(a.Userid, b.Userid) { + if !util.StringsMatch(a.Antivirus, b.Antivirus) { + return false + } + if !util.StringsMatch(a.FileBlocking, b.FileBlocking) { return false } return true } -func matchRoleVsysWebuiMonitorLogs(a *RoleVsysWebuiMonitorLogs, b *RoleVsysWebuiMonitorLogs) bool { +func matchRoleVsysWebuiObjectsSdwan(a *RoleVsysWebuiObjectsSdwan, b *RoleVsysWebuiObjectsSdwan) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Tunnel, b.Tunnel) { + if !util.StringsMatch(a.SdwanDistProfile, b.SdwanDistProfile) { return false } - if !util.StringsMatch(a.Wildfire, b.Wildfire) { + if !util.StringsMatch(a.SdwanErrorCorrectionProfile, b.SdwanErrorCorrectionProfile) { return false } - if !util.StringsMatch(a.Userid, b.Userid) { + if !util.StringsMatch(a.SdwanProfile, b.SdwanProfile) { return false } - if !util.StringsMatch(a.Authentication, b.Authentication) { + if !util.StringsMatch(a.SdwanSaasQualityProfile, b.SdwanSaasQualityProfile) { return false } - if !util.StringsMatch(a.DataFiltering, b.DataFiltering) { + return true +} +func matchRoleVsysWebuiObjects(a *RoleVsysWebuiObjects, b *RoleVsysWebuiObjects) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } - if !util.StringsMatch(a.Sctp, b.Sctp) { + if !util.StringsMatch(a.Applications, b.Applications) { return false } - if !util.StringsMatch(a.Threat, b.Threat) { + if !util.StringsMatch(a.Regions, b.Regions) { return false } - if !util.StringsMatch(a.Url, b.Url) { + if !matchRoleVsysWebuiObjectsSdwan(a.Sdwan, b.Sdwan) { return false } - if !util.StringsMatch(a.Traffic, b.Traffic) { + if !util.StringsMatch(a.SecurityProfileGroups, b.SecurityProfileGroups) { return false } - if !util.StringsMatch(a.Decryption, b.Decryption) { + if !util.StringsMatch(a.LogForwarding, b.LogForwarding) { return false } - if !util.StringsMatch(a.Globalprotect, b.Globalprotect) { + if !util.StringsMatch(a.PacketBrokerProfile, b.PacketBrokerProfile) { return false } - if !util.StringsMatch(a.Gtp, b.Gtp) { + if !util.StringsMatch(a.ApplicationFilters, b.ApplicationFilters) { return false } - if !util.StringsMatch(a.Hipmatch, b.Hipmatch) { + if !util.StringsMatch(a.Authentication, b.Authentication) { return false } - if !util.StringsMatch(a.Iptag, b.Iptag) { + if !matchRoleVsysWebuiObjectsCustomObjects(a.CustomObjects, b.CustomObjects) { return false } - return true -} -func matchRoleVsysWebuiMonitorPdfReports(a *RoleVsysWebuiMonitorPdfReports, b *RoleVsysWebuiMonitorPdfReports) bool { - if a == nil && b != nil || a != nil && b == nil { + if !util.StringsMatch(a.DynamicBlockLists, b.DynamicBlockLists) { return false - } else if a == nil && b == nil { - return true } - if !util.StringsMatch(a.SaasApplicationUsageReport, b.SaasApplicationUsageReport) { + if !matchRoleVsysWebuiObjectsGlobalProtect(a.GlobalProtect, b.GlobalProtect) { return false } - if !util.StringsMatch(a.UserActivityReport, b.UserActivityReport) { + if !util.StringsMatch(a.Tags, b.Tags) { return false } - if !util.StringsMatch(a.EmailScheduler, b.EmailScheduler) { + if !util.StringsMatch(a.AddressGroups, b.AddressGroups) { return false } - if !util.StringsMatch(a.ManagePdfSummary, b.ManagePdfSummary) { + if !util.StringsMatch(a.Addresses, b.Addresses) { return false } - if !util.StringsMatch(a.PdfSummaryReports, b.PdfSummaryReports) { + if !util.StringsMatch(a.ApplicationGroups, b.ApplicationGroups) { return false } - if !util.StringsMatch(a.ReportGroups, b.ReportGroups) { + if !util.StringsMatch(a.ServiceGroups, b.ServiceGroups) { return false } - return true -} -func matchRoleVsysWebuiMonitor(a *RoleVsysWebuiMonitor, b *RoleVsysWebuiMonitor) bool { - if a == nil && b != nil || a != nil && b == nil { + if !util.StringsMatch(a.Services, b.Services) { return false - } else if a == nil && b == nil { - return true } - if !util.StringsMatch(a.BlockIpList, b.BlockIpList) { + if !matchRoleVsysWebuiObjectsDecryption(a.Decryption, b.Decryption) { return false } - if !matchRoleVsysWebuiMonitorCustomReports(a.CustomReports, b.CustomReports) { + if !util.StringsMatch(a.Devices, b.Devices) { return false } - if !util.StringsMatch(a.ExternalLogs, b.ExternalLogs) { + if !util.StringsMatch(a.DynamicUserGroups, b.DynamicUserGroups) { return false } - if !matchRoleVsysWebuiMonitorLogs(a.Logs, b.Logs) { + if !util.StringsMatch(a.Schedules, b.Schedules) { return false } - if !matchRoleVsysWebuiMonitorPdfReports(a.PdfReports, b.PdfReports) { + if !matchRoleVsysWebuiObjectsSecurityProfiles(a.SecurityProfiles, b.SecurityProfiles) { return false } - if !util.StringsMatch(a.AppScope, b.AppScope) { + return true +} +func matchRoleVsysWebuiPrivacy(a *RoleVsysWebuiPrivacy, b *RoleVsysWebuiPrivacy) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } - if !matchRoleVsysWebuiMonitorAutomatedCorrelationEngine(a.AutomatedCorrelationEngine, b.AutomatedCorrelationEngine) { + if !util.StringsMatch(a.ShowUserNamesInLogsAndReports, b.ShowUserNamesInLogsAndReports) { return false } - if !util.StringsMatch(a.SessionBrowser, b.SessionBrowser) { + if !util.StringsMatch(a.ViewPcapFiles, b.ViewPcapFiles) { return false } - if !util.StringsMatch(a.ViewCustomReports, b.ViewCustomReports) { + if !util.StringsMatch(a.ShowFullIpAddresses, b.ShowFullIpAddresses) { return false } return true @@ -8646,10 +8646,7 @@ func matchRoleVsysWebui(a *RoleVsysWebui, b *RoleVsysWebui) bool { } else if a == nil && b == nil { return true } - if !matchRoleVsysWebuiPolicies(a.Policies, b.Policies) { - return false - } - if !util.StringsMatch(a.Validate, b.Validate) { + if !matchRoleVsysWebuiSave(a.Save, b.Save) { return false } if !util.StringsMatch(a.Acc, b.Acc) { @@ -8658,31 +8655,34 @@ func matchRoleVsysWebui(a *RoleVsysWebui, b *RoleVsysWebui) bool { if !util.StringsMatch(a.Dashboard, b.Dashboard) { return false } + if !matchRoleVsysWebuiDevice(a.Device, b.Device) { + return false + } if !matchRoleVsysWebuiMonitor(a.Monitor, b.Monitor) { return false } if !matchRoleVsysWebuiNetwork(a.Network, b.Network) { return false } - if !matchRoleVsysWebuiObjects(a.Objects, b.Objects) { + if !matchRoleVsysWebuiOperations(a.Operations, b.Operations) { return false } - if !matchRoleVsysWebuiOperations(a.Operations, b.Operations) { + if !matchRoleVsysWebuiPolicies(a.Policies, b.Policies) { return false } - if !matchRoleVsysWebuiPrivacy(a.Privacy, b.Privacy) { + if !util.StringsMatch(a.Tasks, b.Tasks) { return false } - if !matchRoleVsysWebuiSave(a.Save, b.Save) { + if !util.StringsMatch(a.Validate, b.Validate) { return false } if !matchRoleVsysWebuiCommit(a.Commit, b.Commit) { return false } - if !matchRoleVsysWebuiDevice(a.Device, b.Device) { + if !matchRoleVsysWebuiObjects(a.Objects, b.Objects) { return false } - if !util.StringsMatch(a.Tasks, b.Tasks) { + if !matchRoleVsysWebuiPrivacy(a.Privacy, b.Privacy) { return false } return true @@ -8693,31 +8693,31 @@ func matchRoleVsysXmlapi(a *RoleVsysXmlapi, b *RoleVsysXmlapi) bool { } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Commit, b.Commit) { + if !util.StringsMatch(a.Config, b.Config) { return false } - if !util.StringsMatch(a.Export, b.Export) { + if !util.StringsMatch(a.Import, b.Import) { return false } if !util.StringsMatch(a.Iot, b.Iot) { return false } - if !util.StringsMatch(a.Op, b.Op) { + if !util.StringsMatch(a.Log, b.Log) { return false } - if !util.StringsMatch(a.Report, b.Report) { + if !util.StringsMatch(a.Op, b.Op) { return false } - if !util.StringsMatch(a.Config, b.Config) { + if !util.StringsMatch(a.Commit, b.Commit) { return false } - if !util.StringsMatch(a.Import, b.Import) { + if !util.StringsMatch(a.Report, b.Report) { return false } - if !util.StringsMatch(a.Log, b.Log) { + if !util.StringsMatch(a.UserId, b.UserId) { return false } - if !util.StringsMatch(a.UserId, b.UserId) { + if !util.StringsMatch(a.Export, b.Export) { return false } return true diff --git a/device/dynamicupdates/config.go b/device/dynamicupdates/config.go index 2f0a8fb..e2736c8 100644 --- a/device/dynamicupdates/config.go +++ b/device/dynamicupdates/config.go @@ -549,6 +549,150 @@ func specifyConfig(o *Config) (any, error) { if _, ok := o.Misc["UpdateSchedule"]; ok { nestedUpdateSchedule.Misc = o.Misc["UpdateSchedule"] } + if o.UpdateSchedule.GlobalProtectClientlessVpn != nil { + nestedUpdateSchedule.GlobalProtectClientlessVpn = &UpdateScheduleGlobalProtectClientlessVpnXml{} + if _, ok := o.Misc["UpdateScheduleGlobalProtectClientlessVpn"]; ok { + nestedUpdateSchedule.GlobalProtectClientlessVpn.Misc = o.Misc["UpdateScheduleGlobalProtectClientlessVpn"] + } + if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring != nil { + nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring = &UpdateScheduleGlobalProtectClientlessVpnRecurringXml{} + if _, ok := o.Misc["UpdateScheduleGlobalProtectClientlessVpnRecurring"]; ok { + nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring.Misc = o.Misc["UpdateScheduleGlobalProtectClientlessVpnRecurring"] + } + if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Daily != nil { + nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring.Daily = &UpdateScheduleGlobalProtectClientlessVpnRecurringDailyXml{} + if _, ok := o.Misc["UpdateScheduleGlobalProtectClientlessVpnRecurringDaily"]; ok { + nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring.Daily.Misc = o.Misc["UpdateScheduleGlobalProtectClientlessVpnRecurringDaily"] + } + if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Daily.Action != nil { + nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring.Daily.Action = o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Daily.Action + } + if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Daily.At != nil { + nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring.Daily.At = o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Daily.At + } + } + if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Hourly != nil { + nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring.Hourly = &UpdateScheduleGlobalProtectClientlessVpnRecurringHourlyXml{} + if _, ok := o.Misc["UpdateScheduleGlobalProtectClientlessVpnRecurringHourly"]; ok { + nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring.Hourly.Misc = o.Misc["UpdateScheduleGlobalProtectClientlessVpnRecurringHourly"] + } + if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Hourly.Action != nil { + nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring.Hourly.Action = o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Hourly.Action + } + if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Hourly.At != nil { + nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring.Hourly.At = o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Hourly.At + } + } + if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.None != nil { + nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring.None = &UpdateScheduleGlobalProtectClientlessVpnRecurringNoneXml{} + if _, ok := o.Misc["UpdateScheduleGlobalProtectClientlessVpnRecurringNone"]; ok { + nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring.None.Misc = o.Misc["UpdateScheduleGlobalProtectClientlessVpnRecurringNone"] + } + } + if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Weekly != nil { + nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring.Weekly = &UpdateScheduleGlobalProtectClientlessVpnRecurringWeeklyXml{} + if _, ok := o.Misc["UpdateScheduleGlobalProtectClientlessVpnRecurringWeekly"]; ok { + nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring.Weekly.Misc = o.Misc["UpdateScheduleGlobalProtectClientlessVpnRecurringWeekly"] + } + if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Weekly.Action != nil { + nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring.Weekly.Action = o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Weekly.Action + } + if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Weekly.At != nil { + nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring.Weekly.At = o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Weekly.At + } + if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Weekly.DayOfWeek != nil { + nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring.Weekly.DayOfWeek = o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Weekly.DayOfWeek + } + } + } + } + if o.UpdateSchedule.GlobalProtectDatafile != nil { + nestedUpdateSchedule.GlobalProtectDatafile = &UpdateScheduleGlobalProtectDatafileXml{} + if _, ok := o.Misc["UpdateScheduleGlobalProtectDatafile"]; ok { + nestedUpdateSchedule.GlobalProtectDatafile.Misc = o.Misc["UpdateScheduleGlobalProtectDatafile"] + } + if o.UpdateSchedule.GlobalProtectDatafile.Recurring != nil { + nestedUpdateSchedule.GlobalProtectDatafile.Recurring = &UpdateScheduleGlobalProtectDatafileRecurringXml{} + if _, ok := o.Misc["UpdateScheduleGlobalProtectDatafileRecurring"]; ok { + nestedUpdateSchedule.GlobalProtectDatafile.Recurring.Misc = o.Misc["UpdateScheduleGlobalProtectDatafileRecurring"] + } + if o.UpdateSchedule.GlobalProtectDatafile.Recurring.Daily != nil { + nestedUpdateSchedule.GlobalProtectDatafile.Recurring.Daily = &UpdateScheduleGlobalProtectDatafileRecurringDailyXml{} + if _, ok := o.Misc["UpdateScheduleGlobalProtectDatafileRecurringDaily"]; ok { + nestedUpdateSchedule.GlobalProtectDatafile.Recurring.Daily.Misc = o.Misc["UpdateScheduleGlobalProtectDatafileRecurringDaily"] + } + if o.UpdateSchedule.GlobalProtectDatafile.Recurring.Daily.Action != nil { + nestedUpdateSchedule.GlobalProtectDatafile.Recurring.Daily.Action = o.UpdateSchedule.GlobalProtectDatafile.Recurring.Daily.Action + } + if o.UpdateSchedule.GlobalProtectDatafile.Recurring.Daily.At != nil { + nestedUpdateSchedule.GlobalProtectDatafile.Recurring.Daily.At = o.UpdateSchedule.GlobalProtectDatafile.Recurring.Daily.At + } + } + if o.UpdateSchedule.GlobalProtectDatafile.Recurring.Hourly != nil { + nestedUpdateSchedule.GlobalProtectDatafile.Recurring.Hourly = &UpdateScheduleGlobalProtectDatafileRecurringHourlyXml{} + if _, ok := o.Misc["UpdateScheduleGlobalProtectDatafileRecurringHourly"]; ok { + nestedUpdateSchedule.GlobalProtectDatafile.Recurring.Hourly.Misc = o.Misc["UpdateScheduleGlobalProtectDatafileRecurringHourly"] + } + if o.UpdateSchedule.GlobalProtectDatafile.Recurring.Hourly.Action != nil { + nestedUpdateSchedule.GlobalProtectDatafile.Recurring.Hourly.Action = o.UpdateSchedule.GlobalProtectDatafile.Recurring.Hourly.Action + } + if o.UpdateSchedule.GlobalProtectDatafile.Recurring.Hourly.At != nil { + nestedUpdateSchedule.GlobalProtectDatafile.Recurring.Hourly.At = o.UpdateSchedule.GlobalProtectDatafile.Recurring.Hourly.At + } + } + if o.UpdateSchedule.GlobalProtectDatafile.Recurring.None != nil { + nestedUpdateSchedule.GlobalProtectDatafile.Recurring.None = &UpdateScheduleGlobalProtectDatafileRecurringNoneXml{} + if _, ok := o.Misc["UpdateScheduleGlobalProtectDatafileRecurringNone"]; ok { + nestedUpdateSchedule.GlobalProtectDatafile.Recurring.None.Misc = o.Misc["UpdateScheduleGlobalProtectDatafileRecurringNone"] + } + } + if o.UpdateSchedule.GlobalProtectDatafile.Recurring.Weekly != nil { + nestedUpdateSchedule.GlobalProtectDatafile.Recurring.Weekly = &UpdateScheduleGlobalProtectDatafileRecurringWeeklyXml{} + if _, ok := o.Misc["UpdateScheduleGlobalProtectDatafileRecurringWeekly"]; ok { + nestedUpdateSchedule.GlobalProtectDatafile.Recurring.Weekly.Misc = o.Misc["UpdateScheduleGlobalProtectDatafileRecurringWeekly"] + } + if o.UpdateSchedule.GlobalProtectDatafile.Recurring.Weekly.Action != nil { + nestedUpdateSchedule.GlobalProtectDatafile.Recurring.Weekly.Action = o.UpdateSchedule.GlobalProtectDatafile.Recurring.Weekly.Action + } + if o.UpdateSchedule.GlobalProtectDatafile.Recurring.Weekly.At != nil { + nestedUpdateSchedule.GlobalProtectDatafile.Recurring.Weekly.At = o.UpdateSchedule.GlobalProtectDatafile.Recurring.Weekly.At + } + if o.UpdateSchedule.GlobalProtectDatafile.Recurring.Weekly.DayOfWeek != nil { + nestedUpdateSchedule.GlobalProtectDatafile.Recurring.Weekly.DayOfWeek = o.UpdateSchedule.GlobalProtectDatafile.Recurring.Weekly.DayOfWeek + } + } + } + } + if o.UpdateSchedule.StatisticsService != nil { + nestedUpdateSchedule.StatisticsService = &UpdateScheduleStatisticsServiceXml{} + if _, ok := o.Misc["UpdateScheduleStatisticsService"]; ok { + nestedUpdateSchedule.StatisticsService.Misc = o.Misc["UpdateScheduleStatisticsService"] + } + if o.UpdateSchedule.StatisticsService.PassiveDnsMonitoring != nil { + nestedUpdateSchedule.StatisticsService.PassiveDnsMonitoring = util.YesNo(o.UpdateSchedule.StatisticsService.PassiveDnsMonitoring, nil) + } + if o.UpdateSchedule.StatisticsService.ThreatPreventionInformation != nil { + nestedUpdateSchedule.StatisticsService.ThreatPreventionInformation = util.YesNo(o.UpdateSchedule.StatisticsService.ThreatPreventionInformation, nil) + } + if o.UpdateSchedule.StatisticsService.ThreatPreventionPcap != nil { + nestedUpdateSchedule.StatisticsService.ThreatPreventionPcap = util.YesNo(o.UpdateSchedule.StatisticsService.ThreatPreventionPcap, nil) + } + if o.UpdateSchedule.StatisticsService.ThreatPreventionReports != nil { + nestedUpdateSchedule.StatisticsService.ThreatPreventionReports = util.YesNo(o.UpdateSchedule.StatisticsService.ThreatPreventionReports, nil) + } + if o.UpdateSchedule.StatisticsService.UrlReports != nil { + nestedUpdateSchedule.StatisticsService.UrlReports = util.YesNo(o.UpdateSchedule.StatisticsService.UrlReports, nil) + } + if o.UpdateSchedule.StatisticsService.ApplicationReports != nil { + nestedUpdateSchedule.StatisticsService.ApplicationReports = util.YesNo(o.UpdateSchedule.StatisticsService.ApplicationReports, nil) + } + if o.UpdateSchedule.StatisticsService.FileIdentificationReports != nil { + nestedUpdateSchedule.StatisticsService.FileIdentificationReports = util.YesNo(o.UpdateSchedule.StatisticsService.FileIdentificationReports, nil) + } + if o.UpdateSchedule.StatisticsService.HealthPerformanceReports != nil { + nestedUpdateSchedule.StatisticsService.HealthPerformanceReports = util.YesNo(o.UpdateSchedule.StatisticsService.HealthPerformanceReports, nil) + } + } if o.UpdateSchedule.Threats != nil { nestedUpdateSchedule.Threats = &UpdateScheduleThreatsXml{} if _, ok := o.Misc["UpdateScheduleThreats"]; ok { @@ -559,29 +703,14 @@ func specifyConfig(o *Config) (any, error) { if _, ok := o.Misc["UpdateScheduleThreatsRecurring"]; ok { nestedUpdateSchedule.Threats.Recurring.Misc = o.Misc["UpdateScheduleThreatsRecurring"] } - if o.UpdateSchedule.Threats.Recurring.Threshold != nil { - nestedUpdateSchedule.Threats.Recurring.Threshold = o.UpdateSchedule.Threats.Recurring.Threshold - } if o.UpdateSchedule.Threats.Recurring.NewAppThreshold != nil { nestedUpdateSchedule.Threats.Recurring.NewAppThreshold = o.UpdateSchedule.Threats.Recurring.NewAppThreshold } if o.UpdateSchedule.Threats.Recurring.SyncToPeer != nil { nestedUpdateSchedule.Threats.Recurring.SyncToPeer = util.YesNo(o.UpdateSchedule.Threats.Recurring.SyncToPeer, nil) } - if o.UpdateSchedule.Threats.Recurring.Daily != nil { - nestedUpdateSchedule.Threats.Recurring.Daily = &UpdateScheduleThreatsRecurringDailyXml{} - if _, ok := o.Misc["UpdateScheduleThreatsRecurringDaily"]; ok { - nestedUpdateSchedule.Threats.Recurring.Daily.Misc = o.Misc["UpdateScheduleThreatsRecurringDaily"] - } - if o.UpdateSchedule.Threats.Recurring.Daily.At != nil { - nestedUpdateSchedule.Threats.Recurring.Daily.At = o.UpdateSchedule.Threats.Recurring.Daily.At - } - if o.UpdateSchedule.Threats.Recurring.Daily.DisableNewContent != nil { - nestedUpdateSchedule.Threats.Recurring.Daily.DisableNewContent = util.YesNo(o.UpdateSchedule.Threats.Recurring.Daily.DisableNewContent, nil) - } - if o.UpdateSchedule.Threats.Recurring.Daily.Action != nil { - nestedUpdateSchedule.Threats.Recurring.Daily.Action = o.UpdateSchedule.Threats.Recurring.Daily.Action - } + if o.UpdateSchedule.Threats.Recurring.Threshold != nil { + nestedUpdateSchedule.Threats.Recurring.Threshold = o.UpdateSchedule.Threats.Recurring.Threshold } if o.UpdateSchedule.Threats.Recurring.Every30Mins != nil { nestedUpdateSchedule.Threats.Recurring.Every30Mins = &UpdateScheduleThreatsRecurringEvery30MinsXml{} @@ -603,15 +732,15 @@ func specifyConfig(o *Config) (any, error) { if _, ok := o.Misc["UpdateScheduleThreatsRecurringHourly"]; ok { nestedUpdateSchedule.Threats.Recurring.Hourly.Misc = o.Misc["UpdateScheduleThreatsRecurringHourly"] } + if o.UpdateSchedule.Threats.Recurring.Hourly.Action != nil { + nestedUpdateSchedule.Threats.Recurring.Hourly.Action = o.UpdateSchedule.Threats.Recurring.Hourly.Action + } if o.UpdateSchedule.Threats.Recurring.Hourly.At != nil { nestedUpdateSchedule.Threats.Recurring.Hourly.At = o.UpdateSchedule.Threats.Recurring.Hourly.At } if o.UpdateSchedule.Threats.Recurring.Hourly.DisableNewContent != nil { nestedUpdateSchedule.Threats.Recurring.Hourly.DisableNewContent = util.YesNo(o.UpdateSchedule.Threats.Recurring.Hourly.DisableNewContent, nil) } - if o.UpdateSchedule.Threats.Recurring.Hourly.Action != nil { - nestedUpdateSchedule.Threats.Recurring.Hourly.Action = o.UpdateSchedule.Threats.Recurring.Hourly.Action - } } if o.UpdateSchedule.Threats.Recurring.None != nil { nestedUpdateSchedule.Threats.Recurring.None = &UpdateScheduleThreatsRecurringNoneXml{} @@ -624,9 +753,6 @@ func specifyConfig(o *Config) (any, error) { if _, ok := o.Misc["UpdateScheduleThreatsRecurringWeekly"]; ok { nestedUpdateSchedule.Threats.Recurring.Weekly.Misc = o.Misc["UpdateScheduleThreatsRecurringWeekly"] } - if o.UpdateSchedule.Threats.Recurring.Weekly.Action != nil { - nestedUpdateSchedule.Threats.Recurring.Weekly.Action = o.UpdateSchedule.Threats.Recurring.Weekly.Action - } if o.UpdateSchedule.Threats.Recurring.Weekly.At != nil { nestedUpdateSchedule.Threats.Recurring.Weekly.At = o.UpdateSchedule.Threats.Recurring.Weekly.At } @@ -636,6 +762,24 @@ func specifyConfig(o *Config) (any, error) { if o.UpdateSchedule.Threats.Recurring.Weekly.DisableNewContent != nil { nestedUpdateSchedule.Threats.Recurring.Weekly.DisableNewContent = util.YesNo(o.UpdateSchedule.Threats.Recurring.Weekly.DisableNewContent, nil) } + if o.UpdateSchedule.Threats.Recurring.Weekly.Action != nil { + nestedUpdateSchedule.Threats.Recurring.Weekly.Action = o.UpdateSchedule.Threats.Recurring.Weekly.Action + } + } + if o.UpdateSchedule.Threats.Recurring.Daily != nil { + nestedUpdateSchedule.Threats.Recurring.Daily = &UpdateScheduleThreatsRecurringDailyXml{} + if _, ok := o.Misc["UpdateScheduleThreatsRecurringDaily"]; ok { + nestedUpdateSchedule.Threats.Recurring.Daily.Misc = o.Misc["UpdateScheduleThreatsRecurringDaily"] + } + if o.UpdateSchedule.Threats.Recurring.Daily.At != nil { + nestedUpdateSchedule.Threats.Recurring.Daily.At = o.UpdateSchedule.Threats.Recurring.Daily.At + } + if o.UpdateSchedule.Threats.Recurring.Daily.DisableNewContent != nil { + nestedUpdateSchedule.Threats.Recurring.Daily.DisableNewContent = util.YesNo(o.UpdateSchedule.Threats.Recurring.Daily.DisableNewContent, nil) + } + if o.UpdateSchedule.Threats.Recurring.Daily.Action != nil { + nestedUpdateSchedule.Threats.Recurring.Daily.Action = o.UpdateSchedule.Threats.Recurring.Daily.Action + } } } } @@ -652,6 +796,24 @@ func specifyConfig(o *Config) (any, error) { if o.UpdateSchedule.WfPrivate.Recurring.SyncToPeer != nil { nestedUpdateSchedule.WfPrivate.Recurring.SyncToPeer = util.YesNo(o.UpdateSchedule.WfPrivate.Recurring.SyncToPeer, nil) } + if o.UpdateSchedule.WfPrivate.Recurring.None != nil { + nestedUpdateSchedule.WfPrivate.Recurring.None = &UpdateScheduleWfPrivateRecurringNoneXml{} + if _, ok := o.Misc["UpdateScheduleWfPrivateRecurringNone"]; ok { + nestedUpdateSchedule.WfPrivate.Recurring.None.Misc = o.Misc["UpdateScheduleWfPrivateRecurringNone"] + } + } + if o.UpdateSchedule.WfPrivate.Recurring.Every15Mins != nil { + nestedUpdateSchedule.WfPrivate.Recurring.Every15Mins = &UpdateScheduleWfPrivateRecurringEvery15MinsXml{} + if _, ok := o.Misc["UpdateScheduleWfPrivateRecurringEvery15Mins"]; ok { + nestedUpdateSchedule.WfPrivate.Recurring.Every15Mins.Misc = o.Misc["UpdateScheduleWfPrivateRecurringEvery15Mins"] + } + if o.UpdateSchedule.WfPrivate.Recurring.Every15Mins.Action != nil { + nestedUpdateSchedule.WfPrivate.Recurring.Every15Mins.Action = o.UpdateSchedule.WfPrivate.Recurring.Every15Mins.Action + } + if o.UpdateSchedule.WfPrivate.Recurring.Every15Mins.At != nil { + nestedUpdateSchedule.WfPrivate.Recurring.Every15Mins.At = o.UpdateSchedule.WfPrivate.Recurring.Every15Mins.At + } + } if o.UpdateSchedule.WfPrivate.Recurring.Every30Mins != nil { nestedUpdateSchedule.WfPrivate.Recurring.Every30Mins = &UpdateScheduleWfPrivateRecurringEvery30MinsXml{} if _, ok := o.Misc["UpdateScheduleWfPrivateRecurringEvery30Mins"]; ok { @@ -688,24 +850,6 @@ func specifyConfig(o *Config) (any, error) { nestedUpdateSchedule.WfPrivate.Recurring.EveryHour.Action = o.UpdateSchedule.WfPrivate.Recurring.EveryHour.Action } } - if o.UpdateSchedule.WfPrivate.Recurring.None != nil { - nestedUpdateSchedule.WfPrivate.Recurring.None = &UpdateScheduleWfPrivateRecurringNoneXml{} - if _, ok := o.Misc["UpdateScheduleWfPrivateRecurringNone"]; ok { - nestedUpdateSchedule.WfPrivate.Recurring.None.Misc = o.Misc["UpdateScheduleWfPrivateRecurringNone"] - } - } - if o.UpdateSchedule.WfPrivate.Recurring.Every15Mins != nil { - nestedUpdateSchedule.WfPrivate.Recurring.Every15Mins = &UpdateScheduleWfPrivateRecurringEvery15MinsXml{} - if _, ok := o.Misc["UpdateScheduleWfPrivateRecurringEvery15Mins"]; ok { - nestedUpdateSchedule.WfPrivate.Recurring.Every15Mins.Misc = o.Misc["UpdateScheduleWfPrivateRecurringEvery15Mins"] - } - if o.UpdateSchedule.WfPrivate.Recurring.Every15Mins.Action != nil { - nestedUpdateSchedule.WfPrivate.Recurring.Every15Mins.Action = o.UpdateSchedule.WfPrivate.Recurring.Every15Mins.Action - } - if o.UpdateSchedule.WfPrivate.Recurring.Every15Mins.At != nil { - nestedUpdateSchedule.WfPrivate.Recurring.Every15Mins.At = o.UpdateSchedule.WfPrivate.Recurring.Every15Mins.At - } - } } } if o.UpdateSchedule.Wildfire != nil { @@ -765,15 +909,15 @@ func specifyConfig(o *Config) (any, error) { if _, ok := o.Misc["UpdateScheduleWildfireRecurringEveryHour"]; ok { nestedUpdateSchedule.Wildfire.Recurring.EveryHour.Misc = o.Misc["UpdateScheduleWildfireRecurringEveryHour"] } - if o.UpdateSchedule.Wildfire.Recurring.EveryHour.Action != nil { - nestedUpdateSchedule.Wildfire.Recurring.EveryHour.Action = o.UpdateSchedule.Wildfire.Recurring.EveryHour.Action - } if o.UpdateSchedule.Wildfire.Recurring.EveryHour.At != nil { nestedUpdateSchedule.Wildfire.Recurring.EveryHour.At = o.UpdateSchedule.Wildfire.Recurring.EveryHour.At } if o.UpdateSchedule.Wildfire.Recurring.EveryHour.SyncToPeer != nil { nestedUpdateSchedule.Wildfire.Recurring.EveryHour.SyncToPeer = util.YesNo(o.UpdateSchedule.Wildfire.Recurring.EveryHour.SyncToPeer, nil) } + if o.UpdateSchedule.Wildfire.Recurring.EveryHour.Action != nil { + nestedUpdateSchedule.Wildfire.Recurring.EveryHour.Action = o.UpdateSchedule.Wildfire.Recurring.EveryHour.Action + } } if o.UpdateSchedule.Wildfire.Recurring.EveryMin != nil { nestedUpdateSchedule.Wildfire.Recurring.EveryMin = &UpdateScheduleWildfireRecurringEveryMinXml{} @@ -868,6 +1012,21 @@ func specifyConfig(o *Config) (any, error) { if o.UpdateSchedule.AppProfile.Recurring.Threshold != nil { nestedUpdateSchedule.AppProfile.Recurring.Threshold = o.UpdateSchedule.AppProfile.Recurring.Threshold } + if o.UpdateSchedule.AppProfile.Recurring.Weekly != nil { + nestedUpdateSchedule.AppProfile.Recurring.Weekly = &UpdateScheduleAppProfileRecurringWeeklyXml{} + if _, ok := o.Misc["UpdateScheduleAppProfileRecurringWeekly"]; ok { + nestedUpdateSchedule.AppProfile.Recurring.Weekly.Misc = o.Misc["UpdateScheduleAppProfileRecurringWeekly"] + } + if o.UpdateSchedule.AppProfile.Recurring.Weekly.DayOfWeek != nil { + nestedUpdateSchedule.AppProfile.Recurring.Weekly.DayOfWeek = o.UpdateSchedule.AppProfile.Recurring.Weekly.DayOfWeek + } + if o.UpdateSchedule.AppProfile.Recurring.Weekly.Action != nil { + nestedUpdateSchedule.AppProfile.Recurring.Weekly.Action = o.UpdateSchedule.AppProfile.Recurring.Weekly.Action + } + if o.UpdateSchedule.AppProfile.Recurring.Weekly.At != nil { + nestedUpdateSchedule.AppProfile.Recurring.Weekly.At = o.UpdateSchedule.AppProfile.Recurring.Weekly.At + } + } if o.UpdateSchedule.AppProfile.Recurring.Daily != nil { nestedUpdateSchedule.AppProfile.Recurring.Daily = &UpdateScheduleAppProfileRecurringDailyXml{} if _, ok := o.Misc["UpdateScheduleAppProfileRecurringDaily"]; ok { @@ -886,165 +1045,6 @@ func specifyConfig(o *Config) (any, error) { nestedUpdateSchedule.AppProfile.Recurring.None.Misc = o.Misc["UpdateScheduleAppProfileRecurringNone"] } } - if o.UpdateSchedule.AppProfile.Recurring.Weekly != nil { - nestedUpdateSchedule.AppProfile.Recurring.Weekly = &UpdateScheduleAppProfileRecurringWeeklyXml{} - if _, ok := o.Misc["UpdateScheduleAppProfileRecurringWeekly"]; ok { - nestedUpdateSchedule.AppProfile.Recurring.Weekly.Misc = o.Misc["UpdateScheduleAppProfileRecurringWeekly"] - } - if o.UpdateSchedule.AppProfile.Recurring.Weekly.DayOfWeek != nil { - nestedUpdateSchedule.AppProfile.Recurring.Weekly.DayOfWeek = o.UpdateSchedule.AppProfile.Recurring.Weekly.DayOfWeek - } - if o.UpdateSchedule.AppProfile.Recurring.Weekly.Action != nil { - nestedUpdateSchedule.AppProfile.Recurring.Weekly.Action = o.UpdateSchedule.AppProfile.Recurring.Weekly.Action - } - if o.UpdateSchedule.AppProfile.Recurring.Weekly.At != nil { - nestedUpdateSchedule.AppProfile.Recurring.Weekly.At = o.UpdateSchedule.AppProfile.Recurring.Weekly.At - } - } - } - } - if o.UpdateSchedule.GlobalProtectClientlessVpn != nil { - nestedUpdateSchedule.GlobalProtectClientlessVpn = &UpdateScheduleGlobalProtectClientlessVpnXml{} - if _, ok := o.Misc["UpdateScheduleGlobalProtectClientlessVpn"]; ok { - nestedUpdateSchedule.GlobalProtectClientlessVpn.Misc = o.Misc["UpdateScheduleGlobalProtectClientlessVpn"] - } - if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring != nil { - nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring = &UpdateScheduleGlobalProtectClientlessVpnRecurringXml{} - if _, ok := o.Misc["UpdateScheduleGlobalProtectClientlessVpnRecurring"]; ok { - nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring.Misc = o.Misc["UpdateScheduleGlobalProtectClientlessVpnRecurring"] - } - if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Weekly != nil { - nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring.Weekly = &UpdateScheduleGlobalProtectClientlessVpnRecurringWeeklyXml{} - if _, ok := o.Misc["UpdateScheduleGlobalProtectClientlessVpnRecurringWeekly"]; ok { - nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring.Weekly.Misc = o.Misc["UpdateScheduleGlobalProtectClientlessVpnRecurringWeekly"] - } - if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Weekly.At != nil { - nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring.Weekly.At = o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Weekly.At - } - if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Weekly.DayOfWeek != nil { - nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring.Weekly.DayOfWeek = o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Weekly.DayOfWeek - } - if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Weekly.Action != nil { - nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring.Weekly.Action = o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Weekly.Action - } - } - if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Daily != nil { - nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring.Daily = &UpdateScheduleGlobalProtectClientlessVpnRecurringDailyXml{} - if _, ok := o.Misc["UpdateScheduleGlobalProtectClientlessVpnRecurringDaily"]; ok { - nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring.Daily.Misc = o.Misc["UpdateScheduleGlobalProtectClientlessVpnRecurringDaily"] - } - if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Daily.Action != nil { - nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring.Daily.Action = o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Daily.Action - } - if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Daily.At != nil { - nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring.Daily.At = o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Daily.At - } - } - if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Hourly != nil { - nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring.Hourly = &UpdateScheduleGlobalProtectClientlessVpnRecurringHourlyXml{} - if _, ok := o.Misc["UpdateScheduleGlobalProtectClientlessVpnRecurringHourly"]; ok { - nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring.Hourly.Misc = o.Misc["UpdateScheduleGlobalProtectClientlessVpnRecurringHourly"] - } - if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Hourly.Action != nil { - nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring.Hourly.Action = o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Hourly.Action - } - if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Hourly.At != nil { - nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring.Hourly.At = o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Hourly.At - } - } - if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.None != nil { - nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring.None = &UpdateScheduleGlobalProtectClientlessVpnRecurringNoneXml{} - if _, ok := o.Misc["UpdateScheduleGlobalProtectClientlessVpnRecurringNone"]; ok { - nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring.None.Misc = o.Misc["UpdateScheduleGlobalProtectClientlessVpnRecurringNone"] - } - } - } - } - if o.UpdateSchedule.GlobalProtectDatafile != nil { - nestedUpdateSchedule.GlobalProtectDatafile = &UpdateScheduleGlobalProtectDatafileXml{} - if _, ok := o.Misc["UpdateScheduleGlobalProtectDatafile"]; ok { - nestedUpdateSchedule.GlobalProtectDatafile.Misc = o.Misc["UpdateScheduleGlobalProtectDatafile"] - } - if o.UpdateSchedule.GlobalProtectDatafile.Recurring != nil { - nestedUpdateSchedule.GlobalProtectDatafile.Recurring = &UpdateScheduleGlobalProtectDatafileRecurringXml{} - if _, ok := o.Misc["UpdateScheduleGlobalProtectDatafileRecurring"]; ok { - nestedUpdateSchedule.GlobalProtectDatafile.Recurring.Misc = o.Misc["UpdateScheduleGlobalProtectDatafileRecurring"] - } - if o.UpdateSchedule.GlobalProtectDatafile.Recurring.Daily != nil { - nestedUpdateSchedule.GlobalProtectDatafile.Recurring.Daily = &UpdateScheduleGlobalProtectDatafileRecurringDailyXml{} - if _, ok := o.Misc["UpdateScheduleGlobalProtectDatafileRecurringDaily"]; ok { - nestedUpdateSchedule.GlobalProtectDatafile.Recurring.Daily.Misc = o.Misc["UpdateScheduleGlobalProtectDatafileRecurringDaily"] - } - if o.UpdateSchedule.GlobalProtectDatafile.Recurring.Daily.Action != nil { - nestedUpdateSchedule.GlobalProtectDatafile.Recurring.Daily.Action = o.UpdateSchedule.GlobalProtectDatafile.Recurring.Daily.Action - } - if o.UpdateSchedule.GlobalProtectDatafile.Recurring.Daily.At != nil { - nestedUpdateSchedule.GlobalProtectDatafile.Recurring.Daily.At = o.UpdateSchedule.GlobalProtectDatafile.Recurring.Daily.At - } - } - if o.UpdateSchedule.GlobalProtectDatafile.Recurring.Hourly != nil { - nestedUpdateSchedule.GlobalProtectDatafile.Recurring.Hourly = &UpdateScheduleGlobalProtectDatafileRecurringHourlyXml{} - if _, ok := o.Misc["UpdateScheduleGlobalProtectDatafileRecurringHourly"]; ok { - nestedUpdateSchedule.GlobalProtectDatafile.Recurring.Hourly.Misc = o.Misc["UpdateScheduleGlobalProtectDatafileRecurringHourly"] - } - if o.UpdateSchedule.GlobalProtectDatafile.Recurring.Hourly.Action != nil { - nestedUpdateSchedule.GlobalProtectDatafile.Recurring.Hourly.Action = o.UpdateSchedule.GlobalProtectDatafile.Recurring.Hourly.Action - } - if o.UpdateSchedule.GlobalProtectDatafile.Recurring.Hourly.At != nil { - nestedUpdateSchedule.GlobalProtectDatafile.Recurring.Hourly.At = o.UpdateSchedule.GlobalProtectDatafile.Recurring.Hourly.At - } - } - if o.UpdateSchedule.GlobalProtectDatafile.Recurring.None != nil { - nestedUpdateSchedule.GlobalProtectDatafile.Recurring.None = &UpdateScheduleGlobalProtectDatafileRecurringNoneXml{} - if _, ok := o.Misc["UpdateScheduleGlobalProtectDatafileRecurringNone"]; ok { - nestedUpdateSchedule.GlobalProtectDatafile.Recurring.None.Misc = o.Misc["UpdateScheduleGlobalProtectDatafileRecurringNone"] - } - } - if o.UpdateSchedule.GlobalProtectDatafile.Recurring.Weekly != nil { - nestedUpdateSchedule.GlobalProtectDatafile.Recurring.Weekly = &UpdateScheduleGlobalProtectDatafileRecurringWeeklyXml{} - if _, ok := o.Misc["UpdateScheduleGlobalProtectDatafileRecurringWeekly"]; ok { - nestedUpdateSchedule.GlobalProtectDatafile.Recurring.Weekly.Misc = o.Misc["UpdateScheduleGlobalProtectDatafileRecurringWeekly"] - } - if o.UpdateSchedule.GlobalProtectDatafile.Recurring.Weekly.Action != nil { - nestedUpdateSchedule.GlobalProtectDatafile.Recurring.Weekly.Action = o.UpdateSchedule.GlobalProtectDatafile.Recurring.Weekly.Action - } - if o.UpdateSchedule.GlobalProtectDatafile.Recurring.Weekly.At != nil { - nestedUpdateSchedule.GlobalProtectDatafile.Recurring.Weekly.At = o.UpdateSchedule.GlobalProtectDatafile.Recurring.Weekly.At - } - if o.UpdateSchedule.GlobalProtectDatafile.Recurring.Weekly.DayOfWeek != nil { - nestedUpdateSchedule.GlobalProtectDatafile.Recurring.Weekly.DayOfWeek = o.UpdateSchedule.GlobalProtectDatafile.Recurring.Weekly.DayOfWeek - } - } - } - } - if o.UpdateSchedule.StatisticsService != nil { - nestedUpdateSchedule.StatisticsService = &UpdateScheduleStatisticsServiceXml{} - if _, ok := o.Misc["UpdateScheduleStatisticsService"]; ok { - nestedUpdateSchedule.StatisticsService.Misc = o.Misc["UpdateScheduleStatisticsService"] - } - if o.UpdateSchedule.StatisticsService.ThreatPreventionPcap != nil { - nestedUpdateSchedule.StatisticsService.ThreatPreventionPcap = util.YesNo(o.UpdateSchedule.StatisticsService.ThreatPreventionPcap, nil) - } - if o.UpdateSchedule.StatisticsService.ThreatPreventionReports != nil { - nestedUpdateSchedule.StatisticsService.ThreatPreventionReports = util.YesNo(o.UpdateSchedule.StatisticsService.ThreatPreventionReports, nil) - } - if o.UpdateSchedule.StatisticsService.UrlReports != nil { - nestedUpdateSchedule.StatisticsService.UrlReports = util.YesNo(o.UpdateSchedule.StatisticsService.UrlReports, nil) - } - if o.UpdateSchedule.StatisticsService.ApplicationReports != nil { - nestedUpdateSchedule.StatisticsService.ApplicationReports = util.YesNo(o.UpdateSchedule.StatisticsService.ApplicationReports, nil) - } - if o.UpdateSchedule.StatisticsService.FileIdentificationReports != nil { - nestedUpdateSchedule.StatisticsService.FileIdentificationReports = util.YesNo(o.UpdateSchedule.StatisticsService.FileIdentificationReports, nil) - } - if o.UpdateSchedule.StatisticsService.HealthPerformanceReports != nil { - nestedUpdateSchedule.StatisticsService.HealthPerformanceReports = util.YesNo(o.UpdateSchedule.StatisticsService.HealthPerformanceReports, nil) - } - if o.UpdateSchedule.StatisticsService.PassiveDnsMonitoring != nil { - nestedUpdateSchedule.StatisticsService.PassiveDnsMonitoring = util.YesNo(o.UpdateSchedule.StatisticsService.PassiveDnsMonitoring, nil) - } - if o.UpdateSchedule.StatisticsService.ThreatPreventionInformation != nil { - nestedUpdateSchedule.StatisticsService.ThreatPreventionInformation = util.YesNo(o.UpdateSchedule.StatisticsService.ThreatPreventionInformation, nil) } } } @@ -1066,258 +1066,6 @@ func (c *configXmlContainer) Normalize() ([]*Config, error) { if o.UpdateSchedule.Misc != nil { config.Misc["UpdateSchedule"] = o.UpdateSchedule.Misc } - if o.UpdateSchedule.Wildfire != nil { - nestedUpdateSchedule.Wildfire = &UpdateScheduleWildfire{} - if o.UpdateSchedule.Wildfire.Misc != nil { - config.Misc["UpdateScheduleWildfire"] = o.UpdateSchedule.Wildfire.Misc - } - if o.UpdateSchedule.Wildfire.Recurring != nil { - nestedUpdateSchedule.Wildfire.Recurring = &UpdateScheduleWildfireRecurring{} - if o.UpdateSchedule.Wildfire.Recurring.Misc != nil { - config.Misc["UpdateScheduleWildfireRecurring"] = o.UpdateSchedule.Wildfire.Recurring.Misc - } - if o.UpdateSchedule.Wildfire.Recurring.EveryMin != nil { - nestedUpdateSchedule.Wildfire.Recurring.EveryMin = &UpdateScheduleWildfireRecurringEveryMin{} - if o.UpdateSchedule.Wildfire.Recurring.EveryMin.Misc != nil { - config.Misc["UpdateScheduleWildfireRecurringEveryMin"] = o.UpdateSchedule.Wildfire.Recurring.EveryMin.Misc - } - if o.UpdateSchedule.Wildfire.Recurring.EveryMin.Action != nil { - nestedUpdateSchedule.Wildfire.Recurring.EveryMin.Action = o.UpdateSchedule.Wildfire.Recurring.EveryMin.Action - } - if o.UpdateSchedule.Wildfire.Recurring.EveryMin.SyncToPeer != nil { - nestedUpdateSchedule.Wildfire.Recurring.EveryMin.SyncToPeer = util.AsBool(o.UpdateSchedule.Wildfire.Recurring.EveryMin.SyncToPeer, nil) - } - } - if o.UpdateSchedule.Wildfire.Recurring.None != nil { - nestedUpdateSchedule.Wildfire.Recurring.None = &UpdateScheduleWildfireRecurringNone{} - if o.UpdateSchedule.Wildfire.Recurring.None.Misc != nil { - config.Misc["UpdateScheduleWildfireRecurringNone"] = o.UpdateSchedule.Wildfire.Recurring.None.Misc - } - } - if o.UpdateSchedule.Wildfire.Recurring.RealTime != nil { - nestedUpdateSchedule.Wildfire.Recurring.RealTime = &UpdateScheduleWildfireRecurringRealTime{} - if o.UpdateSchedule.Wildfire.Recurring.RealTime.Misc != nil { - config.Misc["UpdateScheduleWildfireRecurringRealTime"] = o.UpdateSchedule.Wildfire.Recurring.RealTime.Misc - } - } - if o.UpdateSchedule.Wildfire.Recurring.Every15Mins != nil { - nestedUpdateSchedule.Wildfire.Recurring.Every15Mins = &UpdateScheduleWildfireRecurringEvery15Mins{} - if o.UpdateSchedule.Wildfire.Recurring.Every15Mins.Misc != nil { - config.Misc["UpdateScheduleWildfireRecurringEvery15Mins"] = o.UpdateSchedule.Wildfire.Recurring.Every15Mins.Misc - } - if o.UpdateSchedule.Wildfire.Recurring.Every15Mins.Action != nil { - nestedUpdateSchedule.Wildfire.Recurring.Every15Mins.Action = o.UpdateSchedule.Wildfire.Recurring.Every15Mins.Action - } - if o.UpdateSchedule.Wildfire.Recurring.Every15Mins.At != nil { - nestedUpdateSchedule.Wildfire.Recurring.Every15Mins.At = o.UpdateSchedule.Wildfire.Recurring.Every15Mins.At - } - if o.UpdateSchedule.Wildfire.Recurring.Every15Mins.SyncToPeer != nil { - nestedUpdateSchedule.Wildfire.Recurring.Every15Mins.SyncToPeer = util.AsBool(o.UpdateSchedule.Wildfire.Recurring.Every15Mins.SyncToPeer, nil) - } - } - if o.UpdateSchedule.Wildfire.Recurring.Every30Mins != nil { - nestedUpdateSchedule.Wildfire.Recurring.Every30Mins = &UpdateScheduleWildfireRecurringEvery30Mins{} - if o.UpdateSchedule.Wildfire.Recurring.Every30Mins.Misc != nil { - config.Misc["UpdateScheduleWildfireRecurringEvery30Mins"] = o.UpdateSchedule.Wildfire.Recurring.Every30Mins.Misc - } - if o.UpdateSchedule.Wildfire.Recurring.Every30Mins.Action != nil { - nestedUpdateSchedule.Wildfire.Recurring.Every30Mins.Action = o.UpdateSchedule.Wildfire.Recurring.Every30Mins.Action - } - if o.UpdateSchedule.Wildfire.Recurring.Every30Mins.At != nil { - nestedUpdateSchedule.Wildfire.Recurring.Every30Mins.At = o.UpdateSchedule.Wildfire.Recurring.Every30Mins.At - } - if o.UpdateSchedule.Wildfire.Recurring.Every30Mins.SyncToPeer != nil { - nestedUpdateSchedule.Wildfire.Recurring.Every30Mins.SyncToPeer = util.AsBool(o.UpdateSchedule.Wildfire.Recurring.Every30Mins.SyncToPeer, nil) - } - } - if o.UpdateSchedule.Wildfire.Recurring.EveryHour != nil { - nestedUpdateSchedule.Wildfire.Recurring.EveryHour = &UpdateScheduleWildfireRecurringEveryHour{} - if o.UpdateSchedule.Wildfire.Recurring.EveryHour.Misc != nil { - config.Misc["UpdateScheduleWildfireRecurringEveryHour"] = o.UpdateSchedule.Wildfire.Recurring.EveryHour.Misc - } - if o.UpdateSchedule.Wildfire.Recurring.EveryHour.Action != nil { - nestedUpdateSchedule.Wildfire.Recurring.EveryHour.Action = o.UpdateSchedule.Wildfire.Recurring.EveryHour.Action - } - if o.UpdateSchedule.Wildfire.Recurring.EveryHour.At != nil { - nestedUpdateSchedule.Wildfire.Recurring.EveryHour.At = o.UpdateSchedule.Wildfire.Recurring.EveryHour.At - } - if o.UpdateSchedule.Wildfire.Recurring.EveryHour.SyncToPeer != nil { - nestedUpdateSchedule.Wildfire.Recurring.EveryHour.SyncToPeer = util.AsBool(o.UpdateSchedule.Wildfire.Recurring.EveryHour.SyncToPeer, nil) - } - } - } - } - if o.UpdateSchedule.AntiVirus != nil { - nestedUpdateSchedule.AntiVirus = &UpdateScheduleAntiVirus{} - if o.UpdateSchedule.AntiVirus.Misc != nil { - config.Misc["UpdateScheduleAntiVirus"] = o.UpdateSchedule.AntiVirus.Misc - } - if o.UpdateSchedule.AntiVirus.Recurring != nil { - nestedUpdateSchedule.AntiVirus.Recurring = &UpdateScheduleAntiVirusRecurring{} - if o.UpdateSchedule.AntiVirus.Recurring.Misc != nil { - config.Misc["UpdateScheduleAntiVirusRecurring"] = o.UpdateSchedule.AntiVirus.Recurring.Misc - } - if o.UpdateSchedule.AntiVirus.Recurring.SyncToPeer != nil { - nestedUpdateSchedule.AntiVirus.Recurring.SyncToPeer = util.AsBool(o.UpdateSchedule.AntiVirus.Recurring.SyncToPeer, nil) - } - if o.UpdateSchedule.AntiVirus.Recurring.Threshold != nil { - nestedUpdateSchedule.AntiVirus.Recurring.Threshold = o.UpdateSchedule.AntiVirus.Recurring.Threshold - } - if o.UpdateSchedule.AntiVirus.Recurring.Daily != nil { - nestedUpdateSchedule.AntiVirus.Recurring.Daily = &UpdateScheduleAntiVirusRecurringDaily{} - if o.UpdateSchedule.AntiVirus.Recurring.Daily.Misc != nil { - config.Misc["UpdateScheduleAntiVirusRecurringDaily"] = o.UpdateSchedule.AntiVirus.Recurring.Daily.Misc - } - if o.UpdateSchedule.AntiVirus.Recurring.Daily.Action != nil { - nestedUpdateSchedule.AntiVirus.Recurring.Daily.Action = o.UpdateSchedule.AntiVirus.Recurring.Daily.Action - } - if o.UpdateSchedule.AntiVirus.Recurring.Daily.At != nil { - nestedUpdateSchedule.AntiVirus.Recurring.Daily.At = o.UpdateSchedule.AntiVirus.Recurring.Daily.At - } - } - if o.UpdateSchedule.AntiVirus.Recurring.Hourly != nil { - nestedUpdateSchedule.AntiVirus.Recurring.Hourly = &UpdateScheduleAntiVirusRecurringHourly{} - if o.UpdateSchedule.AntiVirus.Recurring.Hourly.Misc != nil { - config.Misc["UpdateScheduleAntiVirusRecurringHourly"] = o.UpdateSchedule.AntiVirus.Recurring.Hourly.Misc - } - if o.UpdateSchedule.AntiVirus.Recurring.Hourly.Action != nil { - nestedUpdateSchedule.AntiVirus.Recurring.Hourly.Action = o.UpdateSchedule.AntiVirus.Recurring.Hourly.Action - } - if o.UpdateSchedule.AntiVirus.Recurring.Hourly.At != nil { - nestedUpdateSchedule.AntiVirus.Recurring.Hourly.At = o.UpdateSchedule.AntiVirus.Recurring.Hourly.At - } - } - if o.UpdateSchedule.AntiVirus.Recurring.None != nil { - nestedUpdateSchedule.AntiVirus.Recurring.None = &UpdateScheduleAntiVirusRecurringNone{} - if o.UpdateSchedule.AntiVirus.Recurring.None.Misc != nil { - config.Misc["UpdateScheduleAntiVirusRecurringNone"] = o.UpdateSchedule.AntiVirus.Recurring.None.Misc - } - } - if o.UpdateSchedule.AntiVirus.Recurring.Weekly != nil { - nestedUpdateSchedule.AntiVirus.Recurring.Weekly = &UpdateScheduleAntiVirusRecurringWeekly{} - if o.UpdateSchedule.AntiVirus.Recurring.Weekly.Misc != nil { - config.Misc["UpdateScheduleAntiVirusRecurringWeekly"] = o.UpdateSchedule.AntiVirus.Recurring.Weekly.Misc - } - if o.UpdateSchedule.AntiVirus.Recurring.Weekly.At != nil { - nestedUpdateSchedule.AntiVirus.Recurring.Weekly.At = o.UpdateSchedule.AntiVirus.Recurring.Weekly.At - } - if o.UpdateSchedule.AntiVirus.Recurring.Weekly.DayOfWeek != nil { - nestedUpdateSchedule.AntiVirus.Recurring.Weekly.DayOfWeek = o.UpdateSchedule.AntiVirus.Recurring.Weekly.DayOfWeek - } - if o.UpdateSchedule.AntiVirus.Recurring.Weekly.Action != nil { - nestedUpdateSchedule.AntiVirus.Recurring.Weekly.Action = o.UpdateSchedule.AntiVirus.Recurring.Weekly.Action - } - } - } - } - if o.UpdateSchedule.AppProfile != nil { - nestedUpdateSchedule.AppProfile = &UpdateScheduleAppProfile{} - if o.UpdateSchedule.AppProfile.Misc != nil { - config.Misc["UpdateScheduleAppProfile"] = o.UpdateSchedule.AppProfile.Misc - } - if o.UpdateSchedule.AppProfile.Recurring != nil { - nestedUpdateSchedule.AppProfile.Recurring = &UpdateScheduleAppProfileRecurring{} - if o.UpdateSchedule.AppProfile.Recurring.Misc != nil { - config.Misc["UpdateScheduleAppProfileRecurring"] = o.UpdateSchedule.AppProfile.Recurring.Misc - } - if o.UpdateSchedule.AppProfile.Recurring.SyncToPeer != nil { - nestedUpdateSchedule.AppProfile.Recurring.SyncToPeer = util.AsBool(o.UpdateSchedule.AppProfile.Recurring.SyncToPeer, nil) - } - if o.UpdateSchedule.AppProfile.Recurring.Threshold != nil { - nestedUpdateSchedule.AppProfile.Recurring.Threshold = o.UpdateSchedule.AppProfile.Recurring.Threshold - } - if o.UpdateSchedule.AppProfile.Recurring.Daily != nil { - nestedUpdateSchedule.AppProfile.Recurring.Daily = &UpdateScheduleAppProfileRecurringDaily{} - if o.UpdateSchedule.AppProfile.Recurring.Daily.Misc != nil { - config.Misc["UpdateScheduleAppProfileRecurringDaily"] = o.UpdateSchedule.AppProfile.Recurring.Daily.Misc - } - if o.UpdateSchedule.AppProfile.Recurring.Daily.At != nil { - nestedUpdateSchedule.AppProfile.Recurring.Daily.At = o.UpdateSchedule.AppProfile.Recurring.Daily.At - } - if o.UpdateSchedule.AppProfile.Recurring.Daily.Action != nil { - nestedUpdateSchedule.AppProfile.Recurring.Daily.Action = o.UpdateSchedule.AppProfile.Recurring.Daily.Action - } - } - if o.UpdateSchedule.AppProfile.Recurring.None != nil { - nestedUpdateSchedule.AppProfile.Recurring.None = &UpdateScheduleAppProfileRecurringNone{} - if o.UpdateSchedule.AppProfile.Recurring.None.Misc != nil { - config.Misc["UpdateScheduleAppProfileRecurringNone"] = o.UpdateSchedule.AppProfile.Recurring.None.Misc - } - } - if o.UpdateSchedule.AppProfile.Recurring.Weekly != nil { - nestedUpdateSchedule.AppProfile.Recurring.Weekly = &UpdateScheduleAppProfileRecurringWeekly{} - if o.UpdateSchedule.AppProfile.Recurring.Weekly.Misc != nil { - config.Misc["UpdateScheduleAppProfileRecurringWeekly"] = o.UpdateSchedule.AppProfile.Recurring.Weekly.Misc - } - if o.UpdateSchedule.AppProfile.Recurring.Weekly.Action != nil { - nestedUpdateSchedule.AppProfile.Recurring.Weekly.Action = o.UpdateSchedule.AppProfile.Recurring.Weekly.Action - } - if o.UpdateSchedule.AppProfile.Recurring.Weekly.At != nil { - nestedUpdateSchedule.AppProfile.Recurring.Weekly.At = o.UpdateSchedule.AppProfile.Recurring.Weekly.At - } - if o.UpdateSchedule.AppProfile.Recurring.Weekly.DayOfWeek != nil { - nestedUpdateSchedule.AppProfile.Recurring.Weekly.DayOfWeek = o.UpdateSchedule.AppProfile.Recurring.Weekly.DayOfWeek - } - } - } - } - if o.UpdateSchedule.GlobalProtectClientlessVpn != nil { - nestedUpdateSchedule.GlobalProtectClientlessVpn = &UpdateScheduleGlobalProtectClientlessVpn{} - if o.UpdateSchedule.GlobalProtectClientlessVpn.Misc != nil { - config.Misc["UpdateScheduleGlobalProtectClientlessVpn"] = o.UpdateSchedule.GlobalProtectClientlessVpn.Misc - } - if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring != nil { - nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring = &UpdateScheduleGlobalProtectClientlessVpnRecurring{} - if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Misc != nil { - config.Misc["UpdateScheduleGlobalProtectClientlessVpnRecurring"] = o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Misc - } - if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Daily != nil { - nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring.Daily = &UpdateScheduleGlobalProtectClientlessVpnRecurringDaily{} - if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Daily.Misc != nil { - config.Misc["UpdateScheduleGlobalProtectClientlessVpnRecurringDaily"] = o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Daily.Misc - } - if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Daily.Action != nil { - nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring.Daily.Action = o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Daily.Action - } - if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Daily.At != nil { - nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring.Daily.At = o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Daily.At - } - } - if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Hourly != nil { - nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring.Hourly = &UpdateScheduleGlobalProtectClientlessVpnRecurringHourly{} - if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Hourly.Misc != nil { - config.Misc["UpdateScheduleGlobalProtectClientlessVpnRecurringHourly"] = o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Hourly.Misc - } - if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Hourly.Action != nil { - nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring.Hourly.Action = o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Hourly.Action - } - if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Hourly.At != nil { - nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring.Hourly.At = o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Hourly.At - } - } - if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.None != nil { - nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring.None = &UpdateScheduleGlobalProtectClientlessVpnRecurringNone{} - if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.None.Misc != nil { - config.Misc["UpdateScheduleGlobalProtectClientlessVpnRecurringNone"] = o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.None.Misc - } - } - if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Weekly != nil { - nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring.Weekly = &UpdateScheduleGlobalProtectClientlessVpnRecurringWeekly{} - if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Weekly.Misc != nil { - config.Misc["UpdateScheduleGlobalProtectClientlessVpnRecurringWeekly"] = o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Weekly.Misc - } - if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Weekly.At != nil { - nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring.Weekly.At = o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Weekly.At - } - if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Weekly.DayOfWeek != nil { - nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring.Weekly.DayOfWeek = o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Weekly.DayOfWeek - } - if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Weekly.Action != nil { - nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring.Weekly.Action = o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Weekly.Action - } - } - } - } if o.UpdateSchedule.GlobalProtectDatafile != nil { nestedUpdateSchedule.GlobalProtectDatafile = &UpdateScheduleGlobalProtectDatafile{} if o.UpdateSchedule.GlobalProtectDatafile.Misc != nil { @@ -1328,18 +1076,6 @@ func (c *configXmlContainer) Normalize() ([]*Config, error) { if o.UpdateSchedule.GlobalProtectDatafile.Recurring.Misc != nil { config.Misc["UpdateScheduleGlobalProtectDatafileRecurring"] = o.UpdateSchedule.GlobalProtectDatafile.Recurring.Misc } - if o.UpdateSchedule.GlobalProtectDatafile.Recurring.Daily != nil { - nestedUpdateSchedule.GlobalProtectDatafile.Recurring.Daily = &UpdateScheduleGlobalProtectDatafileRecurringDaily{} - if o.UpdateSchedule.GlobalProtectDatafile.Recurring.Daily.Misc != nil { - config.Misc["UpdateScheduleGlobalProtectDatafileRecurringDaily"] = o.UpdateSchedule.GlobalProtectDatafile.Recurring.Daily.Misc - } - if o.UpdateSchedule.GlobalProtectDatafile.Recurring.Daily.Action != nil { - nestedUpdateSchedule.GlobalProtectDatafile.Recurring.Daily.Action = o.UpdateSchedule.GlobalProtectDatafile.Recurring.Daily.Action - } - if o.UpdateSchedule.GlobalProtectDatafile.Recurring.Daily.At != nil { - nestedUpdateSchedule.GlobalProtectDatafile.Recurring.Daily.At = o.UpdateSchedule.GlobalProtectDatafile.Recurring.Daily.At - } - } if o.UpdateSchedule.GlobalProtectDatafile.Recurring.Hourly != nil { nestedUpdateSchedule.GlobalProtectDatafile.Recurring.Hourly = &UpdateScheduleGlobalProtectDatafileRecurringHourly{} if o.UpdateSchedule.GlobalProtectDatafile.Recurring.Hourly.Misc != nil { @@ -1373,6 +1109,18 @@ func (c *configXmlContainer) Normalize() ([]*Config, error) { nestedUpdateSchedule.GlobalProtectDatafile.Recurring.Weekly.DayOfWeek = o.UpdateSchedule.GlobalProtectDatafile.Recurring.Weekly.DayOfWeek } } + if o.UpdateSchedule.GlobalProtectDatafile.Recurring.Daily != nil { + nestedUpdateSchedule.GlobalProtectDatafile.Recurring.Daily = &UpdateScheduleGlobalProtectDatafileRecurringDaily{} + if o.UpdateSchedule.GlobalProtectDatafile.Recurring.Daily.Misc != nil { + config.Misc["UpdateScheduleGlobalProtectDatafileRecurringDaily"] = o.UpdateSchedule.GlobalProtectDatafile.Recurring.Daily.Misc + } + if o.UpdateSchedule.GlobalProtectDatafile.Recurring.Daily.Action != nil { + nestedUpdateSchedule.GlobalProtectDatafile.Recurring.Daily.Action = o.UpdateSchedule.GlobalProtectDatafile.Recurring.Daily.Action + } + if o.UpdateSchedule.GlobalProtectDatafile.Recurring.Daily.At != nil { + nestedUpdateSchedule.GlobalProtectDatafile.Recurring.Daily.At = o.UpdateSchedule.GlobalProtectDatafile.Recurring.Daily.At + } + } } } if o.UpdateSchedule.StatisticsService != nil { @@ -1380,6 +1128,12 @@ func (c *configXmlContainer) Normalize() ([]*Config, error) { if o.UpdateSchedule.StatisticsService.Misc != nil { config.Misc["UpdateScheduleStatisticsService"] = o.UpdateSchedule.StatisticsService.Misc } + if o.UpdateSchedule.StatisticsService.PassiveDnsMonitoring != nil { + nestedUpdateSchedule.StatisticsService.PassiveDnsMonitoring = util.AsBool(o.UpdateSchedule.StatisticsService.PassiveDnsMonitoring, nil) + } + if o.UpdateSchedule.StatisticsService.ThreatPreventionInformation != nil { + nestedUpdateSchedule.StatisticsService.ThreatPreventionInformation = util.AsBool(o.UpdateSchedule.StatisticsService.ThreatPreventionInformation, nil) + } if o.UpdateSchedule.StatisticsService.ThreatPreventionPcap != nil { nestedUpdateSchedule.StatisticsService.ThreatPreventionPcap = util.AsBool(o.UpdateSchedule.StatisticsService.ThreatPreventionPcap, nil) } @@ -1398,12 +1152,6 @@ func (c *configXmlContainer) Normalize() ([]*Config, error) { if o.UpdateSchedule.StatisticsService.HealthPerformanceReports != nil { nestedUpdateSchedule.StatisticsService.HealthPerformanceReports = util.AsBool(o.UpdateSchedule.StatisticsService.HealthPerformanceReports, nil) } - if o.UpdateSchedule.StatisticsService.PassiveDnsMonitoring != nil { - nestedUpdateSchedule.StatisticsService.PassiveDnsMonitoring = util.AsBool(o.UpdateSchedule.StatisticsService.PassiveDnsMonitoring, nil) - } - if o.UpdateSchedule.StatisticsService.ThreatPreventionInformation != nil { - nestedUpdateSchedule.StatisticsService.ThreatPreventionInformation = util.AsBool(o.UpdateSchedule.StatisticsService.ThreatPreventionInformation, nil) - } } if o.UpdateSchedule.Threats != nil { nestedUpdateSchedule.Threats = &UpdateScheduleThreats{} @@ -1424,6 +1172,60 @@ func (c *configXmlContainer) Normalize() ([]*Config, error) { if o.UpdateSchedule.Threats.Recurring.Threshold != nil { nestedUpdateSchedule.Threats.Recurring.Threshold = o.UpdateSchedule.Threats.Recurring.Threshold } + if o.UpdateSchedule.Threats.Recurring.Every30Mins != nil { + nestedUpdateSchedule.Threats.Recurring.Every30Mins = &UpdateScheduleThreatsRecurringEvery30Mins{} + if o.UpdateSchedule.Threats.Recurring.Every30Mins.Misc != nil { + config.Misc["UpdateScheduleThreatsRecurringEvery30Mins"] = o.UpdateSchedule.Threats.Recurring.Every30Mins.Misc + } + if o.UpdateSchedule.Threats.Recurring.Every30Mins.Action != nil { + nestedUpdateSchedule.Threats.Recurring.Every30Mins.Action = o.UpdateSchedule.Threats.Recurring.Every30Mins.Action + } + if o.UpdateSchedule.Threats.Recurring.Every30Mins.At != nil { + nestedUpdateSchedule.Threats.Recurring.Every30Mins.At = o.UpdateSchedule.Threats.Recurring.Every30Mins.At + } + if o.UpdateSchedule.Threats.Recurring.Every30Mins.DisableNewContent != nil { + nestedUpdateSchedule.Threats.Recurring.Every30Mins.DisableNewContent = util.AsBool(o.UpdateSchedule.Threats.Recurring.Every30Mins.DisableNewContent, nil) + } + } + if o.UpdateSchedule.Threats.Recurring.Hourly != nil { + nestedUpdateSchedule.Threats.Recurring.Hourly = &UpdateScheduleThreatsRecurringHourly{} + if o.UpdateSchedule.Threats.Recurring.Hourly.Misc != nil { + config.Misc["UpdateScheduleThreatsRecurringHourly"] = o.UpdateSchedule.Threats.Recurring.Hourly.Misc + } + if o.UpdateSchedule.Threats.Recurring.Hourly.Action != nil { + nestedUpdateSchedule.Threats.Recurring.Hourly.Action = o.UpdateSchedule.Threats.Recurring.Hourly.Action + } + if o.UpdateSchedule.Threats.Recurring.Hourly.At != nil { + nestedUpdateSchedule.Threats.Recurring.Hourly.At = o.UpdateSchedule.Threats.Recurring.Hourly.At + } + if o.UpdateSchedule.Threats.Recurring.Hourly.DisableNewContent != nil { + nestedUpdateSchedule.Threats.Recurring.Hourly.DisableNewContent = util.AsBool(o.UpdateSchedule.Threats.Recurring.Hourly.DisableNewContent, nil) + } + } + if o.UpdateSchedule.Threats.Recurring.None != nil { + nestedUpdateSchedule.Threats.Recurring.None = &UpdateScheduleThreatsRecurringNone{} + if o.UpdateSchedule.Threats.Recurring.None.Misc != nil { + config.Misc["UpdateScheduleThreatsRecurringNone"] = o.UpdateSchedule.Threats.Recurring.None.Misc + } + } + if o.UpdateSchedule.Threats.Recurring.Weekly != nil { + nestedUpdateSchedule.Threats.Recurring.Weekly = &UpdateScheduleThreatsRecurringWeekly{} + if o.UpdateSchedule.Threats.Recurring.Weekly.Misc != nil { + config.Misc["UpdateScheduleThreatsRecurringWeekly"] = o.UpdateSchedule.Threats.Recurring.Weekly.Misc + } + if o.UpdateSchedule.Threats.Recurring.Weekly.At != nil { + nestedUpdateSchedule.Threats.Recurring.Weekly.At = o.UpdateSchedule.Threats.Recurring.Weekly.At + } + if o.UpdateSchedule.Threats.Recurring.Weekly.DayOfWeek != nil { + nestedUpdateSchedule.Threats.Recurring.Weekly.DayOfWeek = o.UpdateSchedule.Threats.Recurring.Weekly.DayOfWeek + } + if o.UpdateSchedule.Threats.Recurring.Weekly.DisableNewContent != nil { + nestedUpdateSchedule.Threats.Recurring.Weekly.DisableNewContent = util.AsBool(o.UpdateSchedule.Threats.Recurring.Weekly.DisableNewContent, nil) + } + if o.UpdateSchedule.Threats.Recurring.Weekly.Action != nil { + nestedUpdateSchedule.Threats.Recurring.Weekly.Action = o.UpdateSchedule.Threats.Recurring.Weekly.Action + } + } if o.UpdateSchedule.Threats.Recurring.Daily != nil { nestedUpdateSchedule.Threats.Recurring.Daily = &UpdateScheduleThreatsRecurringDaily{} if o.UpdateSchedule.Threats.Recurring.Daily.Misc != nil { @@ -1439,127 +1241,325 @@ func (c *configXmlContainer) Normalize() ([]*Config, error) { nestedUpdateSchedule.Threats.Recurring.Daily.DisableNewContent = util.AsBool(o.UpdateSchedule.Threats.Recurring.Daily.DisableNewContent, nil) } } - if o.UpdateSchedule.Threats.Recurring.Every30Mins != nil { - nestedUpdateSchedule.Threats.Recurring.Every30Mins = &UpdateScheduleThreatsRecurringEvery30Mins{} - if o.UpdateSchedule.Threats.Recurring.Every30Mins.Misc != nil { - config.Misc["UpdateScheduleThreatsRecurringEvery30Mins"] = o.UpdateSchedule.Threats.Recurring.Every30Mins.Misc + } + } + if o.UpdateSchedule.WfPrivate != nil { + nestedUpdateSchedule.WfPrivate = &UpdateScheduleWfPrivate{} + if o.UpdateSchedule.WfPrivate.Misc != nil { + config.Misc["UpdateScheduleWfPrivate"] = o.UpdateSchedule.WfPrivate.Misc + } + if o.UpdateSchedule.WfPrivate.Recurring != nil { + nestedUpdateSchedule.WfPrivate.Recurring = &UpdateScheduleWfPrivateRecurring{} + if o.UpdateSchedule.WfPrivate.Recurring.Misc != nil { + config.Misc["UpdateScheduleWfPrivateRecurring"] = o.UpdateSchedule.WfPrivate.Recurring.Misc + } + if o.UpdateSchedule.WfPrivate.Recurring.SyncToPeer != nil { + nestedUpdateSchedule.WfPrivate.Recurring.SyncToPeer = util.AsBool(o.UpdateSchedule.WfPrivate.Recurring.SyncToPeer, nil) + } + if o.UpdateSchedule.WfPrivate.Recurring.EveryHour != nil { + nestedUpdateSchedule.WfPrivate.Recurring.EveryHour = &UpdateScheduleWfPrivateRecurringEveryHour{} + if o.UpdateSchedule.WfPrivate.Recurring.EveryHour.Misc != nil { + config.Misc["UpdateScheduleWfPrivateRecurringEveryHour"] = o.UpdateSchedule.WfPrivate.Recurring.EveryHour.Misc + } + if o.UpdateSchedule.WfPrivate.Recurring.EveryHour.Action != nil { + nestedUpdateSchedule.WfPrivate.Recurring.EveryHour.Action = o.UpdateSchedule.WfPrivate.Recurring.EveryHour.Action + } + if o.UpdateSchedule.WfPrivate.Recurring.EveryHour.At != nil { + nestedUpdateSchedule.WfPrivate.Recurring.EveryHour.At = o.UpdateSchedule.WfPrivate.Recurring.EveryHour.At + } + } + if o.UpdateSchedule.WfPrivate.Recurring.None != nil { + nestedUpdateSchedule.WfPrivate.Recurring.None = &UpdateScheduleWfPrivateRecurringNone{} + if o.UpdateSchedule.WfPrivate.Recurring.None.Misc != nil { + config.Misc["UpdateScheduleWfPrivateRecurringNone"] = o.UpdateSchedule.WfPrivate.Recurring.None.Misc + } + } + if o.UpdateSchedule.WfPrivate.Recurring.Every15Mins != nil { + nestedUpdateSchedule.WfPrivate.Recurring.Every15Mins = &UpdateScheduleWfPrivateRecurringEvery15Mins{} + if o.UpdateSchedule.WfPrivate.Recurring.Every15Mins.Misc != nil { + config.Misc["UpdateScheduleWfPrivateRecurringEvery15Mins"] = o.UpdateSchedule.WfPrivate.Recurring.Every15Mins.Misc + } + if o.UpdateSchedule.WfPrivate.Recurring.Every15Mins.Action != nil { + nestedUpdateSchedule.WfPrivate.Recurring.Every15Mins.Action = o.UpdateSchedule.WfPrivate.Recurring.Every15Mins.Action + } + if o.UpdateSchedule.WfPrivate.Recurring.Every15Mins.At != nil { + nestedUpdateSchedule.WfPrivate.Recurring.Every15Mins.At = o.UpdateSchedule.WfPrivate.Recurring.Every15Mins.At + } + } + if o.UpdateSchedule.WfPrivate.Recurring.Every30Mins != nil { + nestedUpdateSchedule.WfPrivate.Recurring.Every30Mins = &UpdateScheduleWfPrivateRecurringEvery30Mins{} + if o.UpdateSchedule.WfPrivate.Recurring.Every30Mins.Misc != nil { + config.Misc["UpdateScheduleWfPrivateRecurringEvery30Mins"] = o.UpdateSchedule.WfPrivate.Recurring.Every30Mins.Misc + } + if o.UpdateSchedule.WfPrivate.Recurring.Every30Mins.Action != nil { + nestedUpdateSchedule.WfPrivate.Recurring.Every30Mins.Action = o.UpdateSchedule.WfPrivate.Recurring.Every30Mins.Action + } + if o.UpdateSchedule.WfPrivate.Recurring.Every30Mins.At != nil { + nestedUpdateSchedule.WfPrivate.Recurring.Every30Mins.At = o.UpdateSchedule.WfPrivate.Recurring.Every30Mins.At + } + } + if o.UpdateSchedule.WfPrivate.Recurring.Every5Mins != nil { + nestedUpdateSchedule.WfPrivate.Recurring.Every5Mins = &UpdateScheduleWfPrivateRecurringEvery5Mins{} + if o.UpdateSchedule.WfPrivate.Recurring.Every5Mins.Misc != nil { + config.Misc["UpdateScheduleWfPrivateRecurringEvery5Mins"] = o.UpdateSchedule.WfPrivate.Recurring.Every5Mins.Misc + } + if o.UpdateSchedule.WfPrivate.Recurring.Every5Mins.Action != nil { + nestedUpdateSchedule.WfPrivate.Recurring.Every5Mins.Action = o.UpdateSchedule.WfPrivate.Recurring.Every5Mins.Action + } + if o.UpdateSchedule.WfPrivate.Recurring.Every5Mins.At != nil { + nestedUpdateSchedule.WfPrivate.Recurring.Every5Mins.At = o.UpdateSchedule.WfPrivate.Recurring.Every5Mins.At + } + } + } + } + if o.UpdateSchedule.Wildfire != nil { + nestedUpdateSchedule.Wildfire = &UpdateScheduleWildfire{} + if o.UpdateSchedule.Wildfire.Misc != nil { + config.Misc["UpdateScheduleWildfire"] = o.UpdateSchedule.Wildfire.Misc + } + if o.UpdateSchedule.Wildfire.Recurring != nil { + nestedUpdateSchedule.Wildfire.Recurring = &UpdateScheduleWildfireRecurring{} + if o.UpdateSchedule.Wildfire.Recurring.Misc != nil { + config.Misc["UpdateScheduleWildfireRecurring"] = o.UpdateSchedule.Wildfire.Recurring.Misc + } + if o.UpdateSchedule.Wildfire.Recurring.RealTime != nil { + nestedUpdateSchedule.Wildfire.Recurring.RealTime = &UpdateScheduleWildfireRecurringRealTime{} + if o.UpdateSchedule.Wildfire.Recurring.RealTime.Misc != nil { + config.Misc["UpdateScheduleWildfireRecurringRealTime"] = o.UpdateSchedule.Wildfire.Recurring.RealTime.Misc + } + } + if o.UpdateSchedule.Wildfire.Recurring.Every15Mins != nil { + nestedUpdateSchedule.Wildfire.Recurring.Every15Mins = &UpdateScheduleWildfireRecurringEvery15Mins{} + if o.UpdateSchedule.Wildfire.Recurring.Every15Mins.Misc != nil { + config.Misc["UpdateScheduleWildfireRecurringEvery15Mins"] = o.UpdateSchedule.Wildfire.Recurring.Every15Mins.Misc + } + if o.UpdateSchedule.Wildfire.Recurring.Every15Mins.Action != nil { + nestedUpdateSchedule.Wildfire.Recurring.Every15Mins.Action = o.UpdateSchedule.Wildfire.Recurring.Every15Mins.Action + } + if o.UpdateSchedule.Wildfire.Recurring.Every15Mins.At != nil { + nestedUpdateSchedule.Wildfire.Recurring.Every15Mins.At = o.UpdateSchedule.Wildfire.Recurring.Every15Mins.At + } + if o.UpdateSchedule.Wildfire.Recurring.Every15Mins.SyncToPeer != nil { + nestedUpdateSchedule.Wildfire.Recurring.Every15Mins.SyncToPeer = util.AsBool(o.UpdateSchedule.Wildfire.Recurring.Every15Mins.SyncToPeer, nil) + } + } + if o.UpdateSchedule.Wildfire.Recurring.Every30Mins != nil { + nestedUpdateSchedule.Wildfire.Recurring.Every30Mins = &UpdateScheduleWildfireRecurringEvery30Mins{} + if o.UpdateSchedule.Wildfire.Recurring.Every30Mins.Misc != nil { + config.Misc["UpdateScheduleWildfireRecurringEvery30Mins"] = o.UpdateSchedule.Wildfire.Recurring.Every30Mins.Misc + } + if o.UpdateSchedule.Wildfire.Recurring.Every30Mins.SyncToPeer != nil { + nestedUpdateSchedule.Wildfire.Recurring.Every30Mins.SyncToPeer = util.AsBool(o.UpdateSchedule.Wildfire.Recurring.Every30Mins.SyncToPeer, nil) + } + if o.UpdateSchedule.Wildfire.Recurring.Every30Mins.Action != nil { + nestedUpdateSchedule.Wildfire.Recurring.Every30Mins.Action = o.UpdateSchedule.Wildfire.Recurring.Every30Mins.Action + } + if o.UpdateSchedule.Wildfire.Recurring.Every30Mins.At != nil { + nestedUpdateSchedule.Wildfire.Recurring.Every30Mins.At = o.UpdateSchedule.Wildfire.Recurring.Every30Mins.At + } + } + if o.UpdateSchedule.Wildfire.Recurring.EveryHour != nil { + nestedUpdateSchedule.Wildfire.Recurring.EveryHour = &UpdateScheduleWildfireRecurringEveryHour{} + if o.UpdateSchedule.Wildfire.Recurring.EveryHour.Misc != nil { + config.Misc["UpdateScheduleWildfireRecurringEveryHour"] = o.UpdateSchedule.Wildfire.Recurring.EveryHour.Misc + } + if o.UpdateSchedule.Wildfire.Recurring.EveryHour.At != nil { + nestedUpdateSchedule.Wildfire.Recurring.EveryHour.At = o.UpdateSchedule.Wildfire.Recurring.EveryHour.At + } + if o.UpdateSchedule.Wildfire.Recurring.EveryHour.SyncToPeer != nil { + nestedUpdateSchedule.Wildfire.Recurring.EveryHour.SyncToPeer = util.AsBool(o.UpdateSchedule.Wildfire.Recurring.EveryHour.SyncToPeer, nil) + } + if o.UpdateSchedule.Wildfire.Recurring.EveryHour.Action != nil { + nestedUpdateSchedule.Wildfire.Recurring.EveryHour.Action = o.UpdateSchedule.Wildfire.Recurring.EveryHour.Action + } + } + if o.UpdateSchedule.Wildfire.Recurring.EveryMin != nil { + nestedUpdateSchedule.Wildfire.Recurring.EveryMin = &UpdateScheduleWildfireRecurringEveryMin{} + if o.UpdateSchedule.Wildfire.Recurring.EveryMin.Misc != nil { + config.Misc["UpdateScheduleWildfireRecurringEveryMin"] = o.UpdateSchedule.Wildfire.Recurring.EveryMin.Misc + } + if o.UpdateSchedule.Wildfire.Recurring.EveryMin.SyncToPeer != nil { + nestedUpdateSchedule.Wildfire.Recurring.EveryMin.SyncToPeer = util.AsBool(o.UpdateSchedule.Wildfire.Recurring.EveryMin.SyncToPeer, nil) + } + if o.UpdateSchedule.Wildfire.Recurring.EveryMin.Action != nil { + nestedUpdateSchedule.Wildfire.Recurring.EveryMin.Action = o.UpdateSchedule.Wildfire.Recurring.EveryMin.Action + } + } + if o.UpdateSchedule.Wildfire.Recurring.None != nil { + nestedUpdateSchedule.Wildfire.Recurring.None = &UpdateScheduleWildfireRecurringNone{} + if o.UpdateSchedule.Wildfire.Recurring.None.Misc != nil { + config.Misc["UpdateScheduleWildfireRecurringNone"] = o.UpdateSchedule.Wildfire.Recurring.None.Misc + } + } + } + } + if o.UpdateSchedule.AntiVirus != nil { + nestedUpdateSchedule.AntiVirus = &UpdateScheduleAntiVirus{} + if o.UpdateSchedule.AntiVirus.Misc != nil { + config.Misc["UpdateScheduleAntiVirus"] = o.UpdateSchedule.AntiVirus.Misc + } + if o.UpdateSchedule.AntiVirus.Recurring != nil { + nestedUpdateSchedule.AntiVirus.Recurring = &UpdateScheduleAntiVirusRecurring{} + if o.UpdateSchedule.AntiVirus.Recurring.Misc != nil { + config.Misc["UpdateScheduleAntiVirusRecurring"] = o.UpdateSchedule.AntiVirus.Recurring.Misc + } + if o.UpdateSchedule.AntiVirus.Recurring.Threshold != nil { + nestedUpdateSchedule.AntiVirus.Recurring.Threshold = o.UpdateSchedule.AntiVirus.Recurring.Threshold + } + if o.UpdateSchedule.AntiVirus.Recurring.SyncToPeer != nil { + nestedUpdateSchedule.AntiVirus.Recurring.SyncToPeer = util.AsBool(o.UpdateSchedule.AntiVirus.Recurring.SyncToPeer, nil) + } + if o.UpdateSchedule.AntiVirus.Recurring.Daily != nil { + nestedUpdateSchedule.AntiVirus.Recurring.Daily = &UpdateScheduleAntiVirusRecurringDaily{} + if o.UpdateSchedule.AntiVirus.Recurring.Daily.Misc != nil { + config.Misc["UpdateScheduleAntiVirusRecurringDaily"] = o.UpdateSchedule.AntiVirus.Recurring.Daily.Misc + } + if o.UpdateSchedule.AntiVirus.Recurring.Daily.Action != nil { + nestedUpdateSchedule.AntiVirus.Recurring.Daily.Action = o.UpdateSchedule.AntiVirus.Recurring.Daily.Action + } + if o.UpdateSchedule.AntiVirus.Recurring.Daily.At != nil { + nestedUpdateSchedule.AntiVirus.Recurring.Daily.At = o.UpdateSchedule.AntiVirus.Recurring.Daily.At + } + } + if o.UpdateSchedule.AntiVirus.Recurring.Hourly != nil { + nestedUpdateSchedule.AntiVirus.Recurring.Hourly = &UpdateScheduleAntiVirusRecurringHourly{} + if o.UpdateSchedule.AntiVirus.Recurring.Hourly.Misc != nil { + config.Misc["UpdateScheduleAntiVirusRecurringHourly"] = o.UpdateSchedule.AntiVirus.Recurring.Hourly.Misc + } + if o.UpdateSchedule.AntiVirus.Recurring.Hourly.Action != nil { + nestedUpdateSchedule.AntiVirus.Recurring.Hourly.Action = o.UpdateSchedule.AntiVirus.Recurring.Hourly.Action + } + if o.UpdateSchedule.AntiVirus.Recurring.Hourly.At != nil { + nestedUpdateSchedule.AntiVirus.Recurring.Hourly.At = o.UpdateSchedule.AntiVirus.Recurring.Hourly.At + } + } + if o.UpdateSchedule.AntiVirus.Recurring.None != nil { + nestedUpdateSchedule.AntiVirus.Recurring.None = &UpdateScheduleAntiVirusRecurringNone{} + if o.UpdateSchedule.AntiVirus.Recurring.None.Misc != nil { + config.Misc["UpdateScheduleAntiVirusRecurringNone"] = o.UpdateSchedule.AntiVirus.Recurring.None.Misc + } + } + if o.UpdateSchedule.AntiVirus.Recurring.Weekly != nil { + nestedUpdateSchedule.AntiVirus.Recurring.Weekly = &UpdateScheduleAntiVirusRecurringWeekly{} + if o.UpdateSchedule.AntiVirus.Recurring.Weekly.Misc != nil { + config.Misc["UpdateScheduleAntiVirusRecurringWeekly"] = o.UpdateSchedule.AntiVirus.Recurring.Weekly.Misc } - if o.UpdateSchedule.Threats.Recurring.Every30Mins.At != nil { - nestedUpdateSchedule.Threats.Recurring.Every30Mins.At = o.UpdateSchedule.Threats.Recurring.Every30Mins.At + if o.UpdateSchedule.AntiVirus.Recurring.Weekly.Action != nil { + nestedUpdateSchedule.AntiVirus.Recurring.Weekly.Action = o.UpdateSchedule.AntiVirus.Recurring.Weekly.Action } - if o.UpdateSchedule.Threats.Recurring.Every30Mins.DisableNewContent != nil { - nestedUpdateSchedule.Threats.Recurring.Every30Mins.DisableNewContent = util.AsBool(o.UpdateSchedule.Threats.Recurring.Every30Mins.DisableNewContent, nil) + if o.UpdateSchedule.AntiVirus.Recurring.Weekly.At != nil { + nestedUpdateSchedule.AntiVirus.Recurring.Weekly.At = o.UpdateSchedule.AntiVirus.Recurring.Weekly.At } - if o.UpdateSchedule.Threats.Recurring.Every30Mins.Action != nil { - nestedUpdateSchedule.Threats.Recurring.Every30Mins.Action = o.UpdateSchedule.Threats.Recurring.Every30Mins.Action + if o.UpdateSchedule.AntiVirus.Recurring.Weekly.DayOfWeek != nil { + nestedUpdateSchedule.AntiVirus.Recurring.Weekly.DayOfWeek = o.UpdateSchedule.AntiVirus.Recurring.Weekly.DayOfWeek } } - if o.UpdateSchedule.Threats.Recurring.Hourly != nil { - nestedUpdateSchedule.Threats.Recurring.Hourly = &UpdateScheduleThreatsRecurringHourly{} - if o.UpdateSchedule.Threats.Recurring.Hourly.Misc != nil { - config.Misc["UpdateScheduleThreatsRecurringHourly"] = o.UpdateSchedule.Threats.Recurring.Hourly.Misc - } - if o.UpdateSchedule.Threats.Recurring.Hourly.At != nil { - nestedUpdateSchedule.Threats.Recurring.Hourly.At = o.UpdateSchedule.Threats.Recurring.Hourly.At + } + } + if o.UpdateSchedule.AppProfile != nil { + nestedUpdateSchedule.AppProfile = &UpdateScheduleAppProfile{} + if o.UpdateSchedule.AppProfile.Misc != nil { + config.Misc["UpdateScheduleAppProfile"] = o.UpdateSchedule.AppProfile.Misc + } + if o.UpdateSchedule.AppProfile.Recurring != nil { + nestedUpdateSchedule.AppProfile.Recurring = &UpdateScheduleAppProfileRecurring{} + if o.UpdateSchedule.AppProfile.Recurring.Misc != nil { + config.Misc["UpdateScheduleAppProfileRecurring"] = o.UpdateSchedule.AppProfile.Recurring.Misc + } + if o.UpdateSchedule.AppProfile.Recurring.SyncToPeer != nil { + nestedUpdateSchedule.AppProfile.Recurring.SyncToPeer = util.AsBool(o.UpdateSchedule.AppProfile.Recurring.SyncToPeer, nil) + } + if o.UpdateSchedule.AppProfile.Recurring.Threshold != nil { + nestedUpdateSchedule.AppProfile.Recurring.Threshold = o.UpdateSchedule.AppProfile.Recurring.Threshold + } + if o.UpdateSchedule.AppProfile.Recurring.Daily != nil { + nestedUpdateSchedule.AppProfile.Recurring.Daily = &UpdateScheduleAppProfileRecurringDaily{} + if o.UpdateSchedule.AppProfile.Recurring.Daily.Misc != nil { + config.Misc["UpdateScheduleAppProfileRecurringDaily"] = o.UpdateSchedule.AppProfile.Recurring.Daily.Misc } - if o.UpdateSchedule.Threats.Recurring.Hourly.DisableNewContent != nil { - nestedUpdateSchedule.Threats.Recurring.Hourly.DisableNewContent = util.AsBool(o.UpdateSchedule.Threats.Recurring.Hourly.DisableNewContent, nil) + if o.UpdateSchedule.AppProfile.Recurring.Daily.Action != nil { + nestedUpdateSchedule.AppProfile.Recurring.Daily.Action = o.UpdateSchedule.AppProfile.Recurring.Daily.Action } - if o.UpdateSchedule.Threats.Recurring.Hourly.Action != nil { - nestedUpdateSchedule.Threats.Recurring.Hourly.Action = o.UpdateSchedule.Threats.Recurring.Hourly.Action + if o.UpdateSchedule.AppProfile.Recurring.Daily.At != nil { + nestedUpdateSchedule.AppProfile.Recurring.Daily.At = o.UpdateSchedule.AppProfile.Recurring.Daily.At } } - if o.UpdateSchedule.Threats.Recurring.None != nil { - nestedUpdateSchedule.Threats.Recurring.None = &UpdateScheduleThreatsRecurringNone{} - if o.UpdateSchedule.Threats.Recurring.None.Misc != nil { - config.Misc["UpdateScheduleThreatsRecurringNone"] = o.UpdateSchedule.Threats.Recurring.None.Misc + if o.UpdateSchedule.AppProfile.Recurring.None != nil { + nestedUpdateSchedule.AppProfile.Recurring.None = &UpdateScheduleAppProfileRecurringNone{} + if o.UpdateSchedule.AppProfile.Recurring.None.Misc != nil { + config.Misc["UpdateScheduleAppProfileRecurringNone"] = o.UpdateSchedule.AppProfile.Recurring.None.Misc } } - if o.UpdateSchedule.Threats.Recurring.Weekly != nil { - nestedUpdateSchedule.Threats.Recurring.Weekly = &UpdateScheduleThreatsRecurringWeekly{} - if o.UpdateSchedule.Threats.Recurring.Weekly.Misc != nil { - config.Misc["UpdateScheduleThreatsRecurringWeekly"] = o.UpdateSchedule.Threats.Recurring.Weekly.Misc - } - if o.UpdateSchedule.Threats.Recurring.Weekly.Action != nil { - nestedUpdateSchedule.Threats.Recurring.Weekly.Action = o.UpdateSchedule.Threats.Recurring.Weekly.Action + if o.UpdateSchedule.AppProfile.Recurring.Weekly != nil { + nestedUpdateSchedule.AppProfile.Recurring.Weekly = &UpdateScheduleAppProfileRecurringWeekly{} + if o.UpdateSchedule.AppProfile.Recurring.Weekly.Misc != nil { + config.Misc["UpdateScheduleAppProfileRecurringWeekly"] = o.UpdateSchedule.AppProfile.Recurring.Weekly.Misc } - if o.UpdateSchedule.Threats.Recurring.Weekly.At != nil { - nestedUpdateSchedule.Threats.Recurring.Weekly.At = o.UpdateSchedule.Threats.Recurring.Weekly.At + if o.UpdateSchedule.AppProfile.Recurring.Weekly.Action != nil { + nestedUpdateSchedule.AppProfile.Recurring.Weekly.Action = o.UpdateSchedule.AppProfile.Recurring.Weekly.Action } - if o.UpdateSchedule.Threats.Recurring.Weekly.DayOfWeek != nil { - nestedUpdateSchedule.Threats.Recurring.Weekly.DayOfWeek = o.UpdateSchedule.Threats.Recurring.Weekly.DayOfWeek + if o.UpdateSchedule.AppProfile.Recurring.Weekly.At != nil { + nestedUpdateSchedule.AppProfile.Recurring.Weekly.At = o.UpdateSchedule.AppProfile.Recurring.Weekly.At } - if o.UpdateSchedule.Threats.Recurring.Weekly.DisableNewContent != nil { - nestedUpdateSchedule.Threats.Recurring.Weekly.DisableNewContent = util.AsBool(o.UpdateSchedule.Threats.Recurring.Weekly.DisableNewContent, nil) + if o.UpdateSchedule.AppProfile.Recurring.Weekly.DayOfWeek != nil { + nestedUpdateSchedule.AppProfile.Recurring.Weekly.DayOfWeek = o.UpdateSchedule.AppProfile.Recurring.Weekly.DayOfWeek } } } } - if o.UpdateSchedule.WfPrivate != nil { - nestedUpdateSchedule.WfPrivate = &UpdateScheduleWfPrivate{} - if o.UpdateSchedule.WfPrivate.Misc != nil { - config.Misc["UpdateScheduleWfPrivate"] = o.UpdateSchedule.WfPrivate.Misc + if o.UpdateSchedule.GlobalProtectClientlessVpn != nil { + nestedUpdateSchedule.GlobalProtectClientlessVpn = &UpdateScheduleGlobalProtectClientlessVpn{} + if o.UpdateSchedule.GlobalProtectClientlessVpn.Misc != nil { + config.Misc["UpdateScheduleGlobalProtectClientlessVpn"] = o.UpdateSchedule.GlobalProtectClientlessVpn.Misc } - if o.UpdateSchedule.WfPrivate.Recurring != nil { - nestedUpdateSchedule.WfPrivate.Recurring = &UpdateScheduleWfPrivateRecurring{} - if o.UpdateSchedule.WfPrivate.Recurring.Misc != nil { - config.Misc["UpdateScheduleWfPrivateRecurring"] = o.UpdateSchedule.WfPrivate.Recurring.Misc - } - if o.UpdateSchedule.WfPrivate.Recurring.SyncToPeer != nil { - nestedUpdateSchedule.WfPrivate.Recurring.SyncToPeer = util.AsBool(o.UpdateSchedule.WfPrivate.Recurring.SyncToPeer, nil) + if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring != nil { + nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring = &UpdateScheduleGlobalProtectClientlessVpnRecurring{} + if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Misc != nil { + config.Misc["UpdateScheduleGlobalProtectClientlessVpnRecurring"] = o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Misc } - if o.UpdateSchedule.WfPrivate.Recurring.Every15Mins != nil { - nestedUpdateSchedule.WfPrivate.Recurring.Every15Mins = &UpdateScheduleWfPrivateRecurringEvery15Mins{} - if o.UpdateSchedule.WfPrivate.Recurring.Every15Mins.Misc != nil { - config.Misc["UpdateScheduleWfPrivateRecurringEvery15Mins"] = o.UpdateSchedule.WfPrivate.Recurring.Every15Mins.Misc + if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Daily != nil { + nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring.Daily = &UpdateScheduleGlobalProtectClientlessVpnRecurringDaily{} + if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Daily.Misc != nil { + config.Misc["UpdateScheduleGlobalProtectClientlessVpnRecurringDaily"] = o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Daily.Misc } - if o.UpdateSchedule.WfPrivate.Recurring.Every15Mins.Action != nil { - nestedUpdateSchedule.WfPrivate.Recurring.Every15Mins.Action = o.UpdateSchedule.WfPrivate.Recurring.Every15Mins.Action + if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Daily.Action != nil { + nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring.Daily.Action = o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Daily.Action } - if o.UpdateSchedule.WfPrivate.Recurring.Every15Mins.At != nil { - nestedUpdateSchedule.WfPrivate.Recurring.Every15Mins.At = o.UpdateSchedule.WfPrivate.Recurring.Every15Mins.At + if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Daily.At != nil { + nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring.Daily.At = o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Daily.At } } - if o.UpdateSchedule.WfPrivate.Recurring.Every30Mins != nil { - nestedUpdateSchedule.WfPrivate.Recurring.Every30Mins = &UpdateScheduleWfPrivateRecurringEvery30Mins{} - if o.UpdateSchedule.WfPrivate.Recurring.Every30Mins.Misc != nil { - config.Misc["UpdateScheduleWfPrivateRecurringEvery30Mins"] = o.UpdateSchedule.WfPrivate.Recurring.Every30Mins.Misc + if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Hourly != nil { + nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring.Hourly = &UpdateScheduleGlobalProtectClientlessVpnRecurringHourly{} + if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Hourly.Misc != nil { + config.Misc["UpdateScheduleGlobalProtectClientlessVpnRecurringHourly"] = o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Hourly.Misc } - if o.UpdateSchedule.WfPrivate.Recurring.Every30Mins.Action != nil { - nestedUpdateSchedule.WfPrivate.Recurring.Every30Mins.Action = o.UpdateSchedule.WfPrivate.Recurring.Every30Mins.Action + if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Hourly.Action != nil { + nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring.Hourly.Action = o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Hourly.Action } - if o.UpdateSchedule.WfPrivate.Recurring.Every30Mins.At != nil { - nestedUpdateSchedule.WfPrivate.Recurring.Every30Mins.At = o.UpdateSchedule.WfPrivate.Recurring.Every30Mins.At + if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Hourly.At != nil { + nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring.Hourly.At = o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Hourly.At } } - if o.UpdateSchedule.WfPrivate.Recurring.Every5Mins != nil { - nestedUpdateSchedule.WfPrivate.Recurring.Every5Mins = &UpdateScheduleWfPrivateRecurringEvery5Mins{} - if o.UpdateSchedule.WfPrivate.Recurring.Every5Mins.Misc != nil { - config.Misc["UpdateScheduleWfPrivateRecurringEvery5Mins"] = o.UpdateSchedule.WfPrivate.Recurring.Every5Mins.Misc - } - if o.UpdateSchedule.WfPrivate.Recurring.Every5Mins.Action != nil { - nestedUpdateSchedule.WfPrivate.Recurring.Every5Mins.Action = o.UpdateSchedule.WfPrivate.Recurring.Every5Mins.Action - } - if o.UpdateSchedule.WfPrivate.Recurring.Every5Mins.At != nil { - nestedUpdateSchedule.WfPrivate.Recurring.Every5Mins.At = o.UpdateSchedule.WfPrivate.Recurring.Every5Mins.At + if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.None != nil { + nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring.None = &UpdateScheduleGlobalProtectClientlessVpnRecurringNone{} + if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.None.Misc != nil { + config.Misc["UpdateScheduleGlobalProtectClientlessVpnRecurringNone"] = o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.None.Misc } } - if o.UpdateSchedule.WfPrivate.Recurring.EveryHour != nil { - nestedUpdateSchedule.WfPrivate.Recurring.EveryHour = &UpdateScheduleWfPrivateRecurringEveryHour{} - if o.UpdateSchedule.WfPrivate.Recurring.EveryHour.Misc != nil { - config.Misc["UpdateScheduleWfPrivateRecurringEveryHour"] = o.UpdateSchedule.WfPrivate.Recurring.EveryHour.Misc + if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Weekly != nil { + nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring.Weekly = &UpdateScheduleGlobalProtectClientlessVpnRecurringWeekly{} + if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Weekly.Misc != nil { + config.Misc["UpdateScheduleGlobalProtectClientlessVpnRecurringWeekly"] = o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Weekly.Misc } - if o.UpdateSchedule.WfPrivate.Recurring.EveryHour.At != nil { - nestedUpdateSchedule.WfPrivate.Recurring.EveryHour.At = o.UpdateSchedule.WfPrivate.Recurring.EveryHour.At + if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Weekly.At != nil { + nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring.Weekly.At = o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Weekly.At } - if o.UpdateSchedule.WfPrivate.Recurring.EveryHour.Action != nil { - nestedUpdateSchedule.WfPrivate.Recurring.EveryHour.Action = o.UpdateSchedule.WfPrivate.Recurring.EveryHour.Action + if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Weekly.DayOfWeek != nil { + nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring.Weekly.DayOfWeek = o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Weekly.DayOfWeek } - } - if o.UpdateSchedule.WfPrivate.Recurring.None != nil { - nestedUpdateSchedule.WfPrivate.Recurring.None = &UpdateScheduleWfPrivateRecurringNone{} - if o.UpdateSchedule.WfPrivate.Recurring.None.Misc != nil { - config.Misc["UpdateScheduleWfPrivateRecurringNone"] = o.UpdateSchedule.WfPrivate.Recurring.None.Misc + if o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Weekly.Action != nil { + nestedUpdateSchedule.GlobalProtectClientlessVpn.Recurring.Weekly.Action = o.UpdateSchedule.GlobalProtectClientlessVpn.Recurring.Weekly.Action } } } @@ -1581,15 +1581,88 @@ func SpecMatches(a, b *Config) bool { } else if a == nil && b == nil { return true } - - // Don't compare Name. - if !matchUpdateSchedule(a.UpdateSchedule, b.UpdateSchedule) { + + // Don't compare Name. + if !matchUpdateSchedule(a.UpdateSchedule, b.UpdateSchedule) { + return false + } + + return true +} + +func matchUpdateScheduleAppProfileRecurringDaily(a *UpdateScheduleAppProfileRecurringDaily, b *UpdateScheduleAppProfileRecurringDaily) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + if !util.StringsMatch(a.Action, b.Action) { + return false + } + if !util.StringsMatch(a.At, b.At) { + return false + } + return true +} +func matchUpdateScheduleAppProfileRecurringNone(a *UpdateScheduleAppProfileRecurringNone, b *UpdateScheduleAppProfileRecurringNone) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + return true +} +func matchUpdateScheduleAppProfileRecurringWeekly(a *UpdateScheduleAppProfileRecurringWeekly, b *UpdateScheduleAppProfileRecurringWeekly) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + if !util.StringsMatch(a.Action, b.Action) { + return false + } + if !util.StringsMatch(a.At, b.At) { + return false + } + if !util.StringsMatch(a.DayOfWeek, b.DayOfWeek) { + return false + } + return true +} +func matchUpdateScheduleAppProfileRecurring(a *UpdateScheduleAppProfileRecurring, b *UpdateScheduleAppProfileRecurring) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + if !util.BoolsMatch(a.SyncToPeer, b.SyncToPeer) { + return false + } + if !util.Ints64Match(a.Threshold, b.Threshold) { + return false + } + if !matchUpdateScheduleAppProfileRecurringNone(a.None, b.None) { + return false + } + if !matchUpdateScheduleAppProfileRecurringWeekly(a.Weekly, b.Weekly) { + return false + } + if !matchUpdateScheduleAppProfileRecurringDaily(a.Daily, b.Daily) { + return false + } + return true +} +func matchUpdateScheduleAppProfile(a *UpdateScheduleAppProfile, b *UpdateScheduleAppProfile) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + if !matchUpdateScheduleAppProfileRecurring(a.Recurring, b.Recurring) { return false } - return true } - func matchUpdateScheduleGlobalProtectClientlessVpnRecurringDaily(a *UpdateScheduleGlobalProtectClientlessVpnRecurringDaily, b *UpdateScheduleGlobalProtectClientlessVpnRecurringDaily) bool { if a == nil && b != nil || a != nil && b == nil { return false @@ -1649,9 +1722,6 @@ func matchUpdateScheduleGlobalProtectClientlessVpnRecurring(a *UpdateScheduleGlo } else if a == nil && b == nil { return true } - if !matchUpdateScheduleGlobalProtectClientlessVpnRecurringDaily(a.Daily, b.Daily) { - return false - } if !matchUpdateScheduleGlobalProtectClientlessVpnRecurringHourly(a.Hourly, b.Hourly) { return false } @@ -1661,6 +1731,9 @@ func matchUpdateScheduleGlobalProtectClientlessVpnRecurring(a *UpdateScheduleGlo if !matchUpdateScheduleGlobalProtectClientlessVpnRecurringWeekly(a.Weekly, b.Weekly) { return false } + if !matchUpdateScheduleGlobalProtectClientlessVpnRecurringDaily(a.Daily, b.Daily) { + return false + } return true } func matchUpdateScheduleGlobalProtectClientlessVpn(a *UpdateScheduleGlobalProtectClientlessVpn, b *UpdateScheduleGlobalProtectClientlessVpn) bool { @@ -1674,15 +1747,21 @@ func matchUpdateScheduleGlobalProtectClientlessVpn(a *UpdateScheduleGlobalProtec } return true } -func matchUpdateScheduleGlobalProtectDatafileRecurringNone(a *UpdateScheduleGlobalProtectDatafileRecurringNone, b *UpdateScheduleGlobalProtectDatafileRecurringNone) bool { +func matchUpdateScheduleGlobalProtectDatafileRecurringDaily(a *UpdateScheduleGlobalProtectDatafileRecurringDaily, b *UpdateScheduleGlobalProtectDatafileRecurringDaily) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } + if !util.StringsMatch(a.Action, b.Action) { + return false + } + if !util.StringsMatch(a.At, b.At) { + return false + } return true } -func matchUpdateScheduleGlobalProtectDatafileRecurringWeekly(a *UpdateScheduleGlobalProtectDatafileRecurringWeekly, b *UpdateScheduleGlobalProtectDatafileRecurringWeekly) bool { +func matchUpdateScheduleGlobalProtectDatafileRecurringHourly(a *UpdateScheduleGlobalProtectDatafileRecurringHourly, b *UpdateScheduleGlobalProtectDatafileRecurringHourly) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -1691,29 +1770,20 @@ func matchUpdateScheduleGlobalProtectDatafileRecurringWeekly(a *UpdateScheduleGl if !util.StringsMatch(a.Action, b.Action) { return false } - if !util.StringsMatch(a.At, b.At) { - return false - } - if !util.StringsMatch(a.DayOfWeek, b.DayOfWeek) { + if !util.Ints64Match(a.At, b.At) { return false } return true } -func matchUpdateScheduleGlobalProtectDatafileRecurringDaily(a *UpdateScheduleGlobalProtectDatafileRecurringDaily, b *UpdateScheduleGlobalProtectDatafileRecurringDaily) bool { +func matchUpdateScheduleGlobalProtectDatafileRecurringNone(a *UpdateScheduleGlobalProtectDatafileRecurringNone, b *UpdateScheduleGlobalProtectDatafileRecurringNone) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Action, b.Action) { - return false - } - if !util.StringsMatch(a.At, b.At) { - return false - } return true } -func matchUpdateScheduleGlobalProtectDatafileRecurringHourly(a *UpdateScheduleGlobalProtectDatafileRecurringHourly, b *UpdateScheduleGlobalProtectDatafileRecurringHourly) bool { +func matchUpdateScheduleGlobalProtectDatafileRecurringWeekly(a *UpdateScheduleGlobalProtectDatafileRecurringWeekly, b *UpdateScheduleGlobalProtectDatafileRecurringWeekly) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -1722,7 +1792,10 @@ func matchUpdateScheduleGlobalProtectDatafileRecurringHourly(a *UpdateScheduleGl if !util.StringsMatch(a.Action, b.Action) { return false } - if !util.Ints64Match(a.At, b.At) { + if !util.StringsMatch(a.At, b.At) { + return false + } + if !util.StringsMatch(a.DayOfWeek, b.DayOfWeek) { return false } return true @@ -1733,6 +1806,9 @@ func matchUpdateScheduleGlobalProtectDatafileRecurring(a *UpdateScheduleGlobalPr } else if a == nil && b == nil { return true } + if !matchUpdateScheduleGlobalProtectDatafileRecurringDaily(a.Daily, b.Daily) { + return false + } if !matchUpdateScheduleGlobalProtectDatafileRecurringHourly(a.Hourly, b.Hourly) { return false } @@ -1742,9 +1818,6 @@ func matchUpdateScheduleGlobalProtectDatafileRecurring(a *UpdateScheduleGlobalPr if !matchUpdateScheduleGlobalProtectDatafileRecurringWeekly(a.Weekly, b.Weekly) { return false } - if !matchUpdateScheduleGlobalProtectDatafileRecurringDaily(a.Daily, b.Daily) { - return false - } return true } func matchUpdateScheduleGlobalProtectDatafile(a *UpdateScheduleGlobalProtectDatafile, b *UpdateScheduleGlobalProtectDatafile) bool { @@ -1764,6 +1837,9 @@ func matchUpdateScheduleStatisticsService(a *UpdateScheduleStatisticsService, b } else if a == nil && b == nil { return true } + if !util.BoolsMatch(a.ThreatPreventionReports, b.ThreatPreventionReports) { + return false + } if !util.BoolsMatch(a.UrlReports, b.UrlReports) { return false } @@ -1785,37 +1861,26 @@ func matchUpdateScheduleStatisticsService(a *UpdateScheduleStatisticsService, b if !util.BoolsMatch(a.ThreatPreventionPcap, b.ThreatPreventionPcap) { return false } - if !util.BoolsMatch(a.ThreatPreventionReports, b.ThreatPreventionReports) { - return false - } return true } -func matchUpdateScheduleThreatsRecurringHourly(a *UpdateScheduleThreatsRecurringHourly, b *UpdateScheduleThreatsRecurringHourly) bool { +func matchUpdateScheduleThreatsRecurringDaily(a *UpdateScheduleThreatsRecurringDaily, b *UpdateScheduleThreatsRecurringDaily) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.BoolsMatch(a.DisableNewContent, b.DisableNewContent) { - return false - } if !util.StringsMatch(a.Action, b.Action) { return false } - if !util.Ints64Match(a.At, b.At) { + if !util.StringsMatch(a.At, b.At) { return false } - return true -} -func matchUpdateScheduleThreatsRecurringNone(a *UpdateScheduleThreatsRecurringNone, b *UpdateScheduleThreatsRecurringNone) bool { - if a == nil && b != nil || a != nil && b == nil { + if !util.BoolsMatch(a.DisableNewContent, b.DisableNewContent) { return false - } else if a == nil && b == nil { - return true } return true } -func matchUpdateScheduleThreatsRecurringWeekly(a *UpdateScheduleThreatsRecurringWeekly, b *UpdateScheduleThreatsRecurringWeekly) bool { +func matchUpdateScheduleThreatsRecurringEvery30Mins(a *UpdateScheduleThreatsRecurringEvery30Mins, b *UpdateScheduleThreatsRecurringEvery30Mins) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -1824,10 +1889,7 @@ func matchUpdateScheduleThreatsRecurringWeekly(a *UpdateScheduleThreatsRecurring if !util.StringsMatch(a.Action, b.Action) { return false } - if !util.StringsMatch(a.At, b.At) { - return false - } - if !util.StringsMatch(a.DayOfWeek, b.DayOfWeek) { + if !util.Ints64Match(a.At, b.At) { return false } if !util.BoolsMatch(a.DisableNewContent, b.DisableNewContent) { @@ -1835,7 +1897,7 @@ func matchUpdateScheduleThreatsRecurringWeekly(a *UpdateScheduleThreatsRecurring } return true } -func matchUpdateScheduleThreatsRecurringDaily(a *UpdateScheduleThreatsRecurringDaily, b *UpdateScheduleThreatsRecurringDaily) bool { +func matchUpdateScheduleThreatsRecurringHourly(a *UpdateScheduleThreatsRecurringHourly, b *UpdateScheduleThreatsRecurringHourly) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -1844,7 +1906,7 @@ func matchUpdateScheduleThreatsRecurringDaily(a *UpdateScheduleThreatsRecurringD if !util.StringsMatch(a.Action, b.Action) { return false } - if !util.StringsMatch(a.At, b.At) { + if !util.Ints64Match(a.At, b.At) { return false } if !util.BoolsMatch(a.DisableNewContent, b.DisableNewContent) { @@ -1852,7 +1914,15 @@ func matchUpdateScheduleThreatsRecurringDaily(a *UpdateScheduleThreatsRecurringD } return true } -func matchUpdateScheduleThreatsRecurringEvery30Mins(a *UpdateScheduleThreatsRecurringEvery30Mins, b *UpdateScheduleThreatsRecurringEvery30Mins) bool { +func matchUpdateScheduleThreatsRecurringNone(a *UpdateScheduleThreatsRecurringNone, b *UpdateScheduleThreatsRecurringNone) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + return true +} +func matchUpdateScheduleThreatsRecurringWeekly(a *UpdateScheduleThreatsRecurringWeekly, b *UpdateScheduleThreatsRecurringWeekly) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -1861,7 +1931,10 @@ func matchUpdateScheduleThreatsRecurringEvery30Mins(a *UpdateScheduleThreatsRecu if !util.StringsMatch(a.Action, b.Action) { return false } - if !util.Ints64Match(a.At, b.At) { + if !util.StringsMatch(a.At, b.At) { + return false + } + if !util.StringsMatch(a.DayOfWeek, b.DayOfWeek) { return false } if !util.BoolsMatch(a.DisableNewContent, b.DisableNewContent) { @@ -1884,19 +1957,19 @@ func matchUpdateScheduleThreatsRecurring(a *UpdateScheduleThreatsRecurring, b *U if !util.Ints64Match(a.Threshold, b.Threshold) { return false } - if !matchUpdateScheduleThreatsRecurringNone(a.None, b.None) { + if !matchUpdateScheduleThreatsRecurringEvery30Mins(a.Every30Mins, b.Every30Mins) { return false } - if !matchUpdateScheduleThreatsRecurringWeekly(a.Weekly, b.Weekly) { + if !matchUpdateScheduleThreatsRecurringHourly(a.Hourly, b.Hourly) { return false } - if !matchUpdateScheduleThreatsRecurringDaily(a.Daily, b.Daily) { + if !matchUpdateScheduleThreatsRecurringNone(a.None, b.None) { return false } - if !matchUpdateScheduleThreatsRecurringEvery30Mins(a.Every30Mins, b.Every30Mins) { + if !matchUpdateScheduleThreatsRecurringWeekly(a.Weekly, b.Weekly) { return false } - if !matchUpdateScheduleThreatsRecurringHourly(a.Hourly, b.Hourly) { + if !matchUpdateScheduleThreatsRecurringDaily(a.Daily, b.Daily) { return false } return true @@ -1912,7 +1985,7 @@ func matchUpdateScheduleThreats(a *UpdateScheduleThreats, b *UpdateScheduleThrea } return true } -func matchUpdateScheduleWfPrivateRecurringEvery15Mins(a *UpdateScheduleWfPrivateRecurringEvery15Mins, b *UpdateScheduleWfPrivateRecurringEvery15Mins) bool { +func matchUpdateScheduleWfPrivateRecurringEvery30Mins(a *UpdateScheduleWfPrivateRecurringEvery30Mins, b *UpdateScheduleWfPrivateRecurringEvery30Mins) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -1926,54 +1999,54 @@ func matchUpdateScheduleWfPrivateRecurringEvery15Mins(a *UpdateScheduleWfPrivate } return true } -func matchUpdateScheduleWfPrivateRecurringEvery30Mins(a *UpdateScheduleWfPrivateRecurringEvery30Mins, b *UpdateScheduleWfPrivateRecurringEvery30Mins) bool { +func matchUpdateScheduleWfPrivateRecurringEvery5Mins(a *UpdateScheduleWfPrivateRecurringEvery5Mins, b *UpdateScheduleWfPrivateRecurringEvery5Mins) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.Ints64Match(a.At, b.At) { + if !util.StringsMatch(a.Action, b.Action) { return false } - if !util.StringsMatch(a.Action, b.Action) { + if !util.Ints64Match(a.At, b.At) { return false } return true } -func matchUpdateScheduleWfPrivateRecurringEvery5Mins(a *UpdateScheduleWfPrivateRecurringEvery5Mins, b *UpdateScheduleWfPrivateRecurringEvery5Mins) bool { +func matchUpdateScheduleWfPrivateRecurringEveryHour(a *UpdateScheduleWfPrivateRecurringEveryHour, b *UpdateScheduleWfPrivateRecurringEveryHour) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Action, b.Action) { + if !util.Ints64Match(a.At, b.At) { return false } - if !util.Ints64Match(a.At, b.At) { + if !util.StringsMatch(a.Action, b.Action) { return false } return true } -func matchUpdateScheduleWfPrivateRecurringEveryHour(a *UpdateScheduleWfPrivateRecurringEveryHour, b *UpdateScheduleWfPrivateRecurringEveryHour) bool { +func matchUpdateScheduleWfPrivateRecurringNone(a *UpdateScheduleWfPrivateRecurringNone, b *UpdateScheduleWfPrivateRecurringNone) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Action, b.Action) { - return false - } - if !util.Ints64Match(a.At, b.At) { - return false - } return true } -func matchUpdateScheduleWfPrivateRecurringNone(a *UpdateScheduleWfPrivateRecurringNone, b *UpdateScheduleWfPrivateRecurringNone) bool { +func matchUpdateScheduleWfPrivateRecurringEvery15Mins(a *UpdateScheduleWfPrivateRecurringEvery15Mins, b *UpdateScheduleWfPrivateRecurringEvery15Mins) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } + if !util.StringsMatch(a.Action, b.Action) { + return false + } + if !util.Ints64Match(a.At, b.At) { + return false + } return true } func matchUpdateScheduleWfPrivateRecurring(a *UpdateScheduleWfPrivateRecurring, b *UpdateScheduleWfPrivateRecurring) bool { @@ -2019,15 +2092,15 @@ func matchUpdateScheduleWildfireRecurringEvery15Mins(a *UpdateScheduleWildfireRe } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Action, b.Action) { - return false - } if !util.Ints64Match(a.At, b.At) { return false } if !util.BoolsMatch(a.SyncToPeer, b.SyncToPeer) { return false } + if !util.StringsMatch(a.Action, b.Action) { + return false + } return true } func matchUpdateScheduleWildfireRecurringEvery30Mins(a *UpdateScheduleWildfireRecurringEvery30Mins, b *UpdateScheduleWildfireRecurringEvery30Mins) bool { @@ -2053,15 +2126,15 @@ func matchUpdateScheduleWildfireRecurringEveryHour(a *UpdateScheduleWildfireRecu } else if a == nil && b == nil { return true } - if !util.BoolsMatch(a.SyncToPeer, b.SyncToPeer) { - return false - } if !util.StringsMatch(a.Action, b.Action) { return false } if !util.Ints64Match(a.At, b.At) { return false } + if !util.BoolsMatch(a.SyncToPeer, b.SyncToPeer) { + return false + } return true } func matchUpdateScheduleWildfireRecurringEveryMin(a *UpdateScheduleWildfireRecurringEveryMin, b *UpdateScheduleWildfireRecurringEveryMin) bool { @@ -2100,22 +2173,22 @@ func matchUpdateScheduleWildfireRecurring(a *UpdateScheduleWildfireRecurring, b } else if a == nil && b == nil { return true } - if !matchUpdateScheduleWildfireRecurringEveryHour(a.EveryHour, b.EveryHour) { + if !matchUpdateScheduleWildfireRecurringEvery15Mins(a.Every15Mins, b.Every15Mins) { return false } - if !matchUpdateScheduleWildfireRecurringEveryMin(a.EveryMin, b.EveryMin) { + if !matchUpdateScheduleWildfireRecurringEvery30Mins(a.Every30Mins, b.Every30Mins) { return false } - if !matchUpdateScheduleWildfireRecurringNone(a.None, b.None) { + if !matchUpdateScheduleWildfireRecurringEveryHour(a.EveryHour, b.EveryHour) { return false } - if !matchUpdateScheduleWildfireRecurringRealTime(a.RealTime, b.RealTime) { + if !matchUpdateScheduleWildfireRecurringEveryMin(a.EveryMin, b.EveryMin) { return false } - if !matchUpdateScheduleWildfireRecurringEvery15Mins(a.Every15Mins, b.Every15Mins) { + if !matchUpdateScheduleWildfireRecurringNone(a.None, b.None) { return false } - if !matchUpdateScheduleWildfireRecurringEvery30Mins(a.Every30Mins, b.Every30Mins) { + if !matchUpdateScheduleWildfireRecurringRealTime(a.RealTime, b.RealTime) { return false } return true @@ -2151,10 +2224,10 @@ func matchUpdateScheduleAntiVirusRecurringHourly(a *UpdateScheduleAntiVirusRecur } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Action, b.Action) { + if !util.Ints64Match(a.At, b.At) { return false } - if !util.Ints64Match(a.At, b.At) { + if !util.StringsMatch(a.Action, b.Action) { return false } return true @@ -2190,16 +2263,10 @@ func matchUpdateScheduleAntiVirusRecurring(a *UpdateScheduleAntiVirusRecurring, } else if a == nil && b == nil { return true } - if !util.Ints64Match(a.Threshold, b.Threshold) { - return false - } if !util.BoolsMatch(a.SyncToPeer, b.SyncToPeer) { return false } - if !matchUpdateScheduleAntiVirusRecurringDaily(a.Daily, b.Daily) { - return false - } - if !matchUpdateScheduleAntiVirusRecurringHourly(a.Hourly, b.Hourly) { + if !util.Ints64Match(a.Threshold, b.Threshold) { return false } if !matchUpdateScheduleAntiVirusRecurringNone(a.None, b.None) { @@ -2208,97 +2275,42 @@ func matchUpdateScheduleAntiVirusRecurring(a *UpdateScheduleAntiVirusRecurring, if !matchUpdateScheduleAntiVirusRecurringWeekly(a.Weekly, b.Weekly) { return false } - return true -} -func matchUpdateScheduleAntiVirus(a *UpdateScheduleAntiVirus, b *UpdateScheduleAntiVirus) bool { - if a == nil && b != nil || a != nil && b == nil { - return false - } else if a == nil && b == nil { - return true - } - if !matchUpdateScheduleAntiVirusRecurring(a.Recurring, b.Recurring) { - return false - } - return true -} -func matchUpdateScheduleAppProfileRecurringDaily(a *UpdateScheduleAppProfileRecurringDaily, b *UpdateScheduleAppProfileRecurringDaily) bool { - if a == nil && b != nil || a != nil && b == nil { - return false - } else if a == nil && b == nil { - return true - } - if !util.StringsMatch(a.At, b.At) { - return false - } - if !util.StringsMatch(a.Action, b.Action) { + if !matchUpdateScheduleAntiVirusRecurringDaily(a.Daily, b.Daily) { return false } - return true -} -func matchUpdateScheduleAppProfileRecurringNone(a *UpdateScheduleAppProfileRecurringNone, b *UpdateScheduleAppProfileRecurringNone) bool { - if a == nil && b != nil || a != nil && b == nil { + if !matchUpdateScheduleAntiVirusRecurringHourly(a.Hourly, b.Hourly) { return false - } else if a == nil && b == nil { - return true } return true } -func matchUpdateScheduleAppProfileRecurringWeekly(a *UpdateScheduleAppProfileRecurringWeekly, b *UpdateScheduleAppProfileRecurringWeekly) bool { +func matchUpdateScheduleAntiVirus(a *UpdateScheduleAntiVirus, b *UpdateScheduleAntiVirus) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.At, b.At) { - return false - } - if !util.StringsMatch(a.DayOfWeek, b.DayOfWeek) { - return false - } - if !util.StringsMatch(a.Action, b.Action) { + if !matchUpdateScheduleAntiVirusRecurring(a.Recurring, b.Recurring) { return false } return true } -func matchUpdateScheduleAppProfileRecurring(a *UpdateScheduleAppProfileRecurring, b *UpdateScheduleAppProfileRecurring) bool { +func matchUpdateSchedule(a *UpdateSchedule, b *UpdateSchedule) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.BoolsMatch(a.SyncToPeer, b.SyncToPeer) { - return false - } - if !util.Ints64Match(a.Threshold, b.Threshold) { - return false - } - if !matchUpdateScheduleAppProfileRecurringDaily(a.Daily, b.Daily) { - return false - } - if !matchUpdateScheduleAppProfileRecurringNone(a.None, b.None) { - return false - } - if !matchUpdateScheduleAppProfileRecurringWeekly(a.Weekly, b.Weekly) { + if !matchUpdateScheduleWfPrivate(a.WfPrivate, b.WfPrivate) { return false } - return true -} -func matchUpdateScheduleAppProfile(a *UpdateScheduleAppProfile, b *UpdateScheduleAppProfile) bool { - if a == nil && b != nil || a != nil && b == nil { + if !matchUpdateScheduleWildfire(a.Wildfire, b.Wildfire) { return false - } else if a == nil && b == nil { - return true } - if !matchUpdateScheduleAppProfileRecurring(a.Recurring, b.Recurring) { + if !matchUpdateScheduleAntiVirus(a.AntiVirus, b.AntiVirus) { return false } - return true -} -func matchUpdateSchedule(a *UpdateSchedule, b *UpdateSchedule) bool { - if a == nil && b != nil || a != nil && b == nil { + if !matchUpdateScheduleAppProfile(a.AppProfile, b.AppProfile) { return false - } else if a == nil && b == nil { - return true } if !matchUpdateScheduleGlobalProtectClientlessVpn(a.GlobalProtectClientlessVpn, b.GlobalProtectClientlessVpn) { return false @@ -2312,17 +2324,5 @@ func matchUpdateSchedule(a *UpdateSchedule, b *UpdateSchedule) bool { if !matchUpdateScheduleThreats(a.Threats, b.Threats) { return false } - if !matchUpdateScheduleWfPrivate(a.WfPrivate, b.WfPrivate) { - return false - } - if !matchUpdateScheduleWildfire(a.Wildfire, b.Wildfire) { - return false - } - if !matchUpdateScheduleAntiVirus(a.AntiVirus, b.AntiVirus) { - return false - } - if !matchUpdateScheduleAppProfile(a.AppProfile, b.AppProfile) { - return false - } return true } diff --git a/device/services/dns/config.go b/device/services/dns/config.go index 4e04f76..fbb56c9 100644 --- a/device/services/dns/config.go +++ b/device/services/dns/config.go @@ -60,12 +60,12 @@ func specifyConfig(o *Config) (any, error) { if _, ok := o.Misc["DnsSettingServers"]; ok { nestedDnsSetting.Servers.Misc = o.Misc["DnsSettingServers"] } - if o.DnsSetting.Servers.Primary != nil { - nestedDnsSetting.Servers.Primary = o.DnsSetting.Servers.Primary - } if o.DnsSetting.Servers.Secondary != nil { nestedDnsSetting.Servers.Secondary = o.DnsSetting.Servers.Secondary } + if o.DnsSetting.Servers.Primary != nil { + nestedDnsSetting.Servers.Primary = o.DnsSetting.Servers.Primary + } } } config.DnsSetting = nestedDnsSetting diff --git a/device/services/ntp/config.go b/device/services/ntp/config.go index c7734fa..27deede 100644 --- a/device/services/ntp/config.go +++ b/device/services/ntp/config.go @@ -251,18 +251,6 @@ func specifyConfig(o *Config) (any, error) { if _, ok := o.Misc["NtpServersSecondaryNtpServerAuthenticationType"]; ok { nestedNtpServers.SecondaryNtpServer.AuthenticationType.Misc = o.Misc["NtpServersSecondaryNtpServerAuthenticationType"] } - if o.NtpServers.SecondaryNtpServer.AuthenticationType.Autokey != nil { - nestedNtpServers.SecondaryNtpServer.AuthenticationType.Autokey = &NtpServersSecondaryNtpServerAuthenticationTypeAutokeyXml{} - if _, ok := o.Misc["NtpServersSecondaryNtpServerAuthenticationTypeAutokey"]; ok { - nestedNtpServers.SecondaryNtpServer.AuthenticationType.Autokey.Misc = o.Misc["NtpServersSecondaryNtpServerAuthenticationTypeAutokey"] - } - } - if o.NtpServers.SecondaryNtpServer.AuthenticationType.None != nil { - nestedNtpServers.SecondaryNtpServer.AuthenticationType.None = &NtpServersSecondaryNtpServerAuthenticationTypeNoneXml{} - if _, ok := o.Misc["NtpServersSecondaryNtpServerAuthenticationTypeNone"]; ok { - nestedNtpServers.SecondaryNtpServer.AuthenticationType.None.Misc = o.Misc["NtpServersSecondaryNtpServerAuthenticationTypeNone"] - } - } if o.NtpServers.SecondaryNtpServer.AuthenticationType.SymmetricKey != nil { nestedNtpServers.SecondaryNtpServer.AuthenticationType.SymmetricKey = &NtpServersSecondaryNtpServerAuthenticationTypeSymmetricKeyXml{} if _, ok := o.Misc["NtpServersSecondaryNtpServerAuthenticationTypeSymmetricKey"]; ok { @@ -296,6 +284,18 @@ func specifyConfig(o *Config) (any, error) { nestedNtpServers.SecondaryNtpServer.AuthenticationType.SymmetricKey.KeyId = o.NtpServers.SecondaryNtpServer.AuthenticationType.SymmetricKey.KeyId } } + if o.NtpServers.SecondaryNtpServer.AuthenticationType.Autokey != nil { + nestedNtpServers.SecondaryNtpServer.AuthenticationType.Autokey = &NtpServersSecondaryNtpServerAuthenticationTypeAutokeyXml{} + if _, ok := o.Misc["NtpServersSecondaryNtpServerAuthenticationTypeAutokey"]; ok { + nestedNtpServers.SecondaryNtpServer.AuthenticationType.Autokey.Misc = o.Misc["NtpServersSecondaryNtpServerAuthenticationTypeAutokey"] + } + } + if o.NtpServers.SecondaryNtpServer.AuthenticationType.None != nil { + nestedNtpServers.SecondaryNtpServer.AuthenticationType.None = &NtpServersSecondaryNtpServerAuthenticationTypeNoneXml{} + if _, ok := o.Misc["NtpServersSecondaryNtpServerAuthenticationTypeNone"]; ok { + nestedNtpServers.SecondaryNtpServer.AuthenticationType.None.Misc = o.Misc["NtpServersSecondaryNtpServerAuthenticationTypeNone"] + } + } } if o.NtpServers.SecondaryNtpServer.NtpServerAddress != nil { nestedNtpServers.SecondaryNtpServer.NtpServerAddress = o.NtpServers.SecondaryNtpServer.NtpServerAddress @@ -330,12 +330,6 @@ func (c *configXmlContainer) Normalize() ([]*Config, error) { if o.NtpServers.PrimaryNtpServer.AuthenticationType.Misc != nil { config.Misc["NtpServersPrimaryNtpServerAuthenticationType"] = o.NtpServers.PrimaryNtpServer.AuthenticationType.Misc } - if o.NtpServers.PrimaryNtpServer.AuthenticationType.Autokey != nil { - nestedNtpServers.PrimaryNtpServer.AuthenticationType.Autokey = &NtpServersPrimaryNtpServerAuthenticationTypeAutokey{} - if o.NtpServers.PrimaryNtpServer.AuthenticationType.Autokey.Misc != nil { - config.Misc["NtpServersPrimaryNtpServerAuthenticationTypeAutokey"] = o.NtpServers.PrimaryNtpServer.AuthenticationType.Autokey.Misc - } - } if o.NtpServers.PrimaryNtpServer.AuthenticationType.None != nil { nestedNtpServers.PrimaryNtpServer.AuthenticationType.None = &NtpServersPrimaryNtpServerAuthenticationTypeNone{} if o.NtpServers.PrimaryNtpServer.AuthenticationType.None.Misc != nil { @@ -375,6 +369,12 @@ func (c *configXmlContainer) Normalize() ([]*Config, error) { nestedNtpServers.PrimaryNtpServer.AuthenticationType.SymmetricKey.KeyId = o.NtpServers.PrimaryNtpServer.AuthenticationType.SymmetricKey.KeyId } } + if o.NtpServers.PrimaryNtpServer.AuthenticationType.Autokey != nil { + nestedNtpServers.PrimaryNtpServer.AuthenticationType.Autokey = &NtpServersPrimaryNtpServerAuthenticationTypeAutokey{} + if o.NtpServers.PrimaryNtpServer.AuthenticationType.Autokey.Misc != nil { + config.Misc["NtpServersPrimaryNtpServerAuthenticationTypeAutokey"] = o.NtpServers.PrimaryNtpServer.AuthenticationType.Autokey.Misc + } + } } if o.NtpServers.PrimaryNtpServer.NtpServerAddress != nil { nestedNtpServers.PrimaryNtpServer.NtpServerAddress = o.NtpServers.PrimaryNtpServer.NtpServerAddress @@ -555,10 +555,10 @@ func matchNtpServersPrimaryNtpServer(a *NtpServersPrimaryNtpServer, b *NtpServer } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.NtpServerAddress, b.NtpServerAddress) { + if !matchNtpServersPrimaryNtpServerAuthenticationType(a.AuthenticationType, b.AuthenticationType) { return false } - if !matchNtpServersPrimaryNtpServerAuthenticationType(a.AuthenticationType, b.AuthenticationType) { + if !util.StringsMatch(a.NtpServerAddress, b.NtpServerAddress) { return false } return true @@ -621,10 +621,10 @@ func matchNtpServersSecondaryNtpServerAuthenticationTypeSymmetricKey(a *NtpServe } else if a == nil && b == nil { return true } - if !matchNtpServersSecondaryNtpServerAuthenticationTypeSymmetricKeyAlgorithm(a.Algorithm, b.Algorithm) { + if !util.Ints64Match(a.KeyId, b.KeyId) { return false } - if !util.Ints64Match(a.KeyId, b.KeyId) { + if !matchNtpServersSecondaryNtpServerAuthenticationTypeSymmetricKeyAlgorithm(a.Algorithm, b.Algorithm) { return false } return true @@ -652,10 +652,10 @@ func matchNtpServersSecondaryNtpServer(a *NtpServersSecondaryNtpServer, b *NtpSe } else if a == nil && b == nil { return true } - if !matchNtpServersSecondaryNtpServerAuthenticationType(a.AuthenticationType, b.AuthenticationType) { + if !util.StringsMatch(a.NtpServerAddress, b.NtpServerAddress) { return false } - if !util.StringsMatch(a.NtpServerAddress, b.NtpServerAddress) { + if !matchNtpServersSecondaryNtpServerAuthenticationType(a.AuthenticationType, b.AuthenticationType) { return false } return true @@ -666,10 +666,10 @@ func matchNtpServers(a *NtpServers, b *NtpServers) bool { } else if a == nil && b == nil { return true } - if !matchNtpServersPrimaryNtpServer(a.PrimaryNtpServer, b.PrimaryNtpServer) { + if !matchNtpServersSecondaryNtpServer(a.SecondaryNtpServer, b.SecondaryNtpServer) { return false } - if !matchNtpServersSecondaryNtpServer(a.SecondaryNtpServer, b.SecondaryNtpServer) { + if !matchNtpServersPrimaryNtpServer(a.PrimaryNtpServer, b.PrimaryNtpServer) { return false } return true diff --git a/network/interface/aggregate/entry.go b/network/interface/aggregate/entry.go index 2cb1a0a..d670431 100644 --- a/network/interface/aggregate/entry.go +++ b/network/interface/aggregate/entry.go @@ -1120,15 +1120,6 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["HaLacp"]; ok { nestedHa.Lacp.Misc = o.Misc["HaLacp"] } - if o.Ha.Lacp.Enable != nil { - nestedHa.Lacp.Enable = util.YesNo(o.Ha.Lacp.Enable, nil) - } - if o.Ha.Lacp.FastFailover != nil { - nestedHa.Lacp.FastFailover = util.YesNo(o.Ha.Lacp.FastFailover, nil) - } - if o.Ha.Lacp.MaxPorts != nil { - nestedHa.Lacp.MaxPorts = o.Ha.Lacp.MaxPorts - } if o.Ha.Lacp.Mode != nil { nestedHa.Lacp.Mode = o.Ha.Lacp.Mode } @@ -1138,6 +1129,15 @@ func specifyEntry(o *Entry) (any, error) { if o.Ha.Lacp.TransmissionRate != nil { nestedHa.Lacp.TransmissionRate = o.Ha.Lacp.TransmissionRate } + if o.Ha.Lacp.Enable != nil { + nestedHa.Lacp.Enable = util.YesNo(o.Ha.Lacp.Enable, nil) + } + if o.Ha.Lacp.FastFailover != nil { + nestedHa.Lacp.FastFailover = util.YesNo(o.Ha.Lacp.FastFailover, nil) + } + if o.Ha.Lacp.MaxPorts != nil { + nestedHa.Lacp.MaxPorts = o.Ha.Lacp.MaxPorts + } } } entry.Ha = nestedHa @@ -1153,6 +1153,9 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["Layer2Lacp"]; ok { nestedLayer2.Lacp.Misc = o.Misc["Layer2Lacp"] } + if o.Layer2.Lacp.FastFailover != nil { + nestedLayer2.Lacp.FastFailover = util.YesNo(o.Layer2.Lacp.FastFailover, nil) + } if o.Layer2.Lacp.HighAvailability != nil { nestedLayer2.Lacp.HighAvailability = &Layer2LacpHighAvailabilityXml{} if _, ok := o.Misc["Layer2LacpHighAvailability"]; ok { @@ -1177,9 +1180,6 @@ func specifyEntry(o *Entry) (any, error) { if o.Layer2.Lacp.Enable != nil { nestedLayer2.Lacp.Enable = util.YesNo(o.Layer2.Lacp.Enable, nil) } - if o.Layer2.Lacp.FastFailover != nil { - nestedLayer2.Lacp.FastFailover = util.YesNo(o.Layer2.Lacp.FastFailover, nil) - } } if o.Layer2.Lldp != nil { nestedLayer2.Lldp = &Layer2LldpXml{} @@ -1214,78 +1214,21 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["Layer3"]; ok { nestedLayer3.Misc = o.Misc["Layer3"] } - if o.Layer3.DhcpClient != nil { - nestedLayer3.DhcpClient = &Layer3DhcpClientXml{} - if _, ok := o.Misc["Layer3DhcpClient"]; ok { - nestedLayer3.DhcpClient.Misc = o.Misc["Layer3DhcpClient"] - } - if o.Layer3.DhcpClient.DefaultRouteMetric != nil { - nestedLayer3.DhcpClient.DefaultRouteMetric = o.Layer3.DhcpClient.DefaultRouteMetric - } - if o.Layer3.DhcpClient.Enable != nil { - nestedLayer3.DhcpClient.Enable = util.YesNo(o.Layer3.DhcpClient.Enable, nil) - } - if o.Layer3.DhcpClient.SendHostname != nil { - nestedLayer3.DhcpClient.SendHostname = &Layer3DhcpClientSendHostnameXml{} - if _, ok := o.Misc["Layer3DhcpClientSendHostname"]; ok { - nestedLayer3.DhcpClient.SendHostname.Misc = o.Misc["Layer3DhcpClientSendHostname"] - } - if o.Layer3.DhcpClient.SendHostname.Enable != nil { - nestedLayer3.DhcpClient.SendHostname.Enable = util.YesNo(o.Layer3.DhcpClient.SendHostname.Enable, nil) - } - if o.Layer3.DhcpClient.SendHostname.Hostname != nil { - nestedLayer3.DhcpClient.SendHostname.Hostname = o.Layer3.DhcpClient.SendHostname.Hostname - } - } - if o.Layer3.DhcpClient.CreateDefaultRoute != nil { - nestedLayer3.DhcpClient.CreateDefaultRoute = util.YesNo(o.Layer3.DhcpClient.CreateDefaultRoute, nil) - } - } - if o.Layer3.InterfaceManagementProfile != nil { - nestedLayer3.InterfaceManagementProfile = o.Layer3.InterfaceManagementProfile - } - if o.Layer3.SdwanLinkSettings != nil { - nestedLayer3.SdwanLinkSettings = &Layer3SdwanLinkSettingsXml{} - if _, ok := o.Misc["Layer3SdwanLinkSettings"]; ok { - nestedLayer3.SdwanLinkSettings.Misc = o.Misc["Layer3SdwanLinkSettings"] + if o.Layer3.Bonjour != nil { + nestedLayer3.Bonjour = &Layer3BonjourXml{} + if _, ok := o.Misc["Layer3Bonjour"]; ok { + nestedLayer3.Bonjour.Misc = o.Misc["Layer3Bonjour"] } - if o.Layer3.SdwanLinkSettings.Enable != nil { - nestedLayer3.SdwanLinkSettings.Enable = util.YesNo(o.Layer3.SdwanLinkSettings.Enable, nil) + if o.Layer3.Bonjour.Enable != nil { + nestedLayer3.Bonjour.Enable = util.YesNo(o.Layer3.Bonjour.Enable, nil) } - if o.Layer3.SdwanLinkSettings.SdwanInterfaceProfile != nil { - nestedLayer3.SdwanLinkSettings.SdwanInterfaceProfile = o.Layer3.SdwanLinkSettings.SdwanInterfaceProfile + if o.Layer3.Bonjour.GroupId != nil { + nestedLayer3.Bonjour.GroupId = o.Layer3.Bonjour.GroupId } - if o.Layer3.SdwanLinkSettings.UpstreamNat != nil { - nestedLayer3.SdwanLinkSettings.UpstreamNat = &Layer3SdwanLinkSettingsUpstreamNatXml{} - if _, ok := o.Misc["Layer3SdwanLinkSettingsUpstreamNat"]; ok { - nestedLayer3.SdwanLinkSettings.UpstreamNat.Misc = o.Misc["Layer3SdwanLinkSettingsUpstreamNat"] - } - if o.Layer3.SdwanLinkSettings.UpstreamNat.Enable != nil { - nestedLayer3.SdwanLinkSettings.UpstreamNat.Enable = util.YesNo(o.Layer3.SdwanLinkSettings.UpstreamNat.Enable, nil) - } - if o.Layer3.SdwanLinkSettings.UpstreamNat.Ddns != nil { - nestedLayer3.SdwanLinkSettings.UpstreamNat.Ddns = &Layer3SdwanLinkSettingsUpstreamNatDdnsXml{} - if _, ok := o.Misc["Layer3SdwanLinkSettingsUpstreamNatDdns"]; ok { - nestedLayer3.SdwanLinkSettings.UpstreamNat.Ddns.Misc = o.Misc["Layer3SdwanLinkSettingsUpstreamNatDdns"] - } - } - if o.Layer3.SdwanLinkSettings.UpstreamNat.StaticIp != nil { - nestedLayer3.SdwanLinkSettings.UpstreamNat.StaticIp = &Layer3SdwanLinkSettingsUpstreamNatStaticIpXml{} - if _, ok := o.Misc["Layer3SdwanLinkSettingsUpstreamNatStaticIp"]; ok { - nestedLayer3.SdwanLinkSettings.UpstreamNat.StaticIp.Misc = o.Misc["Layer3SdwanLinkSettingsUpstreamNatStaticIp"] - } - if o.Layer3.SdwanLinkSettings.UpstreamNat.StaticIp.Fqdn != nil { - nestedLayer3.SdwanLinkSettings.UpstreamNat.StaticIp.Fqdn = o.Layer3.SdwanLinkSettings.UpstreamNat.StaticIp.Fqdn - } - if o.Layer3.SdwanLinkSettings.UpstreamNat.StaticIp.IpAddress != nil { - nestedLayer3.SdwanLinkSettings.UpstreamNat.StaticIp.IpAddress = o.Layer3.SdwanLinkSettings.UpstreamNat.StaticIp.IpAddress - } - } + if o.Layer3.Bonjour.TtlCheck != nil { + nestedLayer3.Bonjour.TtlCheck = util.YesNo(o.Layer3.Bonjour.TtlCheck, nil) } } - if o.Layer3.UntaggedSubInterface != nil { - nestedLayer3.UntaggedSubInterface = util.YesNo(o.Layer3.UntaggedSubInterface, nil) - } if o.Layer3.DfIgnore != nil { nestedLayer3.DfIgnore = util.YesNo(o.Layer3.DfIgnore, nil) } @@ -1296,12 +1239,12 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["Layer3Ip"]; ok { nestedLayer3Ip.Misc = o.Misc["Layer3Ip"] } - if oLayer3Ip.Name != "" { - nestedLayer3Ip.Name = oLayer3Ip.Name - } if oLayer3Ip.SdwanGateway != nil { nestedLayer3Ip.SdwanGateway = oLayer3Ip.SdwanGateway } + if oLayer3Ip.Name != "" { + nestedLayer3Ip.Name = oLayer3Ip.Name + } nestedLayer3.Ip = append(nestedLayer3.Ip, nestedLayer3Ip) } } @@ -1310,6 +1253,12 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["Layer3Lacp"]; ok { nestedLayer3.Lacp.Misc = o.Misc["Layer3Lacp"] } + if o.Layer3.Lacp.Mode != nil { + nestedLayer3.Lacp.Mode = o.Layer3.Lacp.Mode + } + if o.Layer3.Lacp.SystemPriority != nil { + nestedLayer3.Lacp.SystemPriority = o.Layer3.Lacp.SystemPriority + } if o.Layer3.Lacp.TransmissionRate != nil { nestedLayer3.Lacp.TransmissionRate = o.Layer3.Lacp.TransmissionRate } @@ -1331,41 +1280,84 @@ func specifyEntry(o *Entry) (any, error) { if o.Layer3.Lacp.MaxPorts != nil { nestedLayer3.Lacp.MaxPorts = o.Layer3.Lacp.MaxPorts } - if o.Layer3.Lacp.Mode != nil { - nestedLayer3.Lacp.Mode = o.Layer3.Lacp.Mode - } - if o.Layer3.Lacp.SystemPriority != nil { - nestedLayer3.Lacp.SystemPriority = o.Layer3.Lacp.SystemPriority + } + if o.Layer3.UntaggedSubInterface != nil { + nestedLayer3.UntaggedSubInterface = util.YesNo(o.Layer3.UntaggedSubInterface, nil) + } + if o.Layer3.Arp != nil { + nestedLayer3.Arp = []Layer3ArpXml{} + for _, oLayer3Arp := range o.Layer3.Arp { + nestedLayer3Arp := Layer3ArpXml{} + if _, ok := o.Misc["Layer3Arp"]; ok { + nestedLayer3Arp.Misc = o.Misc["Layer3Arp"] + } + if oLayer3Arp.HwAddress != nil { + nestedLayer3Arp.HwAddress = oLayer3Arp.HwAddress + } + if oLayer3Arp.Name != "" { + nestedLayer3Arp.Name = oLayer3Arp.Name + } + nestedLayer3.Arp = append(nestedLayer3.Arp, nestedLayer3Arp) } } - if o.Layer3.AdjustTcpMss != nil { - nestedLayer3.AdjustTcpMss = &Layer3AdjustTcpMssXml{} - if _, ok := o.Misc["Layer3AdjustTcpMss"]; ok { - nestedLayer3.AdjustTcpMss.Misc = o.Misc["Layer3AdjustTcpMss"] + if o.Layer3.Lldp != nil { + nestedLayer3.Lldp = &Layer3LldpXml{} + if _, ok := o.Misc["Layer3Lldp"]; ok { + nestedLayer3.Lldp.Misc = o.Misc["Layer3Lldp"] } - if o.Layer3.AdjustTcpMss.Ipv6MssAdjustment != nil { - nestedLayer3.AdjustTcpMss.Ipv6MssAdjustment = o.Layer3.AdjustTcpMss.Ipv6MssAdjustment + if o.Layer3.Lldp.Profile != nil { + nestedLayer3.Lldp.Profile = o.Layer3.Lldp.Profile } - if o.Layer3.AdjustTcpMss.Enable != nil { - nestedLayer3.AdjustTcpMss.Enable = util.YesNo(o.Layer3.AdjustTcpMss.Enable, nil) + if o.Layer3.Lldp.Enable != nil { + nestedLayer3.Lldp.Enable = util.YesNo(o.Layer3.Lldp.Enable, nil) } - if o.Layer3.AdjustTcpMss.Ipv4MssAdjustment != nil { - nestedLayer3.AdjustTcpMss.Ipv4MssAdjustment = o.Layer3.AdjustTcpMss.Ipv4MssAdjustment + if o.Layer3.Lldp.HighAvailability != nil { + nestedLayer3.Lldp.HighAvailability = &Layer3LldpHighAvailabilityXml{} + if _, ok := o.Misc["Layer3LldpHighAvailability"]; ok { + nestedLayer3.Lldp.HighAvailability.Misc = o.Misc["Layer3LldpHighAvailability"] + } + if o.Layer3.Lldp.HighAvailability.PassivePreNegotiation != nil { + nestedLayer3.Lldp.HighAvailability.PassivePreNegotiation = util.YesNo(o.Layer3.Lldp.HighAvailability.PassivePreNegotiation, nil) + } } } - if o.Layer3.Bonjour != nil { - nestedLayer3.Bonjour = &Layer3BonjourXml{} - if _, ok := o.Misc["Layer3Bonjour"]; ok { - nestedLayer3.Bonjour.Misc = o.Misc["Layer3Bonjour"] + if o.Layer3.SdwanLinkSettings != nil { + nestedLayer3.SdwanLinkSettings = &Layer3SdwanLinkSettingsXml{} + if _, ok := o.Misc["Layer3SdwanLinkSettings"]; ok { + nestedLayer3.SdwanLinkSettings.Misc = o.Misc["Layer3SdwanLinkSettings"] } - if o.Layer3.Bonjour.Enable != nil { - nestedLayer3.Bonjour.Enable = util.YesNo(o.Layer3.Bonjour.Enable, nil) + if o.Layer3.SdwanLinkSettings.Enable != nil { + nestedLayer3.SdwanLinkSettings.Enable = util.YesNo(o.Layer3.SdwanLinkSettings.Enable, nil) } - if o.Layer3.Bonjour.GroupId != nil { - nestedLayer3.Bonjour.GroupId = o.Layer3.Bonjour.GroupId + if o.Layer3.SdwanLinkSettings.SdwanInterfaceProfile != nil { + nestedLayer3.SdwanLinkSettings.SdwanInterfaceProfile = o.Layer3.SdwanLinkSettings.SdwanInterfaceProfile } - if o.Layer3.Bonjour.TtlCheck != nil { - nestedLayer3.Bonjour.TtlCheck = util.YesNo(o.Layer3.Bonjour.TtlCheck, nil) + if o.Layer3.SdwanLinkSettings.UpstreamNat != nil { + nestedLayer3.SdwanLinkSettings.UpstreamNat = &Layer3SdwanLinkSettingsUpstreamNatXml{} + if _, ok := o.Misc["Layer3SdwanLinkSettingsUpstreamNat"]; ok { + nestedLayer3.SdwanLinkSettings.UpstreamNat.Misc = o.Misc["Layer3SdwanLinkSettingsUpstreamNat"] + } + if o.Layer3.SdwanLinkSettings.UpstreamNat.Enable != nil { + nestedLayer3.SdwanLinkSettings.UpstreamNat.Enable = util.YesNo(o.Layer3.SdwanLinkSettings.UpstreamNat.Enable, nil) + } + if o.Layer3.SdwanLinkSettings.UpstreamNat.StaticIp != nil { + nestedLayer3.SdwanLinkSettings.UpstreamNat.StaticIp = &Layer3SdwanLinkSettingsUpstreamNatStaticIpXml{} + if _, ok := o.Misc["Layer3SdwanLinkSettingsUpstreamNatStaticIp"]; ok { + nestedLayer3.SdwanLinkSettings.UpstreamNat.StaticIp.Misc = o.Misc["Layer3SdwanLinkSettingsUpstreamNatStaticIp"] + } + if o.Layer3.SdwanLinkSettings.UpstreamNat.StaticIp.Fqdn != nil { + nestedLayer3.SdwanLinkSettings.UpstreamNat.StaticIp.Fqdn = o.Layer3.SdwanLinkSettings.UpstreamNat.StaticIp.Fqdn + } + if o.Layer3.SdwanLinkSettings.UpstreamNat.StaticIp.IpAddress != nil { + nestedLayer3.SdwanLinkSettings.UpstreamNat.StaticIp.IpAddress = o.Layer3.SdwanLinkSettings.UpstreamNat.StaticIp.IpAddress + } + } + if o.Layer3.SdwanLinkSettings.UpstreamNat.Ddns != nil { + nestedLayer3.SdwanLinkSettings.UpstreamNat.Ddns = &Layer3SdwanLinkSettingsUpstreamNatDdnsXml{} + if _, ok := o.Misc["Layer3SdwanLinkSettingsUpstreamNatDdns"]; ok { + nestedLayer3.SdwanLinkSettings.UpstreamNat.Ddns.Misc = o.Misc["Layer3SdwanLinkSettingsUpstreamNatDdns"] + } + } } } if o.Layer3.DdnsConfig != nil { @@ -1373,12 +1365,6 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["Layer3DdnsConfig"]; ok { nestedLayer3.DdnsConfig.Misc = o.Misc["Layer3DdnsConfig"] } - if o.Layer3.DdnsConfig.DdnsIpv6 != nil { - nestedLayer3.DdnsConfig.DdnsIpv6 = util.StrToMem(o.Layer3.DdnsConfig.DdnsIpv6) - } - if o.Layer3.DdnsConfig.DdnsUpdateInterval != nil { - nestedLayer3.DdnsConfig.DdnsUpdateInterval = o.Layer3.DdnsConfig.DdnsUpdateInterval - } if o.Layer3.DdnsConfig.DdnsVendor != nil { nestedLayer3.DdnsConfig.DdnsVendor = o.Layer3.DdnsConfig.DdnsVendor } @@ -1410,33 +1396,112 @@ func specifyEntry(o *Entry) (any, error) { if o.Layer3.DdnsConfig.DdnsIp != nil { nestedLayer3.DdnsConfig.DdnsIp = util.StrToMem(o.Layer3.DdnsConfig.DdnsIp) } + if o.Layer3.DdnsConfig.DdnsIpv6 != nil { + nestedLayer3.DdnsConfig.DdnsIpv6 = util.StrToMem(o.Layer3.DdnsConfig.DdnsIpv6) + } + if o.Layer3.DdnsConfig.DdnsUpdateInterval != nil { + nestedLayer3.DdnsConfig.DdnsUpdateInterval = o.Layer3.DdnsConfig.DdnsUpdateInterval + } } - if o.Layer3.Ipv6 != nil { - nestedLayer3.Ipv6 = &Layer3Ipv6Xml{} - if _, ok := o.Misc["Layer3Ipv6"]; ok { - nestedLayer3.Ipv6.Misc = o.Misc["Layer3Ipv6"] + if o.Layer3.Mtu != nil { + nestedLayer3.Mtu = o.Layer3.Mtu + } + if o.Layer3.NdpProxy != nil { + nestedLayer3.NdpProxy = &Layer3NdpProxyXml{} + if _, ok := o.Misc["Layer3NdpProxy"]; ok { + nestedLayer3.NdpProxy.Misc = o.Misc["Layer3NdpProxy"] } - if o.Layer3.Ipv6.Address != nil { - nestedLayer3.Ipv6.Address = []Layer3Ipv6AddressXml{} - for _, oLayer3Ipv6Address := range o.Layer3.Ipv6.Address { - nestedLayer3Ipv6Address := Layer3Ipv6AddressXml{} - if _, ok := o.Misc["Layer3Ipv6Address"]; ok { - nestedLayer3Ipv6Address.Misc = o.Misc["Layer3Ipv6Address"] + if o.Layer3.NdpProxy.Address != nil { + nestedLayer3.NdpProxy.Address = []Layer3NdpProxyAddressXml{} + for _, oLayer3NdpProxyAddress := range o.Layer3.NdpProxy.Address { + nestedLayer3NdpProxyAddress := Layer3NdpProxyAddressXml{} + if _, ok := o.Misc["Layer3NdpProxyAddress"]; ok { + nestedLayer3NdpProxyAddress.Misc = o.Misc["Layer3NdpProxyAddress"] } - if oLayer3Ipv6Address.Anycast != nil { - nestedLayer3Ipv6Address.Anycast = &Layer3Ipv6AddressAnycastXml{} - if _, ok := o.Misc["Layer3Ipv6AddressAnycast"]; ok { - nestedLayer3Ipv6Address.Anycast.Misc = o.Misc["Layer3Ipv6AddressAnycast"] - } + if oLayer3NdpProxyAddress.Negate != nil { + nestedLayer3NdpProxyAddress.Negate = util.YesNo(oLayer3NdpProxyAddress.Negate, nil) } - if oLayer3Ipv6Address.Advertise != nil { - nestedLayer3Ipv6Address.Advertise = &Layer3Ipv6AddressAdvertiseXml{} - if _, ok := o.Misc["Layer3Ipv6AddressAdvertise"]; ok { - nestedLayer3Ipv6Address.Advertise.Misc = o.Misc["Layer3Ipv6AddressAdvertise"] - } - if oLayer3Ipv6Address.Advertise.ValidLifetime != nil { - nestedLayer3Ipv6Address.Advertise.ValidLifetime = oLayer3Ipv6Address.Advertise.ValidLifetime - } + if oLayer3NdpProxyAddress.Name != "" { + nestedLayer3NdpProxyAddress.Name = oLayer3NdpProxyAddress.Name + } + nestedLayer3.NdpProxy.Address = append(nestedLayer3.NdpProxy.Address, nestedLayer3NdpProxyAddress) + } + } + if o.Layer3.NdpProxy.Enabled != nil { + nestedLayer3.NdpProxy.Enabled = util.YesNo(o.Layer3.NdpProxy.Enabled, nil) + } + } + if o.Layer3.AdjustTcpMss != nil { + nestedLayer3.AdjustTcpMss = &Layer3AdjustTcpMssXml{} + if _, ok := o.Misc["Layer3AdjustTcpMss"]; ok { + nestedLayer3.AdjustTcpMss.Misc = o.Misc["Layer3AdjustTcpMss"] + } + if o.Layer3.AdjustTcpMss.Enable != nil { + nestedLayer3.AdjustTcpMss.Enable = util.YesNo(o.Layer3.AdjustTcpMss.Enable, nil) + } + if o.Layer3.AdjustTcpMss.Ipv4MssAdjustment != nil { + nestedLayer3.AdjustTcpMss.Ipv4MssAdjustment = o.Layer3.AdjustTcpMss.Ipv4MssAdjustment + } + if o.Layer3.AdjustTcpMss.Ipv6MssAdjustment != nil { + nestedLayer3.AdjustTcpMss.Ipv6MssAdjustment = o.Layer3.AdjustTcpMss.Ipv6MssAdjustment + } + } + if o.Layer3.DecryptForward != nil { + nestedLayer3.DecryptForward = util.YesNo(o.Layer3.DecryptForward, nil) + } + if o.Layer3.DhcpClient != nil { + nestedLayer3.DhcpClient = &Layer3DhcpClientXml{} + if _, ok := o.Misc["Layer3DhcpClient"]; ok { + nestedLayer3.DhcpClient.Misc = o.Misc["Layer3DhcpClient"] + } + if o.Layer3.DhcpClient.SendHostname != nil { + nestedLayer3.DhcpClient.SendHostname = &Layer3DhcpClientSendHostnameXml{} + if _, ok := o.Misc["Layer3DhcpClientSendHostname"]; ok { + nestedLayer3.DhcpClient.SendHostname.Misc = o.Misc["Layer3DhcpClientSendHostname"] + } + if o.Layer3.DhcpClient.SendHostname.Hostname != nil { + nestedLayer3.DhcpClient.SendHostname.Hostname = o.Layer3.DhcpClient.SendHostname.Hostname + } + if o.Layer3.DhcpClient.SendHostname.Enable != nil { + nestedLayer3.DhcpClient.SendHostname.Enable = util.YesNo(o.Layer3.DhcpClient.SendHostname.Enable, nil) + } + } + if o.Layer3.DhcpClient.CreateDefaultRoute != nil { + nestedLayer3.DhcpClient.CreateDefaultRoute = util.YesNo(o.Layer3.DhcpClient.CreateDefaultRoute, nil) + } + if o.Layer3.DhcpClient.DefaultRouteMetric != nil { + nestedLayer3.DhcpClient.DefaultRouteMetric = o.Layer3.DhcpClient.DefaultRouteMetric + } + if o.Layer3.DhcpClient.Enable != nil { + nestedLayer3.DhcpClient.Enable = util.YesNo(o.Layer3.DhcpClient.Enable, nil) + } + } + if o.Layer3.InterfaceManagementProfile != nil { + nestedLayer3.InterfaceManagementProfile = o.Layer3.InterfaceManagementProfile + } + if o.Layer3.Ipv6 != nil { + nestedLayer3.Ipv6 = &Layer3Ipv6Xml{} + if _, ok := o.Misc["Layer3Ipv6"]; ok { + nestedLayer3.Ipv6.Misc = o.Misc["Layer3Ipv6"] + } + if o.Layer3.Ipv6.Address != nil { + nestedLayer3.Ipv6.Address = []Layer3Ipv6AddressXml{} + for _, oLayer3Ipv6Address := range o.Layer3.Ipv6.Address { + nestedLayer3Ipv6Address := Layer3Ipv6AddressXml{} + if _, ok := o.Misc["Layer3Ipv6Address"]; ok { + nestedLayer3Ipv6Address.Misc = o.Misc["Layer3Ipv6Address"] + } + if oLayer3Ipv6Address.Advertise != nil { + nestedLayer3Ipv6Address.Advertise = &Layer3Ipv6AddressAdvertiseXml{} + if _, ok := o.Misc["Layer3Ipv6AddressAdvertise"]; ok { + nestedLayer3Ipv6Address.Advertise.Misc = o.Misc["Layer3Ipv6AddressAdvertise"] + } + if oLayer3Ipv6Address.Advertise.Enable != nil { + nestedLayer3Ipv6Address.Advertise.Enable = util.YesNo(oLayer3Ipv6Address.Advertise.Enable, nil) + } + if oLayer3Ipv6Address.Advertise.ValidLifetime != nil { + nestedLayer3Ipv6Address.Advertise.ValidLifetime = oLayer3Ipv6Address.Advertise.ValidLifetime + } if oLayer3Ipv6Address.Advertise.PreferredLifetime != nil { nestedLayer3Ipv6Address.Advertise.PreferredLifetime = oLayer3Ipv6Address.Advertise.PreferredLifetime } @@ -1446,9 +1511,6 @@ func specifyEntry(o *Entry) (any, error) { if oLayer3Ipv6Address.Advertise.AutoConfigFlag != nil { nestedLayer3Ipv6Address.Advertise.AutoConfigFlag = util.YesNo(oLayer3Ipv6Address.Advertise.AutoConfigFlag, nil) } - if oLayer3Ipv6Address.Advertise.Enable != nil { - nestedLayer3Ipv6Address.Advertise.Enable = util.YesNo(oLayer3Ipv6Address.Advertise.Enable, nil) - } } if oLayer3Ipv6Address.Name != "" { nestedLayer3Ipv6Address.Name = oLayer3Ipv6Address.Name @@ -1462,6 +1524,12 @@ func specifyEntry(o *Entry) (any, error) { nestedLayer3Ipv6Address.Prefix.Misc = o.Misc["Layer3Ipv6AddressPrefix"] } } + if oLayer3Ipv6Address.Anycast != nil { + nestedLayer3Ipv6Address.Anycast = &Layer3Ipv6AddressAnycastXml{} + if _, ok := o.Misc["Layer3Ipv6AddressAnycast"]; ok { + nestedLayer3Ipv6Address.Anycast.Misc = o.Misc["Layer3Ipv6AddressAnycast"] + } + } nestedLayer3.Ipv6.Address = append(nestedLayer3.Ipv6.Address, nestedLayer3Ipv6Address) } } @@ -1476,6 +1544,9 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["Layer3Ipv6NeighborDiscovery"]; ok { nestedLayer3.Ipv6.NeighborDiscovery.Misc = o.Misc["Layer3Ipv6NeighborDiscovery"] } + if o.Layer3.Ipv6.NeighborDiscovery.NsInterval != nil { + nestedLayer3.Ipv6.NeighborDiscovery.NsInterval = o.Layer3.Ipv6.NeighborDiscovery.NsInterval + } if o.Layer3.Ipv6.NeighborDiscovery.ReachableTime != nil { nestedLayer3.Ipv6.NeighborDiscovery.ReachableTime = o.Layer3.Ipv6.NeighborDiscovery.ReachableTime } @@ -1484,27 +1555,18 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["Layer3Ipv6NeighborDiscoveryRouterAdvertisement"]; ok { nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Misc = o.Misc["Layer3Ipv6NeighborDiscoveryRouterAdvertisement"] } - if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Enable != nil { - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Enable = util.YesNo(o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Enable, nil) - } if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.LinkMtu != nil { nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.LinkMtu = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.LinkMtu } if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.ManagedFlag != nil { nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.ManagedFlag = util.YesNo(o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.ManagedFlag, nil) } - if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer != nil { - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer - } - if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.RouterPreference != nil { - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.RouterPreference = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.RouterPreference + if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MaxInterval != nil { + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MaxInterval = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MaxInterval } if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.OtherFlag != nil { nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.OtherFlag = util.YesNo(o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.OtherFlag, nil) } - if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.ReachableTime != nil { - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.ReachableTime = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.ReachableTime - } if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport != nil { nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport = &Layer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportXml{} if _, ok := o.Misc["Layer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupport"]; ok { @@ -1549,18 +1611,27 @@ func specifyEntry(o *Entry) (any, error) { if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck != nil { nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck = util.YesNo(o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck, nil) } - if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.HopLimit != nil { - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.HopLimit = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.HopLimit - } if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Lifetime != nil { nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Lifetime = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Lifetime } - if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MaxInterval != nil { - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MaxInterval = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MaxInterval - } if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MinInterval != nil { nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MinInterval = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MinInterval } + if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.ReachableTime != nil { + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.ReachableTime = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.ReachableTime + } + if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer != nil { + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer + } + if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.RouterPreference != nil { + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.RouterPreference = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.RouterPreference + } + if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Enable != nil { + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Enable = util.YesNo(o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Enable, nil) + } + if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.HopLimit != nil { + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.HopLimit = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.HopLimit + } } if o.Layer3.Ipv6.NeighborDiscovery.DadAttempts != nil { nestedLayer3.Ipv6.NeighborDiscovery.DadAttempts = o.Layer3.Ipv6.NeighborDiscovery.DadAttempts @@ -1578,24 +1649,96 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["Layer3Ipv6NeighborDiscoveryNeighbor"]; ok { nestedLayer3Ipv6NeighborDiscoveryNeighbor.Misc = o.Misc["Layer3Ipv6NeighborDiscoveryNeighbor"] } - if oLayer3Ipv6NeighborDiscoveryNeighbor.Name != "" { - nestedLayer3Ipv6NeighborDiscoveryNeighbor.Name = oLayer3Ipv6NeighborDiscoveryNeighbor.Name - } if oLayer3Ipv6NeighborDiscoveryNeighbor.HwAddress != nil { nestedLayer3Ipv6NeighborDiscoveryNeighbor.HwAddress = oLayer3Ipv6NeighborDiscoveryNeighbor.HwAddress } + if oLayer3Ipv6NeighborDiscoveryNeighbor.Name != "" { + nestedLayer3Ipv6NeighborDiscoveryNeighbor.Name = oLayer3Ipv6NeighborDiscoveryNeighbor.Name + } nestedLayer3.Ipv6.NeighborDiscovery.Neighbor = append(nestedLayer3.Ipv6.NeighborDiscovery.Neighbor, nestedLayer3Ipv6NeighborDiscoveryNeighbor) } } - if o.Layer3.Ipv6.NeighborDiscovery.NsInterval != nil { - nestedLayer3.Ipv6.NeighborDiscovery.NsInterval = o.Layer3.Ipv6.NeighborDiscovery.NsInterval - } } if o.Layer3.Ipv6.DhcpClient != nil { nestedLayer3.Ipv6.DhcpClient = &Layer3Ipv6DhcpClientXml{} if _, ok := o.Misc["Layer3Ipv6DhcpClient"]; ok { nestedLayer3.Ipv6.DhcpClient.Misc = o.Misc["Layer3Ipv6DhcpClient"] } + if o.Layer3.Ipv6.DhcpClient.PrefixDelegation != nil { + nestedLayer3.Ipv6.DhcpClient.PrefixDelegation = &Layer3Ipv6DhcpClientPrefixDelegationXml{} + if _, ok := o.Misc["Layer3Ipv6DhcpClientPrefixDelegation"]; ok { + nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Misc = o.Misc["Layer3Ipv6DhcpClientPrefixDelegation"] + } + if o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable != nil { + nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Enable = &Layer3Ipv6DhcpClientPrefixDelegationEnableXml{} + if _, ok := o.Misc["Layer3Ipv6DhcpClientPrefixDelegationEnable"]; ok { + nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Misc = o.Misc["Layer3Ipv6DhcpClientPrefixDelegationEnable"] + } + if o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes != nil { + nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes = &Layer3Ipv6DhcpClientPrefixDelegationEnableYesXml{} + if _, ok := o.Misc["Layer3Ipv6DhcpClientPrefixDelegationEnableYes"]; ok { + nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.Misc = o.Misc["Layer3Ipv6DhcpClientPrefixDelegationEnableYes"] + } + if o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLenHint != nil { + nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLenHint = util.YesNo(o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLenHint, nil) + } + if o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PfxPoolName != nil { + nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PfxPoolName = o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PfxPoolName + } + if o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLen != nil { + nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLen = o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLen + } + } + if o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.No != nil { + nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Enable.No = &Layer3Ipv6DhcpClientPrefixDelegationEnableNoXml{} + if _, ok := o.Misc["Layer3Ipv6DhcpClientPrefixDelegationEnableNo"]; ok { + nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Enable.No.Misc = o.Misc["Layer3Ipv6DhcpClientPrefixDelegationEnableNo"] + } + } + } + } + if o.Layer3.Ipv6.DhcpClient.V6Options != nil { + nestedLayer3.Ipv6.DhcpClient.V6Options = &Layer3Ipv6DhcpClientV6OptionsXml{} + if _, ok := o.Misc["Layer3Ipv6DhcpClientV6Options"]; ok { + nestedLayer3.Ipv6.DhcpClient.V6Options.Misc = o.Misc["Layer3Ipv6DhcpClientV6Options"] + } + if o.Layer3.Ipv6.DhcpClient.V6Options.Enable != nil { + nestedLayer3.Ipv6.DhcpClient.V6Options.Enable = &Layer3Ipv6DhcpClientV6OptionsEnableXml{} + if _, ok := o.Misc["Layer3Ipv6DhcpClientV6OptionsEnable"]; ok { + nestedLayer3.Ipv6.DhcpClient.V6Options.Enable.Misc = o.Misc["Layer3Ipv6DhcpClientV6OptionsEnable"] + } + if o.Layer3.Ipv6.DhcpClient.V6Options.Enable.No != nil { + nestedLayer3.Ipv6.DhcpClient.V6Options.Enable.No = &Layer3Ipv6DhcpClientV6OptionsEnableNoXml{} + if _, ok := o.Misc["Layer3Ipv6DhcpClientV6OptionsEnableNo"]; ok { + nestedLayer3.Ipv6.DhcpClient.V6Options.Enable.No.Misc = o.Misc["Layer3Ipv6DhcpClientV6OptionsEnableNo"] + } + } + if o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes != nil { + nestedLayer3.Ipv6.DhcpClient.V6Options.Enable.Yes = &Layer3Ipv6DhcpClientV6OptionsEnableYesXml{} + if _, ok := o.Misc["Layer3Ipv6DhcpClientV6OptionsEnableYes"]; ok { + nestedLayer3.Ipv6.DhcpClient.V6Options.Enable.Yes.Misc = o.Misc["Layer3Ipv6DhcpClientV6OptionsEnableYes"] + } + if o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes.NonTempAddr != nil { + nestedLayer3.Ipv6.DhcpClient.V6Options.Enable.Yes.NonTempAddr = util.YesNo(o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes.NonTempAddr, nil) + } + if o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes.TempAddr != nil { + nestedLayer3.Ipv6.DhcpClient.V6Options.Enable.Yes.TempAddr = util.YesNo(o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes.TempAddr, nil) + } + } + } + if o.Layer3.Ipv6.DhcpClient.V6Options.RapidCommit != nil { + nestedLayer3.Ipv6.DhcpClient.V6Options.RapidCommit = util.YesNo(o.Layer3.Ipv6.DhcpClient.V6Options.RapidCommit, nil) + } + if o.Layer3.Ipv6.DhcpClient.V6Options.SupportSrvrReconfig != nil { + nestedLayer3.Ipv6.DhcpClient.V6Options.SupportSrvrReconfig = util.YesNo(o.Layer3.Ipv6.DhcpClient.V6Options.SupportSrvrReconfig, nil) + } + if o.Layer3.Ipv6.DhcpClient.V6Options.DuidType != nil { + nestedLayer3.Ipv6.DhcpClient.V6Options.DuidType = o.Layer3.Ipv6.DhcpClient.V6Options.DuidType + } + } + if o.Layer3.Ipv6.DhcpClient.AcceptRaRoute != nil { + nestedLayer3.Ipv6.DhcpClient.AcceptRaRoute = util.YesNo(o.Layer3.Ipv6.DhcpClient.AcceptRaRoute, nil) + } if o.Layer3.Ipv6.DhcpClient.DefaultRouteMetric != nil { nestedLayer3.Ipv6.DhcpClient.DefaultRouteMetric = o.Layer3.Ipv6.DhcpClient.DefaultRouteMetric } @@ -1607,6 +1750,28 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["Layer3Ipv6DhcpClientNeighborDiscovery"]; ok { nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.Misc = o.Misc["Layer3Ipv6DhcpClientNeighborDiscovery"] } + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.EnableNdpMonitor != nil { + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.EnableNdpMonitor = util.YesNo(o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.EnableNdpMonitor, nil) + } + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.Neighbor != nil { + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.Neighbor = []Layer3Ipv6DhcpClientNeighborDiscoveryNeighborXml{} + for _, oLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor := range o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.Neighbor { + nestedLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor := Layer3Ipv6DhcpClientNeighborDiscoveryNeighborXml{} + if _, ok := o.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryNeighbor"]; ok { + nestedLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.Misc = o.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryNeighbor"] + } + if oLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.HwAddress != nil { + nestedLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.HwAddress = oLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.HwAddress + } + if oLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.Name != "" { + nestedLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.Name = oLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.Name + } + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.Neighbor = append(nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.Neighbor, nestedLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor) + } + } + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.NsInterval != nil { + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.NsInterval = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.NsInterval + } if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.ReachableTime != nil { nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.ReachableTime = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.ReachableTime } @@ -1702,107 +1867,10 @@ func specifyEntry(o *Entry) (any, error) { if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.EnableDad != nil { nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.EnableDad = util.YesNo(o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.EnableDad, nil) } - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.EnableNdpMonitor != nil { - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.EnableNdpMonitor = util.YesNo(o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.EnableNdpMonitor, nil) - } - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.Neighbor != nil { - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.Neighbor = []Layer3Ipv6DhcpClientNeighborDiscoveryNeighborXml{} - for _, oLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor := range o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.Neighbor { - nestedLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor := Layer3Ipv6DhcpClientNeighborDiscoveryNeighborXml{} - if _, ok := o.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryNeighbor"]; ok { - nestedLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.Misc = o.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryNeighbor"] - } - if oLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.HwAddress != nil { - nestedLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.HwAddress = oLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.HwAddress - } - if oLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.Name != "" { - nestedLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.Name = oLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.Name - } - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.Neighbor = append(nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.Neighbor, nestedLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor) - } - } - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.NsInterval != nil { - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.NsInterval = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.NsInterval - } } if o.Layer3.Ipv6.DhcpClient.Preference != nil { nestedLayer3.Ipv6.DhcpClient.Preference = o.Layer3.Ipv6.DhcpClient.Preference } - if o.Layer3.Ipv6.DhcpClient.PrefixDelegation != nil { - nestedLayer3.Ipv6.DhcpClient.PrefixDelegation = &Layer3Ipv6DhcpClientPrefixDelegationXml{} - if _, ok := o.Misc["Layer3Ipv6DhcpClientPrefixDelegation"]; ok { - nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Misc = o.Misc["Layer3Ipv6DhcpClientPrefixDelegation"] - } - if o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable != nil { - nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Enable = &Layer3Ipv6DhcpClientPrefixDelegationEnableXml{} - if _, ok := o.Misc["Layer3Ipv6DhcpClientPrefixDelegationEnable"]; ok { - nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Misc = o.Misc["Layer3Ipv6DhcpClientPrefixDelegationEnable"] - } - if o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.No != nil { - nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Enable.No = &Layer3Ipv6DhcpClientPrefixDelegationEnableNoXml{} - if _, ok := o.Misc["Layer3Ipv6DhcpClientPrefixDelegationEnableNo"]; ok { - nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Enable.No.Misc = o.Misc["Layer3Ipv6DhcpClientPrefixDelegationEnableNo"] - } - } - if o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes != nil { - nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes = &Layer3Ipv6DhcpClientPrefixDelegationEnableYesXml{} - if _, ok := o.Misc["Layer3Ipv6DhcpClientPrefixDelegationEnableYes"]; ok { - nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.Misc = o.Misc["Layer3Ipv6DhcpClientPrefixDelegationEnableYes"] - } - if o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PfxPoolName != nil { - nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PfxPoolName = o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PfxPoolName - } - if o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLen != nil { - nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLen = o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLen - } - if o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLenHint != nil { - nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLenHint = util.YesNo(o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLenHint, nil) - } - } - } - } - if o.Layer3.Ipv6.DhcpClient.V6Options != nil { - nestedLayer3.Ipv6.DhcpClient.V6Options = &Layer3Ipv6DhcpClientV6OptionsXml{} - if _, ok := o.Misc["Layer3Ipv6DhcpClientV6Options"]; ok { - nestedLayer3.Ipv6.DhcpClient.V6Options.Misc = o.Misc["Layer3Ipv6DhcpClientV6Options"] - } - if o.Layer3.Ipv6.DhcpClient.V6Options.DuidType != nil { - nestedLayer3.Ipv6.DhcpClient.V6Options.DuidType = o.Layer3.Ipv6.DhcpClient.V6Options.DuidType - } - if o.Layer3.Ipv6.DhcpClient.V6Options.Enable != nil { - nestedLayer3.Ipv6.DhcpClient.V6Options.Enable = &Layer3Ipv6DhcpClientV6OptionsEnableXml{} - if _, ok := o.Misc["Layer3Ipv6DhcpClientV6OptionsEnable"]; ok { - nestedLayer3.Ipv6.DhcpClient.V6Options.Enable.Misc = o.Misc["Layer3Ipv6DhcpClientV6OptionsEnable"] - } - if o.Layer3.Ipv6.DhcpClient.V6Options.Enable.No != nil { - nestedLayer3.Ipv6.DhcpClient.V6Options.Enable.No = &Layer3Ipv6DhcpClientV6OptionsEnableNoXml{} - if _, ok := o.Misc["Layer3Ipv6DhcpClientV6OptionsEnableNo"]; ok { - nestedLayer3.Ipv6.DhcpClient.V6Options.Enable.No.Misc = o.Misc["Layer3Ipv6DhcpClientV6OptionsEnableNo"] - } - } - if o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes != nil { - nestedLayer3.Ipv6.DhcpClient.V6Options.Enable.Yes = &Layer3Ipv6DhcpClientV6OptionsEnableYesXml{} - if _, ok := o.Misc["Layer3Ipv6DhcpClientV6OptionsEnableYes"]; ok { - nestedLayer3.Ipv6.DhcpClient.V6Options.Enable.Yes.Misc = o.Misc["Layer3Ipv6DhcpClientV6OptionsEnableYes"] - } - if o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes.NonTempAddr != nil { - nestedLayer3.Ipv6.DhcpClient.V6Options.Enable.Yes.NonTempAddr = util.YesNo(o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes.NonTempAddr, nil) - } - if o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes.TempAddr != nil { - nestedLayer3.Ipv6.DhcpClient.V6Options.Enable.Yes.TempAddr = util.YesNo(o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes.TempAddr, nil) - } - } - } - if o.Layer3.Ipv6.DhcpClient.V6Options.RapidCommit != nil { - nestedLayer3.Ipv6.DhcpClient.V6Options.RapidCommit = util.YesNo(o.Layer3.Ipv6.DhcpClient.V6Options.RapidCommit, nil) - } - if o.Layer3.Ipv6.DhcpClient.V6Options.SupportSrvrReconfig != nil { - nestedLayer3.Ipv6.DhcpClient.V6Options.SupportSrvrReconfig = util.YesNo(o.Layer3.Ipv6.DhcpClient.V6Options.SupportSrvrReconfig, nil) - } - } - if o.Layer3.Ipv6.DhcpClient.AcceptRaRoute != nil { - nestedLayer3.Ipv6.DhcpClient.AcceptRaRoute = util.YesNo(o.Layer3.Ipv6.DhcpClient.AcceptRaRoute, nil) - } } if o.Layer3.Ipv6.Inherited != nil { nestedLayer3.Ipv6.Inherited = &Layer3Ipv6InheritedXml{} @@ -1821,45 +1889,6 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["Layer3Ipv6InheritedAssignAddrType"]; ok { nestedLayer3Ipv6InheritedAssignAddr.Type.Misc = o.Misc["Layer3Ipv6InheritedAssignAddrType"] } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula = &Layer3Ipv6InheritedAssignAddrTypeUlaXml{} - if _, ok := o.Misc["Layer3Ipv6InheritedAssignAddrTypeUla"]; ok { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Misc = o.Misc["Layer3Ipv6InheritedAssignAddrTypeUla"] - } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Anycast != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Anycast = util.YesNo(oLayer3Ipv6InheritedAssignAddr.Type.Ula.Anycast, nil) - } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise = &Layer3Ipv6InheritedAssignAddrTypeUlaAdvertiseXml{} - if _, ok := o.Misc["Layer3Ipv6InheritedAssignAddrTypeUlaAdvertise"]; ok { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.Misc = o.Misc["Layer3Ipv6InheritedAssignAddrTypeUlaAdvertise"] - } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.Enable != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.Enable = util.YesNo(oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.Enable, nil) - } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.ValidLifetime != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.ValidLifetime = oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.ValidLifetime - } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.PreferredLifetime != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.PreferredLifetime = oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.PreferredLifetime - } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.OnlinkFlag != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.OnlinkFlag = util.YesNo(oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.OnlinkFlag, nil) - } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.AutoConfigFlag != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.AutoConfigFlag = util.YesNo(oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.AutoConfigFlag, nil) - } - } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.EnableOnInterface != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.EnableOnInterface = util.YesNo(oLayer3Ipv6InheritedAssignAddr.Type.Ula.EnableOnInterface, nil) - } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Address != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Address = oLayer3Ipv6InheritedAssignAddr.Type.Ula.Address - } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Prefix != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Prefix = util.YesNo(oLayer3Ipv6InheritedAssignAddr.Type.Ula.Prefix, nil) - } - } if oLayer3Ipv6InheritedAssignAddr.Type.Gua != nil { nestedLayer3Ipv6InheritedAssignAddr.Type.Gua = &Layer3Ipv6InheritedAssignAddrTypeGuaXml{} if _, ok := o.Misc["Layer3Ipv6InheritedAssignAddrTypeGua"]; ok { @@ -1908,6 +1937,45 @@ func specifyEntry(o *Entry) (any, error) { } } } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula = &Layer3Ipv6InheritedAssignAddrTypeUlaXml{} + if _, ok := o.Misc["Layer3Ipv6InheritedAssignAddrTypeUla"]; ok { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Misc = o.Misc["Layer3Ipv6InheritedAssignAddrTypeUla"] + } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Prefix != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Prefix = util.YesNo(oLayer3Ipv6InheritedAssignAddr.Type.Ula.Prefix, nil) + } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Anycast != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Anycast = util.YesNo(oLayer3Ipv6InheritedAssignAddr.Type.Ula.Anycast, nil) + } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise = &Layer3Ipv6InheritedAssignAddrTypeUlaAdvertiseXml{} + if _, ok := o.Misc["Layer3Ipv6InheritedAssignAddrTypeUlaAdvertise"]; ok { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.Misc = o.Misc["Layer3Ipv6InheritedAssignAddrTypeUlaAdvertise"] + } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.Enable != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.Enable = util.YesNo(oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.Enable, nil) + } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.ValidLifetime != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.ValidLifetime = oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.ValidLifetime + } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.PreferredLifetime != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.PreferredLifetime = oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.PreferredLifetime + } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.OnlinkFlag != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.OnlinkFlag = util.YesNo(oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.OnlinkFlag, nil) + } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.AutoConfigFlag != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.AutoConfigFlag = util.YesNo(oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.AutoConfigFlag, nil) + } + } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.EnableOnInterface != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.EnableOnInterface = util.YesNo(oLayer3Ipv6InheritedAssignAddr.Type.Ula.EnableOnInterface, nil) + } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Address != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Address = oLayer3Ipv6InheritedAssignAddr.Type.Ula.Address + } + } } if oLayer3Ipv6InheritedAssignAddr.Name != "" { nestedLayer3Ipv6InheritedAssignAddr.Name = oLayer3Ipv6InheritedAssignAddr.Name @@ -1923,9 +1991,6 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["Layer3Ipv6InheritedNeighborDiscovery"]; ok { nestedLayer3.Ipv6.Inherited.NeighborDiscovery.Misc = o.Misc["Layer3Ipv6InheritedNeighborDiscovery"] } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DadAttempts != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DadAttempts = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DadAttempts - } if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer != nil { nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsServer = &Layer3Ipv6InheritedNeighborDiscoveryDnsServerXml{} if _, ok := o.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsServer"]; ok { @@ -2018,6 +2083,18 @@ func specifyEntry(o *Entry) (any, error) { } } } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.ReachableTime != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.ReachableTime = o.Layer3.Ipv6.Inherited.NeighborDiscovery.ReachableTime + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DadAttempts != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DadAttempts = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DadAttempts + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.EnableDad != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.EnableDad = util.YesNo(o.Layer3.Ipv6.Inherited.NeighborDiscovery.EnableDad, nil) + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.EnableNdpMonitor != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.EnableNdpMonitor = util.YesNo(o.Layer3.Ipv6.Inherited.NeighborDiscovery.EnableNdpMonitor, nil) + } if o.Layer3.Ipv6.Inherited.NeighborDiscovery.Neighbor != nil { nestedLayer3.Ipv6.Inherited.NeighborDiscovery.Neighbor = []Layer3Ipv6InheritedNeighborDiscoveryNeighborXml{} for _, oLayer3Ipv6InheritedNeighborDiscoveryNeighbor := range o.Layer3.Ipv6.Inherited.NeighborDiscovery.Neighbor { @@ -2042,29 +2119,26 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["Layer3Ipv6InheritedNeighborDiscoveryRouterAdvertisement"]; ok { nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Misc = o.Misc["Layer3Ipv6InheritedNeighborDiscoveryRouterAdvertisement"] } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Enable != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Enable = util.YesNo(o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Enable, nil) - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck = util.YesNo(o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck, nil) - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.HopLimit != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.HopLimit = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.HopLimit - } if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Lifetime != nil { nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Lifetime = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Lifetime } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.LinkMtu != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.LinkMtu = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.LinkMtu + } if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.ManagedFlag != nil { nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.ManagedFlag = util.YesNo(o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.ManagedFlag, nil) } if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.OtherFlag != nil { nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.OtherFlag = util.YesNo(o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.OtherFlag, nil) } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RouterPreference != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RouterPreference = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RouterPreference } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.LinkMtu != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.LinkMtu = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.LinkMtu + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Enable != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Enable = util.YesNo(o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Enable, nil) + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.HopLimit != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.HopLimit = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.HopLimit } if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.MaxInterval != nil { nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.MaxInterval = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.MaxInterval @@ -2075,121 +2149,47 @@ func specifyEntry(o *Entry) (any, error) { if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.ReachableTime != nil { nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.ReachableTime = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.ReachableTime } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RouterPreference != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RouterPreference = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RouterPreference + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck = util.YesNo(o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck, nil) } - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.EnableDad != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.EnableDad = util.YesNo(o.Layer3.Ipv6.Inherited.NeighborDiscovery.EnableDad, nil) - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.EnableNdpMonitor != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.EnableNdpMonitor = util.YesNo(o.Layer3.Ipv6.Inherited.NeighborDiscovery.EnableNdpMonitor, nil) - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.ReachableTime != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.ReachableTime = o.Layer3.Ipv6.Inherited.NeighborDiscovery.ReachableTime } } } } - if o.Layer3.Lldp != nil { - nestedLayer3.Lldp = &Layer3LldpXml{} - if _, ok := o.Misc["Layer3Lldp"]; ok { - nestedLayer3.Lldp.Misc = o.Misc["Layer3Lldp"] + if o.Layer3.NetflowProfile != nil { + nestedLayer3.NetflowProfile = o.Layer3.NetflowProfile + } + } + entry.Layer3 = nestedLayer3 + + var nestedVirtualWire *VirtualWireXml + if o.VirtualWire != nil { + nestedVirtualWire = &VirtualWireXml{} + if _, ok := o.Misc["VirtualWire"]; ok { + nestedVirtualWire.Misc = o.Misc["VirtualWire"] + } + if o.VirtualWire.Lldp != nil { + nestedVirtualWire.Lldp = &VirtualWireLldpXml{} + if _, ok := o.Misc["VirtualWireLldp"]; ok { + nestedVirtualWire.Lldp.Misc = o.Misc["VirtualWireLldp"] } - if o.Layer3.Lldp.Enable != nil { - nestedLayer3.Lldp.Enable = util.YesNo(o.Layer3.Lldp.Enable, nil) + if o.VirtualWire.Lldp.Enable != nil { + nestedVirtualWire.Lldp.Enable = util.YesNo(o.VirtualWire.Lldp.Enable, nil) } - if o.Layer3.Lldp.HighAvailability != nil { - nestedLayer3.Lldp.HighAvailability = &Layer3LldpHighAvailabilityXml{} - if _, ok := o.Misc["Layer3LldpHighAvailability"]; ok { - nestedLayer3.Lldp.HighAvailability.Misc = o.Misc["Layer3LldpHighAvailability"] + if o.VirtualWire.Lldp.HighAvailability != nil { + nestedVirtualWire.Lldp.HighAvailability = &VirtualWireLldpHighAvailabilityXml{} + if _, ok := o.Misc["VirtualWireLldpHighAvailability"]; ok { + nestedVirtualWire.Lldp.HighAvailability.Misc = o.Misc["VirtualWireLldpHighAvailability"] } - if o.Layer3.Lldp.HighAvailability.PassivePreNegotiation != nil { - nestedLayer3.Lldp.HighAvailability.PassivePreNegotiation = util.YesNo(o.Layer3.Lldp.HighAvailability.PassivePreNegotiation, nil) + if o.VirtualWire.Lldp.HighAvailability.PassivePreNegotiation != nil { + nestedVirtualWire.Lldp.HighAvailability.PassivePreNegotiation = util.YesNo(o.VirtualWire.Lldp.HighAvailability.PassivePreNegotiation, nil) } } - if o.Layer3.Lldp.Profile != nil { - nestedLayer3.Lldp.Profile = o.Layer3.Lldp.Profile - } - } - if o.Layer3.NdpProxy != nil { - nestedLayer3.NdpProxy = &Layer3NdpProxyXml{} - if _, ok := o.Misc["Layer3NdpProxy"]; ok { - nestedLayer3.NdpProxy.Misc = o.Misc["Layer3NdpProxy"] - } - if o.Layer3.NdpProxy.Enabled != nil { - nestedLayer3.NdpProxy.Enabled = util.YesNo(o.Layer3.NdpProxy.Enabled, nil) - } - if o.Layer3.NdpProxy.Address != nil { - nestedLayer3.NdpProxy.Address = []Layer3NdpProxyAddressXml{} - for _, oLayer3NdpProxyAddress := range o.Layer3.NdpProxy.Address { - nestedLayer3NdpProxyAddress := Layer3NdpProxyAddressXml{} - if _, ok := o.Misc["Layer3NdpProxyAddress"]; ok { - nestedLayer3NdpProxyAddress.Misc = o.Misc["Layer3NdpProxyAddress"] - } - if oLayer3NdpProxyAddress.Name != "" { - nestedLayer3NdpProxyAddress.Name = oLayer3NdpProxyAddress.Name - } - if oLayer3NdpProxyAddress.Negate != nil { - nestedLayer3NdpProxyAddress.Negate = util.YesNo(oLayer3NdpProxyAddress.Negate, nil) - } - nestedLayer3.NdpProxy.Address = append(nestedLayer3.NdpProxy.Address, nestedLayer3NdpProxyAddress) - } - } - } - if o.Layer3.Arp != nil { - nestedLayer3.Arp = []Layer3ArpXml{} - for _, oLayer3Arp := range o.Layer3.Arp { - nestedLayer3Arp := Layer3ArpXml{} - if _, ok := o.Misc["Layer3Arp"]; ok { - nestedLayer3Arp.Misc = o.Misc["Layer3Arp"] - } - if oLayer3Arp.HwAddress != nil { - nestedLayer3Arp.HwAddress = oLayer3Arp.HwAddress - } - if oLayer3Arp.Name != "" { - nestedLayer3Arp.Name = oLayer3Arp.Name - } - nestedLayer3.Arp = append(nestedLayer3.Arp, nestedLayer3Arp) - } - } - if o.Layer3.DecryptForward != nil { - nestedLayer3.DecryptForward = util.YesNo(o.Layer3.DecryptForward, nil) - } - if o.Layer3.Mtu != nil { - nestedLayer3.Mtu = o.Layer3.Mtu - } - if o.Layer3.NetflowProfile != nil { - nestedLayer3.NetflowProfile = o.Layer3.NetflowProfile - } - } - entry.Layer3 = nestedLayer3 - - var nestedVirtualWire *VirtualWireXml - if o.VirtualWire != nil { - nestedVirtualWire = &VirtualWireXml{} - if _, ok := o.Misc["VirtualWire"]; ok { - nestedVirtualWire.Misc = o.Misc["VirtualWire"] - } - if o.VirtualWire.Lldp != nil { - nestedVirtualWire.Lldp = &VirtualWireLldpXml{} - if _, ok := o.Misc["VirtualWireLldp"]; ok { - nestedVirtualWire.Lldp.Misc = o.Misc["VirtualWireLldp"] - } - if o.VirtualWire.Lldp.Enable != nil { - nestedVirtualWire.Lldp.Enable = util.YesNo(o.VirtualWire.Lldp.Enable, nil) - } - if o.VirtualWire.Lldp.HighAvailability != nil { - nestedVirtualWire.Lldp.HighAvailability = &VirtualWireLldpHighAvailabilityXml{} - if _, ok := o.Misc["VirtualWireLldpHighAvailability"]; ok { - nestedVirtualWire.Lldp.HighAvailability.Misc = o.Misc["VirtualWireLldpHighAvailability"] - } - if o.VirtualWire.Lldp.HighAvailability.PassivePreNegotiation != nil { - nestedVirtualWire.Lldp.HighAvailability.PassivePreNegotiation = util.YesNo(o.VirtualWire.Lldp.HighAvailability.PassivePreNegotiation, nil) - } - } - if o.VirtualWire.Lldp.Profile != nil { - nestedVirtualWire.Lldp.Profile = o.VirtualWire.Lldp.Profile + if o.VirtualWire.Lldp.Profile != nil { + nestedVirtualWire.Lldp.Profile = o.VirtualWire.Lldp.Profile } } if o.VirtualWire.NetflowProfile != nil { @@ -2231,6 +2231,9 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Ha.Lacp.Misc != nil { entry.Misc["HaLacp"] = o.Ha.Lacp.Misc } + if o.Ha.Lacp.SystemPriority != nil { + nestedHa.Lacp.SystemPriority = o.Ha.Lacp.SystemPriority + } if o.Ha.Lacp.TransmissionRate != nil { nestedHa.Lacp.TransmissionRate = o.Ha.Lacp.TransmissionRate } @@ -2246,9 +2249,6 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Ha.Lacp.Mode != nil { nestedHa.Lacp.Mode = o.Ha.Lacp.Mode } - if o.Ha.Lacp.SystemPriority != nil { - nestedHa.Lacp.SystemPriority = o.Ha.Lacp.SystemPriority - } } } entry.Ha = nestedHa @@ -2264,6 +2264,9 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Layer2.Lacp.Misc != nil { entry.Misc["Layer2Lacp"] = o.Layer2.Lacp.Misc } + if o.Layer2.Lacp.Enable != nil { + nestedLayer2.Lacp.Enable = util.AsBool(o.Layer2.Lacp.Enable, nil) + } if o.Layer2.Lacp.FastFailover != nil { nestedLayer2.Lacp.FastFailover = util.AsBool(o.Layer2.Lacp.FastFailover, nil) } @@ -2288,9 +2291,6 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Layer2.Lacp.TransmissionRate != nil { nestedLayer2.Lacp.TransmissionRate = o.Layer2.Lacp.TransmissionRate } - if o.Layer2.Lacp.Enable != nil { - nestedLayer2.Lacp.Enable = util.AsBool(o.Layer2.Lacp.Enable, nil) - } } if o.Layer2.Lldp != nil { nestedLayer2.Lldp = &Layer2Lldp{} @@ -2325,6 +2325,52 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Layer3.Misc != nil { entry.Misc["Layer3"] = o.Layer3.Misc } + if o.Layer3.DdnsConfig != nil { + nestedLayer3.DdnsConfig = &Layer3DdnsConfig{} + if o.Layer3.DdnsConfig.Misc != nil { + entry.Misc["Layer3DdnsConfig"] = o.Layer3.DdnsConfig.Misc + } + if o.Layer3.DdnsConfig.DdnsVendorConfig != nil { + nestedLayer3.DdnsConfig.DdnsVendorConfig = []Layer3DdnsConfigDdnsVendorConfig{} + for _, oLayer3DdnsConfigDdnsVendorConfig := range o.Layer3.DdnsConfig.DdnsVendorConfig { + nestedLayer3DdnsConfigDdnsVendorConfig := Layer3DdnsConfigDdnsVendorConfig{} + if oLayer3DdnsConfigDdnsVendorConfig.Misc != nil { + entry.Misc["Layer3DdnsConfigDdnsVendorConfig"] = oLayer3DdnsConfigDdnsVendorConfig.Misc + } + if oLayer3DdnsConfigDdnsVendorConfig.Value != nil { + nestedLayer3DdnsConfigDdnsVendorConfig.Value = oLayer3DdnsConfigDdnsVendorConfig.Value + } + if oLayer3DdnsConfigDdnsVendorConfig.Name != "" { + nestedLayer3DdnsConfigDdnsVendorConfig.Name = oLayer3DdnsConfigDdnsVendorConfig.Name + } + nestedLayer3.DdnsConfig.DdnsVendorConfig = append(nestedLayer3.DdnsConfig.DdnsVendorConfig, nestedLayer3DdnsConfigDdnsVendorConfig) + } + } + if o.Layer3.DdnsConfig.DdnsCertProfile != nil { + nestedLayer3.DdnsConfig.DdnsCertProfile = o.Layer3.DdnsConfig.DdnsCertProfile + } + if o.Layer3.DdnsConfig.DdnsEnabled != nil { + nestedLayer3.DdnsConfig.DdnsEnabled = util.AsBool(o.Layer3.DdnsConfig.DdnsEnabled, nil) + } + if o.Layer3.DdnsConfig.DdnsHostname != nil { + nestedLayer3.DdnsConfig.DdnsHostname = o.Layer3.DdnsConfig.DdnsHostname + } + if o.Layer3.DdnsConfig.DdnsIp != nil { + nestedLayer3.DdnsConfig.DdnsIp = util.MemToStr(o.Layer3.DdnsConfig.DdnsIp) + } + if o.Layer3.DdnsConfig.DdnsIpv6 != nil { + nestedLayer3.DdnsConfig.DdnsIpv6 = util.MemToStr(o.Layer3.DdnsConfig.DdnsIpv6) + } + if o.Layer3.DdnsConfig.DdnsUpdateInterval != nil { + nestedLayer3.DdnsConfig.DdnsUpdateInterval = o.Layer3.DdnsConfig.DdnsUpdateInterval + } + if o.Layer3.DdnsConfig.DdnsVendor != nil { + nestedLayer3.DdnsConfig.DdnsVendor = o.Layer3.DdnsConfig.DdnsVendor + } + } + if o.Layer3.Mtu != nil { + nestedLayer3.Mtu = o.Layer3.Mtu + } if o.Layer3.NdpProxy != nil { nestedLayer3.NdpProxy = &Layer3NdpProxy{} if o.Layer3.NdpProxy.Misc != nil { @@ -2365,64 +2411,39 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { nestedLayer3.AdjustTcpMss.Ipv6MssAdjustment = o.Layer3.AdjustTcpMss.Ipv6MssAdjustment } } - if o.Layer3.Bonjour != nil { - nestedLayer3.Bonjour = &Layer3Bonjour{} - if o.Layer3.Bonjour.Misc != nil { - entry.Misc["Layer3Bonjour"] = o.Layer3.Bonjour.Misc - } - if o.Layer3.Bonjour.TtlCheck != nil { - nestedLayer3.Bonjour.TtlCheck = util.AsBool(o.Layer3.Bonjour.TtlCheck, nil) - } - if o.Layer3.Bonjour.Enable != nil { - nestedLayer3.Bonjour.Enable = util.AsBool(o.Layer3.Bonjour.Enable, nil) - } - if o.Layer3.Bonjour.GroupId != nil { - nestedLayer3.Bonjour.GroupId = o.Layer3.Bonjour.GroupId - } + if o.Layer3.DecryptForward != nil { + nestedLayer3.DecryptForward = util.AsBool(o.Layer3.DecryptForward, nil) } - if o.Layer3.DdnsConfig != nil { - nestedLayer3.DdnsConfig = &Layer3DdnsConfig{} - if o.Layer3.DdnsConfig.Misc != nil { - entry.Misc["Layer3DdnsConfig"] = o.Layer3.DdnsConfig.Misc - } - if o.Layer3.DdnsConfig.DdnsCertProfile != nil { - nestedLayer3.DdnsConfig.DdnsCertProfile = o.Layer3.DdnsConfig.DdnsCertProfile - } - if o.Layer3.DdnsConfig.DdnsEnabled != nil { - nestedLayer3.DdnsConfig.DdnsEnabled = util.AsBool(o.Layer3.DdnsConfig.DdnsEnabled, nil) - } - if o.Layer3.DdnsConfig.DdnsHostname != nil { - nestedLayer3.DdnsConfig.DdnsHostname = o.Layer3.DdnsConfig.DdnsHostname - } - if o.Layer3.DdnsConfig.DdnsIp != nil { - nestedLayer3.DdnsConfig.DdnsIp = util.MemToStr(o.Layer3.DdnsConfig.DdnsIp) + if o.Layer3.DhcpClient != nil { + nestedLayer3.DhcpClient = &Layer3DhcpClient{} + if o.Layer3.DhcpClient.Misc != nil { + entry.Misc["Layer3DhcpClient"] = o.Layer3.DhcpClient.Misc } - if o.Layer3.DdnsConfig.DdnsIpv6 != nil { - nestedLayer3.DdnsConfig.DdnsIpv6 = util.MemToStr(o.Layer3.DdnsConfig.DdnsIpv6) + if o.Layer3.DhcpClient.CreateDefaultRoute != nil { + nestedLayer3.DhcpClient.CreateDefaultRoute = util.AsBool(o.Layer3.DhcpClient.CreateDefaultRoute, nil) } - if o.Layer3.DdnsConfig.DdnsUpdateInterval != nil { - nestedLayer3.DdnsConfig.DdnsUpdateInterval = o.Layer3.DdnsConfig.DdnsUpdateInterval + if o.Layer3.DhcpClient.DefaultRouteMetric != nil { + nestedLayer3.DhcpClient.DefaultRouteMetric = o.Layer3.DhcpClient.DefaultRouteMetric } - if o.Layer3.DdnsConfig.DdnsVendor != nil { - nestedLayer3.DdnsConfig.DdnsVendor = o.Layer3.DdnsConfig.DdnsVendor + if o.Layer3.DhcpClient.Enable != nil { + nestedLayer3.DhcpClient.Enable = util.AsBool(o.Layer3.DhcpClient.Enable, nil) } - if o.Layer3.DdnsConfig.DdnsVendorConfig != nil { - nestedLayer3.DdnsConfig.DdnsVendorConfig = []Layer3DdnsConfigDdnsVendorConfig{} - for _, oLayer3DdnsConfigDdnsVendorConfig := range o.Layer3.DdnsConfig.DdnsVendorConfig { - nestedLayer3DdnsConfigDdnsVendorConfig := Layer3DdnsConfigDdnsVendorConfig{} - if oLayer3DdnsConfigDdnsVendorConfig.Misc != nil { - entry.Misc["Layer3DdnsConfigDdnsVendorConfig"] = oLayer3DdnsConfigDdnsVendorConfig.Misc - } - if oLayer3DdnsConfigDdnsVendorConfig.Value != nil { - nestedLayer3DdnsConfigDdnsVendorConfig.Value = oLayer3DdnsConfigDdnsVendorConfig.Value - } - if oLayer3DdnsConfigDdnsVendorConfig.Name != "" { - nestedLayer3DdnsConfigDdnsVendorConfig.Name = oLayer3DdnsConfigDdnsVendorConfig.Name - } - nestedLayer3.DdnsConfig.DdnsVendorConfig = append(nestedLayer3.DdnsConfig.DdnsVendorConfig, nestedLayer3DdnsConfigDdnsVendorConfig) + if o.Layer3.DhcpClient.SendHostname != nil { + nestedLayer3.DhcpClient.SendHostname = &Layer3DhcpClientSendHostname{} + if o.Layer3.DhcpClient.SendHostname.Misc != nil { + entry.Misc["Layer3DhcpClientSendHostname"] = o.Layer3.DhcpClient.SendHostname.Misc + } + if o.Layer3.DhcpClient.SendHostname.Hostname != nil { + nestedLayer3.DhcpClient.SendHostname.Hostname = o.Layer3.DhcpClient.SendHostname.Hostname + } + if o.Layer3.DhcpClient.SendHostname.Enable != nil { + nestedLayer3.DhcpClient.SendHostname.Enable = util.AsBool(o.Layer3.DhcpClient.SendHostname.Enable, nil) } } } + if o.Layer3.InterfaceManagementProfile != nil { + nestedLayer3.InterfaceManagementProfile = o.Layer3.InterfaceManagementProfile + } if o.Layer3.Ipv6 != nil { nestedLayer3.Ipv6 = &Layer3Ipv6{} if o.Layer3.Ipv6.Misc != nil { @@ -2433,15 +2454,6 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Layer3.Ipv6.NeighborDiscovery.Misc != nil { entry.Misc["Layer3Ipv6NeighborDiscovery"] = o.Layer3.Ipv6.NeighborDiscovery.Misc } - if o.Layer3.Ipv6.NeighborDiscovery.DadAttempts != nil { - nestedLayer3.Ipv6.NeighborDiscovery.DadAttempts = o.Layer3.Ipv6.NeighborDiscovery.DadAttempts - } - if o.Layer3.Ipv6.NeighborDiscovery.EnableDad != nil { - nestedLayer3.Ipv6.NeighborDiscovery.EnableDad = util.AsBool(o.Layer3.Ipv6.NeighborDiscovery.EnableDad, nil) - } - if o.Layer3.Ipv6.NeighborDiscovery.EnableNdpMonitor != nil { - nestedLayer3.Ipv6.NeighborDiscovery.EnableNdpMonitor = util.AsBool(o.Layer3.Ipv6.NeighborDiscovery.EnableNdpMonitor, nil) - } if o.Layer3.Ipv6.NeighborDiscovery.Neighbor != nil { nestedLayer3.Ipv6.NeighborDiscovery.Neighbor = []Layer3Ipv6NeighborDiscoveryNeighbor{} for _, oLayer3Ipv6NeighborDiscoveryNeighbor := range o.Layer3.Ipv6.NeighborDiscovery.Neighbor { @@ -2469,32 +2481,48 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Misc != nil { entry.Misc["Layer3Ipv6NeighborDiscoveryRouterAdvertisement"] = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Misc } + if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.RouterPreference != nil { + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.RouterPreference = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.RouterPreference + } if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Enable != nil { nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Enable = util.AsBool(o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Enable, nil) } - if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.LinkMtu != nil { - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.LinkMtu = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.LinkMtu - } - if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.ManagedFlag != nil { - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.ManagedFlag = util.AsBool(o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.ManagedFlag, nil) - } - if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer != nil { - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer + if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.HopLimit != nil { + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.HopLimit = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.HopLimit } - if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.RouterPreference != nil { - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.RouterPreference = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.RouterPreference + if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Lifetime != nil { + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Lifetime = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Lifetime } - if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.OtherFlag != nil { - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.OtherFlag = util.AsBool(o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.OtherFlag, nil) + if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MinInterval != nil { + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MinInterval = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MinInterval } if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.ReachableTime != nil { nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.ReachableTime = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.ReachableTime } + if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer != nil { + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer + } if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport != nil { nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport = &Layer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupport{} if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Misc != nil { entry.Misc["Layer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupport"] = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Misc } + if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Suffix != nil { + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Suffix = []Layer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix{} + for _, oLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix := range o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Suffix { + nestedLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix := Layer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix{} + if oLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix.Misc != nil { + entry.Misc["Layer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix"] = oLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix.Misc + } + if oLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix.Lifetime != nil { + nestedLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix.Lifetime = oLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix.Lifetime + } + if oLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix.Name != "" { + nestedLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix.Name = oLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix.Name + } + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Suffix = append(nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Suffix, nestedLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix) + } + } if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Enable != nil { nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Enable = util.AsBool(o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Enable, nil) } @@ -2514,45 +2542,77 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Server = append(nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Server, nestedLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportServer) } } - if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Suffix != nil { - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Suffix = []Layer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix{} - for _, oLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix := range o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Suffix { - nestedLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix := Layer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix{} - if oLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix.Misc != nil { - entry.Misc["Layer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix"] = oLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix.Misc - } - if oLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix.Lifetime != nil { - nestedLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix.Lifetime = oLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix.Lifetime - } - if oLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix.Name != "" { - nestedLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix.Name = oLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix.Name - } - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Suffix = append(nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Suffix, nestedLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix) - } - } } if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck != nil { nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck = util.AsBool(o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck, nil) } - if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.HopLimit != nil { - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.HopLimit = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.HopLimit + if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.LinkMtu != nil { + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.LinkMtu = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.LinkMtu } - if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Lifetime != nil { - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Lifetime = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Lifetime + if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.ManagedFlag != nil { + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.ManagedFlag = util.AsBool(o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.ManagedFlag, nil) } if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MaxInterval != nil { nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MaxInterval = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MaxInterval } - if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MinInterval != nil { - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MinInterval = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MinInterval + if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.OtherFlag != nil { + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.OtherFlag = util.AsBool(o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.OtherFlag, nil) } } + if o.Layer3.Ipv6.NeighborDiscovery.DadAttempts != nil { + nestedLayer3.Ipv6.NeighborDiscovery.DadAttempts = o.Layer3.Ipv6.NeighborDiscovery.DadAttempts + } + if o.Layer3.Ipv6.NeighborDiscovery.EnableDad != nil { + nestedLayer3.Ipv6.NeighborDiscovery.EnableDad = util.AsBool(o.Layer3.Ipv6.NeighborDiscovery.EnableDad, nil) + } + if o.Layer3.Ipv6.NeighborDiscovery.EnableNdpMonitor != nil { + nestedLayer3.Ipv6.NeighborDiscovery.EnableNdpMonitor = util.AsBool(o.Layer3.Ipv6.NeighborDiscovery.EnableNdpMonitor, nil) + } } if o.Layer3.Ipv6.DhcpClient != nil { nestedLayer3.Ipv6.DhcpClient = &Layer3Ipv6DhcpClient{} if o.Layer3.Ipv6.DhcpClient.Misc != nil { entry.Misc["Layer3Ipv6DhcpClient"] = o.Layer3.Ipv6.DhcpClient.Misc } + if o.Layer3.Ipv6.DhcpClient.V6Options != nil { + nestedLayer3.Ipv6.DhcpClient.V6Options = &Layer3Ipv6DhcpClientV6Options{} + if o.Layer3.Ipv6.DhcpClient.V6Options.Misc != nil { + entry.Misc["Layer3Ipv6DhcpClientV6Options"] = o.Layer3.Ipv6.DhcpClient.V6Options.Misc + } + if o.Layer3.Ipv6.DhcpClient.V6Options.DuidType != nil { + nestedLayer3.Ipv6.DhcpClient.V6Options.DuidType = o.Layer3.Ipv6.DhcpClient.V6Options.DuidType + } + if o.Layer3.Ipv6.DhcpClient.V6Options.Enable != nil { + nestedLayer3.Ipv6.DhcpClient.V6Options.Enable = &Layer3Ipv6DhcpClientV6OptionsEnable{} + if o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Misc != nil { + entry.Misc["Layer3Ipv6DhcpClientV6OptionsEnable"] = o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Misc + } + if o.Layer3.Ipv6.DhcpClient.V6Options.Enable.No != nil { + nestedLayer3.Ipv6.DhcpClient.V6Options.Enable.No = &Layer3Ipv6DhcpClientV6OptionsEnableNo{} + if o.Layer3.Ipv6.DhcpClient.V6Options.Enable.No.Misc != nil { + entry.Misc["Layer3Ipv6DhcpClientV6OptionsEnableNo"] = o.Layer3.Ipv6.DhcpClient.V6Options.Enable.No.Misc + } + } + if o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes != nil { + nestedLayer3.Ipv6.DhcpClient.V6Options.Enable.Yes = &Layer3Ipv6DhcpClientV6OptionsEnableYes{} + if o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes.Misc != nil { + entry.Misc["Layer3Ipv6DhcpClientV6OptionsEnableYes"] = o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes.Misc + } + if o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes.NonTempAddr != nil { + nestedLayer3.Ipv6.DhcpClient.V6Options.Enable.Yes.NonTempAddr = util.AsBool(o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes.NonTempAddr, nil) + } + if o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes.TempAddr != nil { + nestedLayer3.Ipv6.DhcpClient.V6Options.Enable.Yes.TempAddr = util.AsBool(o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes.TempAddr, nil) + } + } + } + if o.Layer3.Ipv6.DhcpClient.V6Options.RapidCommit != nil { + nestedLayer3.Ipv6.DhcpClient.V6Options.RapidCommit = util.AsBool(o.Layer3.Ipv6.DhcpClient.V6Options.RapidCommit, nil) + } + if o.Layer3.Ipv6.DhcpClient.V6Options.SupportSrvrReconfig != nil { + nestedLayer3.Ipv6.DhcpClient.V6Options.SupportSrvrReconfig = util.AsBool(o.Layer3.Ipv6.DhcpClient.V6Options.SupportSrvrReconfig, nil) + } + } if o.Layer3.Ipv6.DhcpClient.AcceptRaRoute != nil { nestedLayer3.Ipv6.DhcpClient.AcceptRaRoute = util.AsBool(o.Layer3.Ipv6.DhcpClient.AcceptRaRoute, nil) } @@ -2567,6 +2627,12 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.Misc != nil { entry.Misc["Layer3Ipv6DhcpClientNeighborDiscovery"] = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.Misc } + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.NsInterval != nil { + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.NsInterval = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.NsInterval + } + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.ReachableTime != nil { + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.ReachableTime = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.ReachableTime + } if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DadAttempts != nil { nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DadAttempts = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DadAttempts } @@ -2575,6 +2641,9 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Misc != nil { entry.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsServer"] = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Misc } + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Enable != nil { + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Enable = util.AsBool(o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Enable, nil) + } if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source != nil { nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source = &Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSource{} if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Misc != nil { @@ -2609,15 +2678,15 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { } } } - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Enable != nil { - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Enable = util.AsBool(o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Enable, nil) - } } if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix != nil { nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix = &Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffix{} if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Misc != nil { entry.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffix"] = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Misc } + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Enable != nil { + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Enable = util.AsBool(o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Enable, nil) + } if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source != nil { nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source = &Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSource{} if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Misc != nil { @@ -2652,9 +2721,6 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { } } } - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Enable != nil { - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Enable = util.AsBool(o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Enable, nil) - } } if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.EnableDad != nil { nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.EnableDad = util.AsBool(o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.EnableDad, nil) @@ -2669,21 +2735,15 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.Misc != nil { entry.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryNeighbor"] = oLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.Misc } - if oLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.Name != "" { - nestedLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.Name = oLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.Name - } if oLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.HwAddress != nil { nestedLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.HwAddress = oLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.HwAddress } + if oLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.Name != "" { + nestedLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.Name = oLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.Name + } nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.Neighbor = append(nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.Neighbor, nestedLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor) } } - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.NsInterval != nil { - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.NsInterval = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.NsInterval - } - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.ReachableTime != nil { - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.ReachableTime = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.ReachableTime - } } if o.Layer3.Ipv6.DhcpClient.Preference != nil { nestedLayer3.Ipv6.DhcpClient.Preference = o.Layer3.Ipv6.DhcpClient.Preference @@ -2721,197 +2781,89 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { } } } - if o.Layer3.Ipv6.DhcpClient.V6Options != nil { - nestedLayer3.Ipv6.DhcpClient.V6Options = &Layer3Ipv6DhcpClientV6Options{} - if o.Layer3.Ipv6.DhcpClient.V6Options.Misc != nil { - entry.Misc["Layer3Ipv6DhcpClientV6Options"] = o.Layer3.Ipv6.DhcpClient.V6Options.Misc - } - if o.Layer3.Ipv6.DhcpClient.V6Options.SupportSrvrReconfig != nil { - nestedLayer3.Ipv6.DhcpClient.V6Options.SupportSrvrReconfig = util.AsBool(o.Layer3.Ipv6.DhcpClient.V6Options.SupportSrvrReconfig, nil) - } - if o.Layer3.Ipv6.DhcpClient.V6Options.DuidType != nil { - nestedLayer3.Ipv6.DhcpClient.V6Options.DuidType = o.Layer3.Ipv6.DhcpClient.V6Options.DuidType - } - if o.Layer3.Ipv6.DhcpClient.V6Options.Enable != nil { - nestedLayer3.Ipv6.DhcpClient.V6Options.Enable = &Layer3Ipv6DhcpClientV6OptionsEnable{} - if o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Misc != nil { - entry.Misc["Layer3Ipv6DhcpClientV6OptionsEnable"] = o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Misc - } - if o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes != nil { - nestedLayer3.Ipv6.DhcpClient.V6Options.Enable.Yes = &Layer3Ipv6DhcpClientV6OptionsEnableYes{} - if o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes.Misc != nil { - entry.Misc["Layer3Ipv6DhcpClientV6OptionsEnableYes"] = o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes.Misc - } - if o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes.NonTempAddr != nil { - nestedLayer3.Ipv6.DhcpClient.V6Options.Enable.Yes.NonTempAddr = util.AsBool(o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes.NonTempAddr, nil) - } - if o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes.TempAddr != nil { - nestedLayer3.Ipv6.DhcpClient.V6Options.Enable.Yes.TempAddr = util.AsBool(o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes.TempAddr, nil) - } - } - if o.Layer3.Ipv6.DhcpClient.V6Options.Enable.No != nil { - nestedLayer3.Ipv6.DhcpClient.V6Options.Enable.No = &Layer3Ipv6DhcpClientV6OptionsEnableNo{} - if o.Layer3.Ipv6.DhcpClient.V6Options.Enable.No.Misc != nil { - entry.Misc["Layer3Ipv6DhcpClientV6OptionsEnableNo"] = o.Layer3.Ipv6.DhcpClient.V6Options.Enable.No.Misc - } - } - } - if o.Layer3.Ipv6.DhcpClient.V6Options.RapidCommit != nil { - nestedLayer3.Ipv6.DhcpClient.V6Options.RapidCommit = util.AsBool(o.Layer3.Ipv6.DhcpClient.V6Options.RapidCommit, nil) - } - } } if o.Layer3.Ipv6.Inherited != nil { nestedLayer3.Ipv6.Inherited = &Layer3Ipv6Inherited{} if o.Layer3.Ipv6.Inherited.Misc != nil { entry.Misc["Layer3Ipv6Inherited"] = o.Layer3.Ipv6.Inherited.Misc } - if o.Layer3.Ipv6.Inherited.AssignAddr != nil { - nestedLayer3.Ipv6.Inherited.AssignAddr = []Layer3Ipv6InheritedAssignAddr{} - for _, oLayer3Ipv6InheritedAssignAddr := range o.Layer3.Ipv6.Inherited.AssignAddr { - nestedLayer3Ipv6InheritedAssignAddr := Layer3Ipv6InheritedAssignAddr{} - if oLayer3Ipv6InheritedAssignAddr.Misc != nil { - entry.Misc["Layer3Ipv6InheritedAssignAddr"] = oLayer3Ipv6InheritedAssignAddr.Misc + if o.Layer3.Ipv6.Inherited.Enable != nil { + nestedLayer3.Ipv6.Inherited.Enable = util.AsBool(o.Layer3.Ipv6.Inherited.Enable, nil) + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery = &Layer3Ipv6InheritedNeighborDiscovery{} + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.Misc != nil { + entry.Misc["Layer3Ipv6InheritedNeighborDiscovery"] = o.Layer3.Ipv6.Inherited.NeighborDiscovery.Misc + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix = &Layer3Ipv6InheritedNeighborDiscoveryDnsSuffix{} + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Misc != nil { + entry.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsSuffix"] = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Misc } - if oLayer3Ipv6InheritedAssignAddr.Type != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type = &Layer3Ipv6InheritedAssignAddrType{} - if oLayer3Ipv6InheritedAssignAddr.Type.Misc != nil { - entry.Misc["Layer3Ipv6InheritedAssignAddrType"] = oLayer3Ipv6InheritedAssignAddr.Type.Misc + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Enable != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Enable = util.AsBool(o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Enable, nil) + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source = &Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSource{} + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Misc != nil { + entry.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSource"] = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Misc } - if oLayer3Ipv6InheritedAssignAddr.Type.Gua != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Gua = &Layer3Ipv6InheritedAssignAddrTypeGua{} - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.Misc != nil { - entry.Misc["Layer3Ipv6InheritedAssignAddrTypeGua"] = oLayer3Ipv6InheritedAssignAddr.Type.Gua.Misc + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Dhcpv6 != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Dhcpv6 = &Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceDhcpv6{} + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Dhcpv6.Misc != nil { + entry.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceDhcpv6"] = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Dhcpv6.Misc } - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.EnableOnInterface != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.EnableOnInterface = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Gua.EnableOnInterface, nil) + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Dhcpv6.PrefixPool != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Dhcpv6.PrefixPool = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Dhcpv6.PrefixPool } - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PrefixPool != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.PrefixPool = oLayer3Ipv6InheritedAssignAddr.Type.Gua.PrefixPool + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Manual != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Manual = &Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManual{} + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Manual.Misc != nil { + entry.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManual"] = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Manual.Misc } - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType = &Layer3Ipv6InheritedAssignAddrTypeGuaPoolType{} - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.Misc != nil { - entry.Misc["Layer3Ipv6InheritedAssignAddrTypeGuaPoolType"] = oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.Misc - } - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.Dynamic != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.Dynamic = &Layer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamic{} - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.Dynamic.Misc != nil { - entry.Misc["Layer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamic"] = oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.Dynamic.Misc + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Manual.Suffix != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Manual.Suffix = []Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix{} + for _, oLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix := range o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Manual.Suffix { + nestedLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix := Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix{} + if oLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Misc != nil { + entry.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix"] = oLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Misc } - } - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId = &Layer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamicId{} - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId.Misc != nil { - entry.Misc["Layer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamicId"] = oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId.Misc + if oLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Lifetime != nil { + nestedLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Lifetime = oLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Lifetime } - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId.Identifier != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId.Identifier = oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId.Identifier + if oLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Name != "" { + nestedLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Name = oLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Name } + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Manual.Suffix = append(nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Manual.Suffix, nestedLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix) } } - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise = &Layer3Ipv6InheritedAssignAddrTypeGuaAdvertise{} - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.Misc != nil { - entry.Misc["Layer3Ipv6InheritedAssignAddrTypeGuaAdvertise"] = oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.Misc - } - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.Enable != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.Enable = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.Enable, nil) - } - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.OnlinkFlag != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.OnlinkFlag = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.OnlinkFlag, nil) - } - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.AutoConfigFlag != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.AutoConfigFlag = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.AutoConfigFlag, nil) - } - } - } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula = &Layer3Ipv6InheritedAssignAddrTypeUla{} - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Misc != nil { - entry.Misc["Layer3Ipv6InheritedAssignAddrTypeUla"] = oLayer3Ipv6InheritedAssignAddr.Type.Ula.Misc - } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Prefix != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Prefix = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Ula.Prefix, nil) - } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Anycast != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Anycast = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Ula.Anycast, nil) - } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise = &Layer3Ipv6InheritedAssignAddrTypeUlaAdvertise{} - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.Misc != nil { - entry.Misc["Layer3Ipv6InheritedAssignAddrTypeUlaAdvertise"] = oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.Misc - } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.Enable != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.Enable = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.Enable, nil) - } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.ValidLifetime != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.ValidLifetime = oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.ValidLifetime - } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.PreferredLifetime != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.PreferredLifetime = oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.PreferredLifetime - } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.OnlinkFlag != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.OnlinkFlag = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.OnlinkFlag, nil) - } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.AutoConfigFlag != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.AutoConfigFlag = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.AutoConfigFlag, nil) - } - } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.EnableOnInterface != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.EnableOnInterface = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Ula.EnableOnInterface, nil) - } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Address != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Address = oLayer3Ipv6InheritedAssignAddr.Type.Ula.Address - } - } - } - if oLayer3Ipv6InheritedAssignAddr.Name != "" { - nestedLayer3Ipv6InheritedAssignAddr.Name = oLayer3Ipv6InheritedAssignAddr.Name - } - nestedLayer3.Ipv6.Inherited.AssignAddr = append(nestedLayer3.Ipv6.Inherited.AssignAddr, nestedLayer3Ipv6InheritedAssignAddr) - } - } - if o.Layer3.Ipv6.Inherited.Enable != nil { - nestedLayer3.Ipv6.Inherited.Enable = util.AsBool(o.Layer3.Ipv6.Inherited.Enable, nil) - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery = &Layer3Ipv6InheritedNeighborDiscovery{} - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.Misc != nil { - entry.Misc["Layer3Ipv6InheritedNeighborDiscovery"] = o.Layer3.Ipv6.Inherited.NeighborDiscovery.Misc - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.EnableDad != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.EnableDad = util.AsBool(o.Layer3.Ipv6.Inherited.NeighborDiscovery.EnableDad, nil) - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.EnableNdpMonitor != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.EnableNdpMonitor = util.AsBool(o.Layer3.Ipv6.Inherited.NeighborDiscovery.EnableNdpMonitor, nil) - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.ReachableTime != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.ReachableTime = o.Layer3.Ipv6.Inherited.NeighborDiscovery.ReachableTime - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DadAttempts != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DadAttempts = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DadAttempts - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsServer = &Layer3Ipv6InheritedNeighborDiscoveryDnsServer{} - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Misc != nil { - entry.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsServer"] = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Misc - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Enable != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Enable = util.AsBool(o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Enable, nil) - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source = &Layer3Ipv6InheritedNeighborDiscoveryDnsServerSource{} - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Misc != nil { - entry.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsServerSource"] = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Misc - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6 != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6 = &Layer3Ipv6InheritedNeighborDiscoveryDnsServerSourceDhcpv6{} - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6.Misc != nil { - entry.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsServerSourceDhcpv6"] = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6.Misc - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6.PrefixPool != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6.PrefixPool = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6.PrefixPool + } + } + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.ReachableTime != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.ReachableTime = o.Layer3.Ipv6.Inherited.NeighborDiscovery.ReachableTime + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsServer = &Layer3Ipv6InheritedNeighborDiscoveryDnsServer{} + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Misc != nil { + entry.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsServer"] = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Misc + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Enable != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Enable = util.AsBool(o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Enable, nil) + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source = &Layer3Ipv6InheritedNeighborDiscoveryDnsServerSource{} + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Misc != nil { + entry.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsServerSource"] = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Misc + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6 != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6 = &Layer3Ipv6InheritedNeighborDiscoveryDnsServerSourceDhcpv6{} + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6.Misc != nil { + entry.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsServerSourceDhcpv6"] = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6.Misc + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6.PrefixPool != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6.PrefixPool = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6.PrefixPool } } if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual != nil { @@ -2926,63 +2878,23 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Misc != nil { entry.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer"] = oLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Misc } - if oLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Name != "" { - nestedLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Name = oLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Name - } if oLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Lifetime != nil { nestedLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Lifetime = oLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Lifetime } + if oLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Name != "" { + nestedLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Name = oLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Name + } nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual.Server = append(nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual.Server, nestedLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer) } } } } } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix = &Layer3Ipv6InheritedNeighborDiscoveryDnsSuffix{} - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Misc != nil { - entry.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsSuffix"] = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Misc - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Enable != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Enable = util.AsBool(o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Enable, nil) - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source = &Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSource{} - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Misc != nil { - entry.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSource"] = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Misc - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Dhcpv6 != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Dhcpv6 = &Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceDhcpv6{} - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Dhcpv6.Misc != nil { - entry.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceDhcpv6"] = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Dhcpv6.Misc - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Dhcpv6.PrefixPool != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Dhcpv6.PrefixPool = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Dhcpv6.PrefixPool - } - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Manual != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Manual = &Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManual{} - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Manual.Misc != nil { - entry.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManual"] = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Manual.Misc - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Manual.Suffix != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Manual.Suffix = []Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix{} - for _, oLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix := range o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Manual.Suffix { - nestedLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix := Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix{} - if oLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Misc != nil { - entry.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix"] = oLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Misc - } - if oLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Lifetime != nil { - nestedLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Lifetime = oLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Lifetime - } - if oLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Name != "" { - nestedLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Name = oLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Name - } - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Manual.Suffix = append(nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Manual.Suffix, nestedLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix) - } - } - } - } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.EnableDad != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.EnableDad = util.AsBool(o.Layer3.Ipv6.Inherited.NeighborDiscovery.EnableDad, nil) + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.EnableNdpMonitor != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.EnableNdpMonitor = util.AsBool(o.Layer3.Ipv6.Inherited.NeighborDiscovery.EnableNdpMonitor, nil) } if o.Layer3.Ipv6.Inherited.NeighborDiscovery.Neighbor != nil { nestedLayer3.Ipv6.Inherited.NeighborDiscovery.Neighbor = []Layer3Ipv6InheritedNeighborDiscoveryNeighbor{} @@ -3008,33 +2920,27 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Misc != nil { entry.Misc["Layer3Ipv6InheritedNeighborDiscoveryRouterAdvertisement"] = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Misc } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Lifetime != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Lifetime = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Lifetime + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.LinkMtu != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.LinkMtu = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.LinkMtu + } if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.ManagedFlag != nil { nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.ManagedFlag = util.AsBool(o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.ManagedFlag, nil) } if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.OtherFlag != nil { nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.OtherFlag = util.AsBool(o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.OtherFlag, nil) } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RouterPreference != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RouterPreference = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RouterPreference } if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Enable != nil { nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Enable = util.AsBool(o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Enable, nil) } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck = util.AsBool(o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck, nil) - } if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.HopLimit != nil { nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.HopLimit = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.HopLimit } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Lifetime != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Lifetime = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Lifetime - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RouterPreference != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RouterPreference = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RouterPreference - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.LinkMtu != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.LinkMtu = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.LinkMtu - } if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.MaxInterval != nil { nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.MaxInterval = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.MaxInterval } @@ -3044,6 +2950,121 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.ReachableTime != nil { nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.ReachableTime = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.ReachableTime } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck = util.AsBool(o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck, nil) + } + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DadAttempts != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DadAttempts = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DadAttempts + } + } + if o.Layer3.Ipv6.Inherited.AssignAddr != nil { + nestedLayer3.Ipv6.Inherited.AssignAddr = []Layer3Ipv6InheritedAssignAddr{} + for _, oLayer3Ipv6InheritedAssignAddr := range o.Layer3.Ipv6.Inherited.AssignAddr { + nestedLayer3Ipv6InheritedAssignAddr := Layer3Ipv6InheritedAssignAddr{} + if oLayer3Ipv6InheritedAssignAddr.Misc != nil { + entry.Misc["Layer3Ipv6InheritedAssignAddr"] = oLayer3Ipv6InheritedAssignAddr.Misc + } + if oLayer3Ipv6InheritedAssignAddr.Name != "" { + nestedLayer3Ipv6InheritedAssignAddr.Name = oLayer3Ipv6InheritedAssignAddr.Name + } + if oLayer3Ipv6InheritedAssignAddr.Type != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type = &Layer3Ipv6InheritedAssignAddrType{} + if oLayer3Ipv6InheritedAssignAddr.Type.Misc != nil { + entry.Misc["Layer3Ipv6InheritedAssignAddrType"] = oLayer3Ipv6InheritedAssignAddr.Type.Misc + } + if oLayer3Ipv6InheritedAssignAddr.Type.Gua != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Gua = &Layer3Ipv6InheritedAssignAddrTypeGua{} + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.Misc != nil { + entry.Misc["Layer3Ipv6InheritedAssignAddrTypeGua"] = oLayer3Ipv6InheritedAssignAddr.Type.Gua.Misc + } + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PrefixPool != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.PrefixPool = oLayer3Ipv6InheritedAssignAddr.Type.Gua.PrefixPool + } + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType = &Layer3Ipv6InheritedAssignAddrTypeGuaPoolType{} + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.Misc != nil { + entry.Misc["Layer3Ipv6InheritedAssignAddrTypeGuaPoolType"] = oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.Misc + } + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.Dynamic != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.Dynamic = &Layer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamic{} + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.Dynamic.Misc != nil { + entry.Misc["Layer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamic"] = oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.Dynamic.Misc + } + } + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId = &Layer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamicId{} + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId.Misc != nil { + entry.Misc["Layer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamicId"] = oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId.Misc + } + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId.Identifier != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId.Identifier = oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId.Identifier + } + } + } + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise = &Layer3Ipv6InheritedAssignAddrTypeGuaAdvertise{} + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.Misc != nil { + entry.Misc["Layer3Ipv6InheritedAssignAddrTypeGuaAdvertise"] = oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.Misc + } + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.OnlinkFlag != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.OnlinkFlag = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.OnlinkFlag, nil) + } + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.AutoConfigFlag != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.AutoConfigFlag = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.AutoConfigFlag, nil) + } + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.Enable != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.Enable = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.Enable, nil) + } + } + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.EnableOnInterface != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.EnableOnInterface = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Gua.EnableOnInterface, nil) + } + } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula = &Layer3Ipv6InheritedAssignAddrTypeUla{} + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Misc != nil { + entry.Misc["Layer3Ipv6InheritedAssignAddrTypeUla"] = oLayer3Ipv6InheritedAssignAddr.Type.Ula.Misc + } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.EnableOnInterface != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.EnableOnInterface = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Ula.EnableOnInterface, nil) + } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Address != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Address = oLayer3Ipv6InheritedAssignAddr.Type.Ula.Address + } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Prefix != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Prefix = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Ula.Prefix, nil) + } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Anycast != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Anycast = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Ula.Anycast, nil) + } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise = &Layer3Ipv6InheritedAssignAddrTypeUlaAdvertise{} + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.Misc != nil { + entry.Misc["Layer3Ipv6InheritedAssignAddrTypeUlaAdvertise"] = oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.Misc + } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.Enable != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.Enable = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.Enable, nil) + } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.ValidLifetime != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.ValidLifetime = oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.ValidLifetime + } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.PreferredLifetime != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.PreferredLifetime = oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.PreferredLifetime + } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.OnlinkFlag != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.OnlinkFlag = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.OnlinkFlag, nil) + } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.AutoConfigFlag != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.AutoConfigFlag = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.AutoConfigFlag, nil) + } + } + } + } + nestedLayer3.Ipv6.Inherited.AssignAddr = append(nestedLayer3.Ipv6.Inherited.AssignAddr, nestedLayer3Ipv6InheritedAssignAddr) } } } @@ -3074,9 +3095,6 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oLayer3Ipv6Address.Advertise.Misc != nil { entry.Misc["Layer3Ipv6AddressAdvertise"] = oLayer3Ipv6Address.Advertise.Misc } - if oLayer3Ipv6Address.Advertise.AutoConfigFlag != nil { - nestedLayer3Ipv6Address.Advertise.AutoConfigFlag = util.AsBool(oLayer3Ipv6Address.Advertise.AutoConfigFlag, nil) - } if oLayer3Ipv6Address.Advertise.Enable != nil { nestedLayer3Ipv6Address.Advertise.Enable = util.AsBool(oLayer3Ipv6Address.Advertise.Enable, nil) } @@ -3089,6 +3107,9 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oLayer3Ipv6Address.Advertise.OnlinkFlag != nil { nestedLayer3Ipv6Address.Advertise.OnlinkFlag = util.AsBool(oLayer3Ipv6Address.Advertise.OnlinkFlag, nil) } + if oLayer3Ipv6Address.Advertise.AutoConfigFlag != nil { + nestedLayer3Ipv6Address.Advertise.AutoConfigFlag = util.AsBool(oLayer3Ipv6Address.Advertise.AutoConfigFlag, nil) + } } if oLayer3Ipv6Address.Name != "" { nestedLayer3Ipv6Address.Name = oLayer3Ipv6Address.Name @@ -3103,124 +3124,24 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { nestedLayer3.Ipv6.InterfaceId = o.Layer3.Ipv6.InterfaceId } } - if o.Layer3.Lldp != nil { - nestedLayer3.Lldp = &Layer3Lldp{} - if o.Layer3.Lldp.Misc != nil { - entry.Misc["Layer3Lldp"] = o.Layer3.Lldp.Misc - } - if o.Layer3.Lldp.HighAvailability != nil { - nestedLayer3.Lldp.HighAvailability = &Layer3LldpHighAvailability{} - if o.Layer3.Lldp.HighAvailability.Misc != nil { - entry.Misc["Layer3LldpHighAvailability"] = o.Layer3.Lldp.HighAvailability.Misc - } - if o.Layer3.Lldp.HighAvailability.PassivePreNegotiation != nil { - nestedLayer3.Lldp.HighAvailability.PassivePreNegotiation = util.AsBool(o.Layer3.Lldp.HighAvailability.PassivePreNegotiation, nil) - } - } - if o.Layer3.Lldp.Profile != nil { - nestedLayer3.Lldp.Profile = o.Layer3.Lldp.Profile - } - if o.Layer3.Lldp.Enable != nil { - nestedLayer3.Lldp.Enable = util.AsBool(o.Layer3.Lldp.Enable, nil) - } - } - if o.Layer3.Arp != nil { - nestedLayer3.Arp = []Layer3Arp{} - for _, oLayer3Arp := range o.Layer3.Arp { - nestedLayer3Arp := Layer3Arp{} - if oLayer3Arp.Misc != nil { - entry.Misc["Layer3Arp"] = oLayer3Arp.Misc - } - if oLayer3Arp.HwAddress != nil { - nestedLayer3Arp.HwAddress = oLayer3Arp.HwAddress - } - if oLayer3Arp.Name != "" { - nestedLayer3Arp.Name = oLayer3Arp.Name - } - nestedLayer3.Arp = append(nestedLayer3.Arp, nestedLayer3Arp) - } - } - if o.Layer3.DecryptForward != nil { - nestedLayer3.DecryptForward = util.AsBool(o.Layer3.DecryptForward, nil) - } - if o.Layer3.Mtu != nil { - nestedLayer3.Mtu = o.Layer3.Mtu - } if o.Layer3.NetflowProfile != nil { nestedLayer3.NetflowProfile = o.Layer3.NetflowProfile } - if o.Layer3.DhcpClient != nil { - nestedLayer3.DhcpClient = &Layer3DhcpClient{} - if o.Layer3.DhcpClient.Misc != nil { - entry.Misc["Layer3DhcpClient"] = o.Layer3.DhcpClient.Misc - } - if o.Layer3.DhcpClient.CreateDefaultRoute != nil { - nestedLayer3.DhcpClient.CreateDefaultRoute = util.AsBool(o.Layer3.DhcpClient.CreateDefaultRoute, nil) - } - if o.Layer3.DhcpClient.DefaultRouteMetric != nil { - nestedLayer3.DhcpClient.DefaultRouteMetric = o.Layer3.DhcpClient.DefaultRouteMetric - } - if o.Layer3.DhcpClient.Enable != nil { - nestedLayer3.DhcpClient.Enable = util.AsBool(o.Layer3.DhcpClient.Enable, nil) - } - if o.Layer3.DhcpClient.SendHostname != nil { - nestedLayer3.DhcpClient.SendHostname = &Layer3DhcpClientSendHostname{} - if o.Layer3.DhcpClient.SendHostname.Misc != nil { - entry.Misc["Layer3DhcpClientSendHostname"] = o.Layer3.DhcpClient.SendHostname.Misc - } - if o.Layer3.DhcpClient.SendHostname.Enable != nil { - nestedLayer3.DhcpClient.SendHostname.Enable = util.AsBool(o.Layer3.DhcpClient.SendHostname.Enable, nil) - } - if o.Layer3.DhcpClient.SendHostname.Hostname != nil { - nestedLayer3.DhcpClient.SendHostname.Hostname = o.Layer3.DhcpClient.SendHostname.Hostname - } - } - } - if o.Layer3.InterfaceManagementProfile != nil { - nestedLayer3.InterfaceManagementProfile = o.Layer3.InterfaceManagementProfile - } - if o.Layer3.SdwanLinkSettings != nil { - nestedLayer3.SdwanLinkSettings = &Layer3SdwanLinkSettings{} - if o.Layer3.SdwanLinkSettings.Misc != nil { - entry.Misc["Layer3SdwanLinkSettings"] = o.Layer3.SdwanLinkSettings.Misc + if o.Layer3.Bonjour != nil { + nestedLayer3.Bonjour = &Layer3Bonjour{} + if o.Layer3.Bonjour.Misc != nil { + entry.Misc["Layer3Bonjour"] = o.Layer3.Bonjour.Misc } - if o.Layer3.SdwanLinkSettings.SdwanInterfaceProfile != nil { - nestedLayer3.SdwanLinkSettings.SdwanInterfaceProfile = o.Layer3.SdwanLinkSettings.SdwanInterfaceProfile + if o.Layer3.Bonjour.Enable != nil { + nestedLayer3.Bonjour.Enable = util.AsBool(o.Layer3.Bonjour.Enable, nil) } - if o.Layer3.SdwanLinkSettings.UpstreamNat != nil { - nestedLayer3.SdwanLinkSettings.UpstreamNat = &Layer3SdwanLinkSettingsUpstreamNat{} - if o.Layer3.SdwanLinkSettings.UpstreamNat.Misc != nil { - entry.Misc["Layer3SdwanLinkSettingsUpstreamNat"] = o.Layer3.SdwanLinkSettings.UpstreamNat.Misc - } - if o.Layer3.SdwanLinkSettings.UpstreamNat.Enable != nil { - nestedLayer3.SdwanLinkSettings.UpstreamNat.Enable = util.AsBool(o.Layer3.SdwanLinkSettings.UpstreamNat.Enable, nil) - } - if o.Layer3.SdwanLinkSettings.UpstreamNat.Ddns != nil { - nestedLayer3.SdwanLinkSettings.UpstreamNat.Ddns = &Layer3SdwanLinkSettingsUpstreamNatDdns{} - if o.Layer3.SdwanLinkSettings.UpstreamNat.Ddns.Misc != nil { - entry.Misc["Layer3SdwanLinkSettingsUpstreamNatDdns"] = o.Layer3.SdwanLinkSettings.UpstreamNat.Ddns.Misc - } - } - if o.Layer3.SdwanLinkSettings.UpstreamNat.StaticIp != nil { - nestedLayer3.SdwanLinkSettings.UpstreamNat.StaticIp = &Layer3SdwanLinkSettingsUpstreamNatStaticIp{} - if o.Layer3.SdwanLinkSettings.UpstreamNat.StaticIp.Misc != nil { - entry.Misc["Layer3SdwanLinkSettingsUpstreamNatStaticIp"] = o.Layer3.SdwanLinkSettings.UpstreamNat.StaticIp.Misc - } - if o.Layer3.SdwanLinkSettings.UpstreamNat.StaticIp.Fqdn != nil { - nestedLayer3.SdwanLinkSettings.UpstreamNat.StaticIp.Fqdn = o.Layer3.SdwanLinkSettings.UpstreamNat.StaticIp.Fqdn - } - if o.Layer3.SdwanLinkSettings.UpstreamNat.StaticIp.IpAddress != nil { - nestedLayer3.SdwanLinkSettings.UpstreamNat.StaticIp.IpAddress = o.Layer3.SdwanLinkSettings.UpstreamNat.StaticIp.IpAddress - } - } + if o.Layer3.Bonjour.GroupId != nil { + nestedLayer3.Bonjour.GroupId = o.Layer3.Bonjour.GroupId } - if o.Layer3.SdwanLinkSettings.Enable != nil { - nestedLayer3.SdwanLinkSettings.Enable = util.AsBool(o.Layer3.SdwanLinkSettings.Enable, nil) + if o.Layer3.Bonjour.TtlCheck != nil { + nestedLayer3.Bonjour.TtlCheck = util.AsBool(o.Layer3.Bonjour.TtlCheck, nil) } } - if o.Layer3.UntaggedSubInterface != nil { - nestedLayer3.UntaggedSubInterface = util.AsBool(o.Layer3.UntaggedSubInterface, nil) - } if o.Layer3.DfIgnore != nil { nestedLayer3.DfIgnore = util.AsBool(o.Layer3.DfIgnore, nil) } @@ -3231,12 +3152,12 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oLayer3Ip.Misc != nil { entry.Misc["Layer3Ip"] = oLayer3Ip.Misc } - if oLayer3Ip.Name != "" { - nestedLayer3Ip.Name = oLayer3Ip.Name - } if oLayer3Ip.SdwanGateway != nil { nestedLayer3Ip.SdwanGateway = oLayer3Ip.SdwanGateway } + if oLayer3Ip.Name != "" { + nestedLayer3Ip.Name = oLayer3Ip.Name + } nestedLayer3.Ip = append(nestedLayer3.Ip, nestedLayer3Ip) } } @@ -3245,6 +3166,18 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Layer3.Lacp.Misc != nil { entry.Misc["Layer3Lacp"] = o.Layer3.Lacp.Misc } + if o.Layer3.Lacp.Mode != nil { + nestedLayer3.Lacp.Mode = o.Layer3.Lacp.Mode + } + if o.Layer3.Lacp.SystemPriority != nil { + nestedLayer3.Lacp.SystemPriority = o.Layer3.Lacp.SystemPriority + } + if o.Layer3.Lacp.TransmissionRate != nil { + nestedLayer3.Lacp.TransmissionRate = o.Layer3.Lacp.TransmissionRate + } + if o.Layer3.Lacp.Enable != nil { + nestedLayer3.Lacp.Enable = util.AsBool(o.Layer3.Lacp.Enable, nil) + } if o.Layer3.Lacp.FastFailover != nil { nestedLayer3.Lacp.FastFailover = util.AsBool(o.Layer3.Lacp.FastFailover, nil) } @@ -3253,24 +3186,91 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Layer3.Lacp.HighAvailability.Misc != nil { entry.Misc["Layer3LacpHighAvailability"] = o.Layer3.Lacp.HighAvailability.Misc } - if o.Layer3.Lacp.HighAvailability.PassivePreNegotiation != nil { - nestedLayer3.Lacp.HighAvailability.PassivePreNegotiation = util.AsBool(o.Layer3.Lacp.HighAvailability.PassivePreNegotiation, nil) + if o.Layer3.Lacp.HighAvailability.PassivePreNegotiation != nil { + nestedLayer3.Lacp.HighAvailability.PassivePreNegotiation = util.AsBool(o.Layer3.Lacp.HighAvailability.PassivePreNegotiation, nil) + } + } + if o.Layer3.Lacp.MaxPorts != nil { + nestedLayer3.Lacp.MaxPorts = o.Layer3.Lacp.MaxPorts + } + } + if o.Layer3.UntaggedSubInterface != nil { + nestedLayer3.UntaggedSubInterface = util.AsBool(o.Layer3.UntaggedSubInterface, nil) + } + if o.Layer3.Arp != nil { + nestedLayer3.Arp = []Layer3Arp{} + for _, oLayer3Arp := range o.Layer3.Arp { + nestedLayer3Arp := Layer3Arp{} + if oLayer3Arp.Misc != nil { + entry.Misc["Layer3Arp"] = oLayer3Arp.Misc + } + if oLayer3Arp.Name != "" { + nestedLayer3Arp.Name = oLayer3Arp.Name + } + if oLayer3Arp.HwAddress != nil { + nestedLayer3Arp.HwAddress = oLayer3Arp.HwAddress + } + nestedLayer3.Arp = append(nestedLayer3.Arp, nestedLayer3Arp) + } + } + if o.Layer3.Lldp != nil { + nestedLayer3.Lldp = &Layer3Lldp{} + if o.Layer3.Lldp.Misc != nil { + entry.Misc["Layer3Lldp"] = o.Layer3.Lldp.Misc + } + if o.Layer3.Lldp.Enable != nil { + nestedLayer3.Lldp.Enable = util.AsBool(o.Layer3.Lldp.Enable, nil) + } + if o.Layer3.Lldp.HighAvailability != nil { + nestedLayer3.Lldp.HighAvailability = &Layer3LldpHighAvailability{} + if o.Layer3.Lldp.HighAvailability.Misc != nil { + entry.Misc["Layer3LldpHighAvailability"] = o.Layer3.Lldp.HighAvailability.Misc + } + if o.Layer3.Lldp.HighAvailability.PassivePreNegotiation != nil { + nestedLayer3.Lldp.HighAvailability.PassivePreNegotiation = util.AsBool(o.Layer3.Lldp.HighAvailability.PassivePreNegotiation, nil) } } - if o.Layer3.Lacp.MaxPorts != nil { - nestedLayer3.Lacp.MaxPorts = o.Layer3.Lacp.MaxPorts + if o.Layer3.Lldp.Profile != nil { + nestedLayer3.Lldp.Profile = o.Layer3.Lldp.Profile } - if o.Layer3.Lacp.Mode != nil { - nestedLayer3.Lacp.Mode = o.Layer3.Lacp.Mode + } + if o.Layer3.SdwanLinkSettings != nil { + nestedLayer3.SdwanLinkSettings = &Layer3SdwanLinkSettings{} + if o.Layer3.SdwanLinkSettings.Misc != nil { + entry.Misc["Layer3SdwanLinkSettings"] = o.Layer3.SdwanLinkSettings.Misc } - if o.Layer3.Lacp.SystemPriority != nil { - nestedLayer3.Lacp.SystemPriority = o.Layer3.Lacp.SystemPriority + if o.Layer3.SdwanLinkSettings.Enable != nil { + nestedLayer3.SdwanLinkSettings.Enable = util.AsBool(o.Layer3.SdwanLinkSettings.Enable, nil) } - if o.Layer3.Lacp.TransmissionRate != nil { - nestedLayer3.Lacp.TransmissionRate = o.Layer3.Lacp.TransmissionRate + if o.Layer3.SdwanLinkSettings.SdwanInterfaceProfile != nil { + nestedLayer3.SdwanLinkSettings.SdwanInterfaceProfile = o.Layer3.SdwanLinkSettings.SdwanInterfaceProfile } - if o.Layer3.Lacp.Enable != nil { - nestedLayer3.Lacp.Enable = util.AsBool(o.Layer3.Lacp.Enable, nil) + if o.Layer3.SdwanLinkSettings.UpstreamNat != nil { + nestedLayer3.SdwanLinkSettings.UpstreamNat = &Layer3SdwanLinkSettingsUpstreamNat{} + if o.Layer3.SdwanLinkSettings.UpstreamNat.Misc != nil { + entry.Misc["Layer3SdwanLinkSettingsUpstreamNat"] = o.Layer3.SdwanLinkSettings.UpstreamNat.Misc + } + if o.Layer3.SdwanLinkSettings.UpstreamNat.Enable != nil { + nestedLayer3.SdwanLinkSettings.UpstreamNat.Enable = util.AsBool(o.Layer3.SdwanLinkSettings.UpstreamNat.Enable, nil) + } + if o.Layer3.SdwanLinkSettings.UpstreamNat.Ddns != nil { + nestedLayer3.SdwanLinkSettings.UpstreamNat.Ddns = &Layer3SdwanLinkSettingsUpstreamNatDdns{} + if o.Layer3.SdwanLinkSettings.UpstreamNat.Ddns.Misc != nil { + entry.Misc["Layer3SdwanLinkSettingsUpstreamNatDdns"] = o.Layer3.SdwanLinkSettings.UpstreamNat.Ddns.Misc + } + } + if o.Layer3.SdwanLinkSettings.UpstreamNat.StaticIp != nil { + nestedLayer3.SdwanLinkSettings.UpstreamNat.StaticIp = &Layer3SdwanLinkSettingsUpstreamNatStaticIp{} + if o.Layer3.SdwanLinkSettings.UpstreamNat.StaticIp.Misc != nil { + entry.Misc["Layer3SdwanLinkSettingsUpstreamNatStaticIp"] = o.Layer3.SdwanLinkSettings.UpstreamNat.StaticIp.Misc + } + if o.Layer3.SdwanLinkSettings.UpstreamNat.StaticIp.Fqdn != nil { + nestedLayer3.SdwanLinkSettings.UpstreamNat.StaticIp.Fqdn = o.Layer3.SdwanLinkSettings.UpstreamNat.StaticIp.Fqdn + } + if o.Layer3.SdwanLinkSettings.UpstreamNat.StaticIp.IpAddress != nil { + nestedLayer3.SdwanLinkSettings.UpstreamNat.StaticIp.IpAddress = o.Layer3.SdwanLinkSettings.UpstreamNat.StaticIp.IpAddress + } + } } } } @@ -3387,223 +3387,12 @@ func matchHa(a *Ha, b *Ha) bool { } else if a == nil && b == nil { return true } - if !matchHaLacp(a.Lacp, b.Lacp) { - return false - } - return true -} -func matchLayer2LacpHighAvailability(a *Layer2LacpHighAvailability, b *Layer2LacpHighAvailability) bool { - if a == nil && b != nil || a != nil && b == nil { - return false - } else if a == nil && b == nil { - return true - } - if !util.BoolsMatch(a.PassivePreNegotiation, b.PassivePreNegotiation) { - return false - } - return true -} -func matchLayer2Lacp(a *Layer2Lacp, b *Layer2Lacp) bool { - if a == nil && b != nil || a != nil && b == nil { - return false - } else if a == nil && b == nil { - return true - } - if !util.BoolsMatch(a.Enable, b.Enable) { - return false - } - if !util.BoolsMatch(a.FastFailover, b.FastFailover) { - return false - } - if !matchLayer2LacpHighAvailability(a.HighAvailability, b.HighAvailability) { - return false - } - if !util.Ints64Match(a.MaxPorts, b.MaxPorts) { - return false - } - if !util.StringsMatch(a.Mode, b.Mode) { - return false - } - if !util.Ints64Match(a.SystemPriority, b.SystemPriority) { - return false - } - if !util.StringsMatch(a.TransmissionRate, b.TransmissionRate) { - return false - } - return true -} -func matchLayer2LldpHighAvailability(a *Layer2LldpHighAvailability, b *Layer2LldpHighAvailability) bool { - if a == nil && b != nil || a != nil && b == nil { - return false - } else if a == nil && b == nil { - return true - } - if !util.BoolsMatch(a.PassivePreNegotiation, b.PassivePreNegotiation) { - return false - } - return true -} -func matchLayer2Lldp(a *Layer2Lldp, b *Layer2Lldp) bool { - if a == nil && b != nil || a != nil && b == nil { - return false - } else if a == nil && b == nil { - return true - } - if !util.BoolsMatch(a.Enable, b.Enable) { - return false - } - if !matchLayer2LldpHighAvailability(a.HighAvailability, b.HighAvailability) { - return false - } - if !util.StringsMatch(a.Profile, b.Profile) { - return false - } - return true -} -func matchLayer2(a *Layer2, b *Layer2) bool { - if a == nil && b != nil || a != nil && b == nil { - return false - } else if a == nil && b == nil { - return true - } - if !util.StringsMatch(a.NetflowProfile, b.NetflowProfile) { - return false - } - if !matchLayer2Lacp(a.Lacp, b.Lacp) { - return false - } - if !matchLayer2Lldp(a.Lldp, b.Lldp) { - return false - } - return true -} -func matchLayer3Arp(a []Layer3Arp, b []Layer3Arp) bool { - if a == nil && b != nil || a != nil && b == nil { - return false - } else if a == nil && b == nil { - return true - } - for _, a := range a { - for _, b := range b { - if !util.StringsMatch(a.HwAddress, b.HwAddress) { - return false - } - if !util.StringsEqual(a.Name, b.Name) { - return false - } - } - } - return true -} -func matchLayer3DhcpClientSendHostname(a *Layer3DhcpClientSendHostname, b *Layer3DhcpClientSendHostname) bool { - if a == nil && b != nil || a != nil && b == nil { - return false - } else if a == nil && b == nil { - return true - } - if !util.BoolsMatch(a.Enable, b.Enable) { - return false - } - if !util.StringsMatch(a.Hostname, b.Hostname) { - return false - } - return true -} -func matchLayer3DhcpClient(a *Layer3DhcpClient, b *Layer3DhcpClient) bool { - if a == nil && b != nil || a != nil && b == nil { - return false - } else if a == nil && b == nil { - return true - } - if !util.BoolsMatch(a.CreateDefaultRoute, b.CreateDefaultRoute) { - return false - } - if !util.Ints64Match(a.DefaultRouteMetric, b.DefaultRouteMetric) { - return false - } - if !util.BoolsMatch(a.Enable, b.Enable) { - return false - } - if !matchLayer3DhcpClientSendHostname(a.SendHostname, b.SendHostname) { - return false - } - return true -} -func matchLayer3SdwanLinkSettingsUpstreamNatDdns(a *Layer3SdwanLinkSettingsUpstreamNatDdns, b *Layer3SdwanLinkSettingsUpstreamNatDdns) bool { - if a == nil && b != nil || a != nil && b == nil { - return false - } else if a == nil && b == nil { - return true - } - return true -} -func matchLayer3SdwanLinkSettingsUpstreamNatStaticIp(a *Layer3SdwanLinkSettingsUpstreamNatStaticIp, b *Layer3SdwanLinkSettingsUpstreamNatStaticIp) bool { - if a == nil && b != nil || a != nil && b == nil { - return false - } else if a == nil && b == nil { - return true - } - if !util.StringsMatch(a.Fqdn, b.Fqdn) { - return false - } - if !util.StringsMatch(a.IpAddress, b.IpAddress) { - return false - } - return true -} -func matchLayer3SdwanLinkSettingsUpstreamNat(a *Layer3SdwanLinkSettingsUpstreamNat, b *Layer3SdwanLinkSettingsUpstreamNat) bool { - if a == nil && b != nil || a != nil && b == nil { - return false - } else if a == nil && b == nil { - return true - } - if !util.BoolsMatch(a.Enable, b.Enable) { - return false - } - if !matchLayer3SdwanLinkSettingsUpstreamNatDdns(a.Ddns, b.Ddns) { - return false - } - if !matchLayer3SdwanLinkSettingsUpstreamNatStaticIp(a.StaticIp, b.StaticIp) { - return false - } - return true -} -func matchLayer3SdwanLinkSettings(a *Layer3SdwanLinkSettings, b *Layer3SdwanLinkSettings) bool { - if a == nil && b != nil || a != nil && b == nil { - return false - } else if a == nil && b == nil { - return true - } - if !util.BoolsMatch(a.Enable, b.Enable) { - return false - } - if !util.StringsMatch(a.SdwanInterfaceProfile, b.SdwanInterfaceProfile) { - return false - } - if !matchLayer3SdwanLinkSettingsUpstreamNat(a.UpstreamNat, b.UpstreamNat) { - return false - } - return true -} -func matchLayer3Ip(a []Layer3Ip, b []Layer3Ip) bool { - if a == nil && b != nil || a != nil && b == nil { - return false - } else if a == nil && b == nil { - return true - } - for _, a := range a { - for _, b := range b { - if !util.StringsMatch(a.SdwanGateway, b.SdwanGateway) { - return false - } - if !util.StringsEqual(a.Name, b.Name) { - return false - } - } + if !matchHaLacp(a.Lacp, b.Lacp) { + return false } return true } -func matchLayer3LacpHighAvailability(a *Layer3LacpHighAvailability, b *Layer3LacpHighAvailability) bool { +func matchLayer2LacpHighAvailability(a *Layer2LacpHighAvailability, b *Layer2LacpHighAvailability) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -3614,19 +3403,22 @@ func matchLayer3LacpHighAvailability(a *Layer3LacpHighAvailability, b *Layer3Lac } return true } -func matchLayer3Lacp(a *Layer3Lacp, b *Layer3Lacp) bool { +func matchLayer2Lacp(a *Layer2Lacp, b *Layer2Lacp) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } + if !util.StringsMatch(a.TransmissionRate, b.TransmissionRate) { + return false + } if !util.BoolsMatch(a.Enable, b.Enable) { return false } if !util.BoolsMatch(a.FastFailover, b.FastFailover) { return false } - if !matchLayer3LacpHighAvailability(a.HighAvailability, b.HighAvailability) { + if !matchLayer2LacpHighAvailability(a.HighAvailability, b.HighAvailability) { return false } if !util.Ints64Match(a.MaxPorts, b.MaxPorts) { @@ -3638,12 +3430,20 @@ func matchLayer3Lacp(a *Layer3Lacp, b *Layer3Lacp) bool { if !util.Ints64Match(a.SystemPriority, b.SystemPriority) { return false } - if !util.StringsMatch(a.TransmissionRate, b.TransmissionRate) { + return true +} +func matchLayer2LldpHighAvailability(a *Layer2LldpHighAvailability, b *Layer2LldpHighAvailability) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + if !util.BoolsMatch(a.PassivePreNegotiation, b.PassivePreNegotiation) { return false } return true } -func matchLayer3AdjustTcpMss(a *Layer3AdjustTcpMss, b *Layer3AdjustTcpMss) bool { +func matchLayer2Lldp(a *Layer2Lldp, b *Layer2Lldp) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -3652,27 +3452,27 @@ func matchLayer3AdjustTcpMss(a *Layer3AdjustTcpMss, b *Layer3AdjustTcpMss) bool if !util.BoolsMatch(a.Enable, b.Enable) { return false } - if !util.Ints64Match(a.Ipv4MssAdjustment, b.Ipv4MssAdjustment) { + if !matchLayer2LldpHighAvailability(a.HighAvailability, b.HighAvailability) { return false } - if !util.Ints64Match(a.Ipv6MssAdjustment, b.Ipv6MssAdjustment) { + if !util.StringsMatch(a.Profile, b.Profile) { return false } return true } -func matchLayer3Bonjour(a *Layer3Bonjour, b *Layer3Bonjour) bool { +func matchLayer2(a *Layer2, b *Layer2) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.BoolsMatch(a.TtlCheck, b.TtlCheck) { + if !matchLayer2Lacp(a.Lacp, b.Lacp) { return false } - if !util.BoolsMatch(a.Enable, b.Enable) { + if !matchLayer2Lldp(a.Lldp, b.Lldp) { return false } - if !util.Ints64Match(a.GroupId, b.GroupId) { + if !util.StringsMatch(a.NetflowProfile, b.NetflowProfile) { return false } return true @@ -3701,6 +3501,15 @@ func matchLayer3DdnsConfig(a *Layer3DdnsConfig, b *Layer3DdnsConfig) bool { } else if a == nil && b == nil { return true } + if !matchLayer3DdnsConfigDdnsVendorConfig(a.DdnsVendorConfig, b.DdnsVendorConfig) { + return false + } + if !util.StringsMatch(a.DdnsCertProfile, b.DdnsCertProfile) { + return false + } + if !util.BoolsMatch(a.DdnsEnabled, b.DdnsEnabled) { + return false + } if !util.StringsMatch(a.DdnsHostname, b.DdnsHostname) { return false } @@ -3716,13 +3525,36 @@ func matchLayer3DdnsConfig(a *Layer3DdnsConfig, b *Layer3DdnsConfig) bool { if !util.StringsMatch(a.DdnsVendor, b.DdnsVendor) { return false } - if !matchLayer3DdnsConfigDdnsVendorConfig(a.DdnsVendorConfig, b.DdnsVendorConfig) { + return true +} +func matchLayer3NdpProxyAddress(a []Layer3NdpProxyAddress, b []Layer3NdpProxyAddress) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } - if !util.StringsMatch(a.DdnsCertProfile, b.DdnsCertProfile) { + for _, a := range a { + for _, b := range b { + if !util.BoolsMatch(a.Negate, b.Negate) { + return false + } + if !util.StringsEqual(a.Name, b.Name) { + return false + } + } + } + return true +} +func matchLayer3NdpProxy(a *Layer3NdpProxy, b *Layer3NdpProxy) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } - if !util.BoolsMatch(a.DdnsEnabled, b.DdnsEnabled) { + if !matchLayer3NdpProxyAddress(a.Address, b.Address) { + return false + } + if !util.BoolsMatch(a.Enabled, b.Enabled) { return false } return true @@ -3745,7 +3577,7 @@ func matchLayer3Ipv6NeighborDiscoveryNeighbor(a []Layer3Ipv6NeighborDiscoveryNei } return true } -func matchLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportServer(a []Layer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportServer, b []Layer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportServer) bool { +func matchLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix(a []Layer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix, b []Layer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -3763,7 +3595,7 @@ func matchLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportServer(a []Lay } return true } -func matchLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix(a []Layer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix, b []Layer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix) bool { +func matchLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportServer(a []Layer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportServer, b []Layer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportServer) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -3804,7 +3636,7 @@ func matchLayer3Ipv6NeighborDiscoveryRouterAdvertisement(a *Layer3Ipv6NeighborDi } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.ReachableTime, b.ReachableTime) { + if !util.BoolsMatch(a.OtherFlag, b.OtherFlag) { return false } if !matchLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupport(a.DnsSupport, b.DnsSupport) { @@ -3813,34 +3645,34 @@ func matchLayer3Ipv6NeighborDiscoveryRouterAdvertisement(a *Layer3Ipv6NeighborDi if !util.BoolsMatch(a.EnableConsistencyCheck, b.EnableConsistencyCheck) { return false } - if !util.StringsMatch(a.HopLimit, b.HopLimit) { + if !util.StringsMatch(a.LinkMtu, b.LinkMtu) { return false } - if !util.Ints64Match(a.Lifetime, b.Lifetime) { + if !util.BoolsMatch(a.ManagedFlag, b.ManagedFlag) { return false } if !util.Ints64Match(a.MaxInterval, b.MaxInterval) { return false } - if !util.Ints64Match(a.MinInterval, b.MinInterval) { + if !util.StringsMatch(a.RetransmissionTimer, b.RetransmissionTimer) { return false } - if !util.BoolsMatch(a.OtherFlag, b.OtherFlag) { + if !util.StringsMatch(a.RouterPreference, b.RouterPreference) { return false } if !util.BoolsMatch(a.Enable, b.Enable) { return false } - if !util.StringsMatch(a.LinkMtu, b.LinkMtu) { + if !util.StringsMatch(a.HopLimit, b.HopLimit) { return false } - if !util.BoolsMatch(a.ManagedFlag, b.ManagedFlag) { + if !util.Ints64Match(a.Lifetime, b.Lifetime) { return false } - if !util.StringsMatch(a.RetransmissionTimer, b.RetransmissionTimer) { + if !util.Ints64Match(a.MinInterval, b.MinInterval) { return false } - if !util.StringsMatch(a.RouterPreference, b.RouterPreference) { + if !util.StringsMatch(a.ReachableTime, b.ReachableTime) { return false } return true @@ -3874,6 +3706,24 @@ func matchLayer3Ipv6NeighborDiscovery(a *Layer3Ipv6NeighborDiscovery, b *Layer3I } return true } +func matchLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor(a []Layer3Ipv6DhcpClientNeighborDiscoveryNeighbor, b []Layer3Ipv6DhcpClientNeighborDiscoveryNeighbor) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + for _, a := range a { + for _, b := range b { + if !util.StringsMatch(a.HwAddress, b.HwAddress) { + return false + } + if !util.StringsEqual(a.Name, b.Name) { + return false + } + } + } + return true +} func matchLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceDhcpv6(a *Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceDhcpv6, b *Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceDhcpv6) bool { if a == nil && b != nil || a != nil && b == nil { return false @@ -3900,161 +3750,278 @@ func matchLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer(a []L } return true } -func matchLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManual(a *Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManual, b *Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManual) bool { +func matchLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManual(a *Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManual, b *Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManual) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + if !matchLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer(a.Server, b.Server) { + return false + } + return true +} +func matchLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSource(a *Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSource, b *Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSource) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + if !matchLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceDhcpv6(a.Dhcpv6, b.Dhcpv6) { + return false + } + if !matchLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManual(a.Manual, b.Manual) { + return false + } + return true +} +func matchLayer3Ipv6DhcpClientNeighborDiscoveryDnsServer(a *Layer3Ipv6DhcpClientNeighborDiscoveryDnsServer, b *Layer3Ipv6DhcpClientNeighborDiscoveryDnsServer) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + if !util.BoolsMatch(a.Enable, b.Enable) { + return false + } + if !matchLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSource(a.Source, b.Source) { + return false + } + return true +} +func matchLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceDhcpv6(a *Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceDhcpv6, b *Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceDhcpv6) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + return true +} +func matchLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix(a []Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix, b []Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + for _, a := range a { + for _, b := range b { + if !util.Ints64Match(a.Lifetime, b.Lifetime) { + return false + } + if !util.StringsEqual(a.Name, b.Name) { + return false + } + } + } + return true +} +func matchLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManual(a *Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManual, b *Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManual) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + if !matchLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix(a.Suffix, b.Suffix) { + return false + } + return true +} +func matchLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSource(a *Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSource, b *Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSource) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + if !matchLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceDhcpv6(a.Dhcpv6, b.Dhcpv6) { + return false + } + if !matchLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManual(a.Manual, b.Manual) { + return false + } + return true +} +func matchLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffix(a *Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffix, b *Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffix) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + if !util.BoolsMatch(a.Enable, b.Enable) { + return false + } + if !matchLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSource(a.Source, b.Source) { + return false + } + return true +} +func matchLayer3Ipv6DhcpClientNeighborDiscovery(a *Layer3Ipv6DhcpClientNeighborDiscovery, b *Layer3Ipv6DhcpClientNeighborDiscovery) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + if !matchLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor(a.Neighbor, b.Neighbor) { + return false + } + if !util.Ints64Match(a.NsInterval, b.NsInterval) { + return false + } + if !util.Ints64Match(a.ReachableTime, b.ReachableTime) { + return false + } + if !util.Ints64Match(a.DadAttempts, b.DadAttempts) { + return false + } + if !matchLayer3Ipv6DhcpClientNeighborDiscoveryDnsServer(a.DnsServer, b.DnsServer) { + return false + } + if !matchLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffix(a.DnsSuffix, b.DnsSuffix) { + return false + } + if !util.BoolsMatch(a.EnableDad, b.EnableDad) { + return false + } + if !util.BoolsMatch(a.EnableNdpMonitor, b.EnableNdpMonitor) { + return false + } + return true +} +func matchLayer3Ipv6DhcpClientPrefixDelegationEnableNo(a *Layer3Ipv6DhcpClientPrefixDelegationEnableNo, b *Layer3Ipv6DhcpClientPrefixDelegationEnableNo) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer(a.Server, b.Server) { - return false - } return true } -func matchLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSource(a *Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSource, b *Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSource) bool { +func matchLayer3Ipv6DhcpClientPrefixDelegationEnableYes(a *Layer3Ipv6DhcpClientPrefixDelegationEnableYes, b *Layer3Ipv6DhcpClientPrefixDelegationEnableYes) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceDhcpv6(a.Dhcpv6, b.Dhcpv6) { + if !util.StringsMatch(a.PfxPoolName, b.PfxPoolName) { return false } - if !matchLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManual(a.Manual, b.Manual) { + if !util.Ints64Match(a.PrefixLen, b.PrefixLen) { + return false + } + if !util.BoolsMatch(a.PrefixLenHint, b.PrefixLenHint) { return false } return true } -func matchLayer3Ipv6DhcpClientNeighborDiscoveryDnsServer(a *Layer3Ipv6DhcpClientNeighborDiscoveryDnsServer, b *Layer3Ipv6DhcpClientNeighborDiscoveryDnsServer) bool { +func matchLayer3Ipv6DhcpClientPrefixDelegationEnable(a *Layer3Ipv6DhcpClientPrefixDelegationEnable, b *Layer3Ipv6DhcpClientPrefixDelegationEnable) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.BoolsMatch(a.Enable, b.Enable) { + if !matchLayer3Ipv6DhcpClientPrefixDelegationEnableNo(a.No, b.No) { return false } - if !matchLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSource(a.Source, b.Source) { + if !matchLayer3Ipv6DhcpClientPrefixDelegationEnableYes(a.Yes, b.Yes) { return false } return true } -func matchLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceDhcpv6(a *Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceDhcpv6, b *Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceDhcpv6) bool { +func matchLayer3Ipv6DhcpClientPrefixDelegation(a *Layer3Ipv6DhcpClientPrefixDelegation, b *Layer3Ipv6DhcpClientPrefixDelegation) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } + if !matchLayer3Ipv6DhcpClientPrefixDelegationEnable(a.Enable, b.Enable) { + return false + } return true } -func matchLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix(a []Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix, b []Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix) bool { +func matchLayer3Ipv6DhcpClientV6OptionsEnableYes(a *Layer3Ipv6DhcpClientV6OptionsEnableYes, b *Layer3Ipv6DhcpClientV6OptionsEnableYes) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - for _, a := range a { - for _, b := range b { - if !util.Ints64Match(a.Lifetime, b.Lifetime) { - return false - } - if !util.StringsEqual(a.Name, b.Name) { - return false - } - } + if !util.BoolsMatch(a.NonTempAddr, b.NonTempAddr) { + return false + } + if !util.BoolsMatch(a.TempAddr, b.TempAddr) { + return false } return true } -func matchLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManual(a *Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManual, b *Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManual) bool { +func matchLayer3Ipv6DhcpClientV6OptionsEnableNo(a *Layer3Ipv6DhcpClientV6OptionsEnableNo, b *Layer3Ipv6DhcpClientV6OptionsEnableNo) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix(a.Suffix, b.Suffix) { - return false - } return true } -func matchLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSource(a *Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSource, b *Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSource) bool { +func matchLayer3Ipv6DhcpClientV6OptionsEnable(a *Layer3Ipv6DhcpClientV6OptionsEnable, b *Layer3Ipv6DhcpClientV6OptionsEnable) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceDhcpv6(a.Dhcpv6, b.Dhcpv6) { + if !matchLayer3Ipv6DhcpClientV6OptionsEnableYes(a.Yes, b.Yes) { return false } - if !matchLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManual(a.Manual, b.Manual) { + if !matchLayer3Ipv6DhcpClientV6OptionsEnableNo(a.No, b.No) { return false } return true } -func matchLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffix(a *Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffix, b *Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffix) bool { +func matchLayer3Ipv6DhcpClientV6Options(a *Layer3Ipv6DhcpClientV6Options, b *Layer3Ipv6DhcpClientV6Options) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.BoolsMatch(a.Enable, b.Enable) { + if !util.StringsMatch(a.DuidType, b.DuidType) { return false } - if !matchLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSource(a.Source, b.Source) { + if !matchLayer3Ipv6DhcpClientV6OptionsEnable(a.Enable, b.Enable) { return false } - return true -} -func matchLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor(a []Layer3Ipv6DhcpClientNeighborDiscoveryNeighbor, b []Layer3Ipv6DhcpClientNeighborDiscoveryNeighbor) bool { - if a == nil && b != nil || a != nil && b == nil { + if !util.BoolsMatch(a.RapidCommit, b.RapidCommit) { return false - } else if a == nil && b == nil { - return true } - for _, a := range a { - for _, b := range b { - if !util.StringsMatch(a.HwAddress, b.HwAddress) { - return false - } - if !util.StringsEqual(a.Name, b.Name) { - return false - } - } + if !util.BoolsMatch(a.SupportSrvrReconfig, b.SupportSrvrReconfig) { + return false } return true } -func matchLayer3Ipv6DhcpClientNeighborDiscovery(a *Layer3Ipv6DhcpClientNeighborDiscovery, b *Layer3Ipv6DhcpClientNeighborDiscovery) bool { +func matchLayer3Ipv6DhcpClient(a *Layer3Ipv6DhcpClient, b *Layer3Ipv6DhcpClient) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.Ints64Match(a.DadAttempts, b.DadAttempts) { - return false - } - if !matchLayer3Ipv6DhcpClientNeighborDiscoveryDnsServer(a.DnsServer, b.DnsServer) { + if !util.StringsMatch(a.Preference, b.Preference) { return false } - if !matchLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffix(a.DnsSuffix, b.DnsSuffix) { + if !matchLayer3Ipv6DhcpClientPrefixDelegation(a.PrefixDelegation, b.PrefixDelegation) { return false } - if !util.BoolsMatch(a.EnableDad, b.EnableDad) { + if !matchLayer3Ipv6DhcpClientV6Options(a.V6Options, b.V6Options) { return false } - if !util.BoolsMatch(a.EnableNdpMonitor, b.EnableNdpMonitor) { + if !util.BoolsMatch(a.AcceptRaRoute, b.AcceptRaRoute) { return false } - if !matchLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor(a.Neighbor, b.Neighbor) { + if !util.Ints64Match(a.DefaultRouteMetric, b.DefaultRouteMetric) { return false } - if !util.Ints64Match(a.NsInterval, b.NsInterval) { + if !util.BoolsMatch(a.Enable, b.Enable) { return false } - if !util.Ints64Match(a.ReachableTime, b.ReachableTime) { + if !matchLayer3Ipv6DhcpClientNeighborDiscovery(a.NeighborDiscovery, b.NeighborDiscovery) { return false } return true } -func matchLayer3Ipv6DhcpClientPrefixDelegationEnableNo(a *Layer3Ipv6DhcpClientPrefixDelegationEnableNo, b *Layer3Ipv6DhcpClientPrefixDelegationEnableNo) bool { +func matchLayer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamic(a *Layer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamic, b *Layer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamic) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -4062,133 +4029,146 @@ func matchLayer3Ipv6DhcpClientPrefixDelegationEnableNo(a *Layer3Ipv6DhcpClientPr } return true } -func matchLayer3Ipv6DhcpClientPrefixDelegationEnableYes(a *Layer3Ipv6DhcpClientPrefixDelegationEnableYes, b *Layer3Ipv6DhcpClientPrefixDelegationEnableYes) bool { +func matchLayer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamicId(a *Layer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamicId, b *Layer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamicId) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.PfxPoolName, b.PfxPoolName) { - return false - } - if !util.Ints64Match(a.PrefixLen, b.PrefixLen) { - return false - } - if !util.BoolsMatch(a.PrefixLenHint, b.PrefixLenHint) { + if !util.Ints64Match(a.Identifier, b.Identifier) { return false } return true } -func matchLayer3Ipv6DhcpClientPrefixDelegationEnable(a *Layer3Ipv6DhcpClientPrefixDelegationEnable, b *Layer3Ipv6DhcpClientPrefixDelegationEnable) bool { +func matchLayer3Ipv6InheritedAssignAddrTypeGuaPoolType(a *Layer3Ipv6InheritedAssignAddrTypeGuaPoolType, b *Layer3Ipv6InheritedAssignAddrTypeGuaPoolType) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchLayer3Ipv6DhcpClientPrefixDelegationEnableYes(a.Yes, b.Yes) { + if !matchLayer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamicId(a.DynamicId, b.DynamicId) { return false } - if !matchLayer3Ipv6DhcpClientPrefixDelegationEnableNo(a.No, b.No) { + if !matchLayer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamic(a.Dynamic, b.Dynamic) { return false } return true } -func matchLayer3Ipv6DhcpClientPrefixDelegation(a *Layer3Ipv6DhcpClientPrefixDelegation, b *Layer3Ipv6DhcpClientPrefixDelegation) bool { +func matchLayer3Ipv6InheritedAssignAddrTypeGuaAdvertise(a *Layer3Ipv6InheritedAssignAddrTypeGuaAdvertise, b *Layer3Ipv6InheritedAssignAddrTypeGuaAdvertise) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchLayer3Ipv6DhcpClientPrefixDelegationEnable(a.Enable, b.Enable) { + if !util.BoolsMatch(a.AutoConfigFlag, b.AutoConfigFlag) { return false } - return true -} -func matchLayer3Ipv6DhcpClientV6OptionsEnableNo(a *Layer3Ipv6DhcpClientV6OptionsEnableNo, b *Layer3Ipv6DhcpClientV6OptionsEnableNo) bool { - if a == nil && b != nil || a != nil && b == nil { + if !util.BoolsMatch(a.Enable, b.Enable) { + return false + } + if !util.BoolsMatch(a.OnlinkFlag, b.OnlinkFlag) { return false - } else if a == nil && b == nil { - return true } return true } -func matchLayer3Ipv6DhcpClientV6OptionsEnableYes(a *Layer3Ipv6DhcpClientV6OptionsEnableYes, b *Layer3Ipv6DhcpClientV6OptionsEnableYes) bool { +func matchLayer3Ipv6InheritedAssignAddrTypeGua(a *Layer3Ipv6InheritedAssignAddrTypeGua, b *Layer3Ipv6InheritedAssignAddrTypeGua) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.BoolsMatch(a.NonTempAddr, b.NonTempAddr) { - return false - } - if !util.BoolsMatch(a.TempAddr, b.TempAddr) { + if !util.StringsMatch(a.PrefixPool, b.PrefixPool) { return false } - return true -} -func matchLayer3Ipv6DhcpClientV6OptionsEnable(a *Layer3Ipv6DhcpClientV6OptionsEnable, b *Layer3Ipv6DhcpClientV6OptionsEnable) bool { - if a == nil && b != nil || a != nil && b == nil { + if !matchLayer3Ipv6InheritedAssignAddrTypeGuaPoolType(a.PoolType, b.PoolType) { return false - } else if a == nil && b == nil { - return true } - if !matchLayer3Ipv6DhcpClientV6OptionsEnableNo(a.No, b.No) { + if !matchLayer3Ipv6InheritedAssignAddrTypeGuaAdvertise(a.Advertise, b.Advertise) { return false } - if !matchLayer3Ipv6DhcpClientV6OptionsEnableYes(a.Yes, b.Yes) { + if !util.BoolsMatch(a.EnableOnInterface, b.EnableOnInterface) { return false } return true } -func matchLayer3Ipv6DhcpClientV6Options(a *Layer3Ipv6DhcpClientV6Options, b *Layer3Ipv6DhcpClientV6Options) bool { +func matchLayer3Ipv6InheritedAssignAddrTypeUlaAdvertise(a *Layer3Ipv6InheritedAssignAddrTypeUlaAdvertise, b *Layer3Ipv6InheritedAssignAddrTypeUlaAdvertise) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.BoolsMatch(a.SupportSrvrReconfig, b.SupportSrvrReconfig) { + if !util.BoolsMatch(a.Enable, b.Enable) { return false } - if !util.StringsMatch(a.DuidType, b.DuidType) { + if !util.StringsMatch(a.ValidLifetime, b.ValidLifetime) { return false } - if !matchLayer3Ipv6DhcpClientV6OptionsEnable(a.Enable, b.Enable) { + if !util.StringsMatch(a.PreferredLifetime, b.PreferredLifetime) { return false } - if !util.BoolsMatch(a.RapidCommit, b.RapidCommit) { + if !util.BoolsMatch(a.OnlinkFlag, b.OnlinkFlag) { + return false + } + if !util.BoolsMatch(a.AutoConfigFlag, b.AutoConfigFlag) { return false } return true } -func matchLayer3Ipv6DhcpClient(a *Layer3Ipv6DhcpClient, b *Layer3Ipv6DhcpClient) bool { +func matchLayer3Ipv6InheritedAssignAddrTypeUla(a *Layer3Ipv6InheritedAssignAddrTypeUla, b *Layer3Ipv6InheritedAssignAddrTypeUla) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Preference, b.Preference) { + if !matchLayer3Ipv6InheritedAssignAddrTypeUlaAdvertise(a.Advertise, b.Advertise) { return false } - if !matchLayer3Ipv6DhcpClientPrefixDelegation(a.PrefixDelegation, b.PrefixDelegation) { + if !util.BoolsMatch(a.EnableOnInterface, b.EnableOnInterface) { return false } - if !matchLayer3Ipv6DhcpClientV6Options(a.V6Options, b.V6Options) { + if !util.StringsMatch(a.Address, b.Address) { return false } - if !util.BoolsMatch(a.AcceptRaRoute, b.AcceptRaRoute) { + if !util.BoolsMatch(a.Prefix, b.Prefix) { return false } - if !util.Ints64Match(a.DefaultRouteMetric, b.DefaultRouteMetric) { + if !util.BoolsMatch(a.Anycast, b.Anycast) { return false } - if !util.BoolsMatch(a.Enable, b.Enable) { + return true +} +func matchLayer3Ipv6InheritedAssignAddrType(a *Layer3Ipv6InheritedAssignAddrType, b *Layer3Ipv6InheritedAssignAddrType) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } - if !matchLayer3Ipv6DhcpClientNeighborDiscovery(a.NeighborDiscovery, b.NeighborDiscovery) { + if !matchLayer3Ipv6InheritedAssignAddrTypeGua(a.Gua, b.Gua) { + return false + } + if !matchLayer3Ipv6InheritedAssignAddrTypeUla(a.Ula, b.Ula) { return false } return true } +func matchLayer3Ipv6InheritedAssignAddr(a []Layer3Ipv6InheritedAssignAddr, b []Layer3Ipv6InheritedAssignAddr) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + for _, a := range a { + for _, b := range b { + if !util.StringsEqual(a.Name, b.Name) { + return false + } + if !matchLayer3Ipv6InheritedAssignAddrType(a.Type, b.Type) { + return false + } + } + } + return true +} func matchLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceDhcpv6(a *Layer3Ipv6InheritedNeighborDiscoveryDnsServerSourceDhcpv6, b *Layer3Ipv6InheritedNeighborDiscoveryDnsServerSourceDhcpv6) bool { if a == nil && b != nil || a != nil && b == nil { return false @@ -4235,10 +4215,10 @@ func matchLayer3Ipv6InheritedNeighborDiscoveryDnsServerSource(a *Layer3Ipv6Inher } else if a == nil && b == nil { return true } - if !matchLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceDhcpv6(a.Dhcpv6, b.Dhcpv6) { + if !matchLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManual(a.Manual, b.Manual) { return false } - if !matchLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManual(a.Manual, b.Manual) { + if !matchLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceDhcpv6(a.Dhcpv6, b.Dhcpv6) { return false } return true @@ -4349,19 +4329,22 @@ func matchLayer3Ipv6InheritedNeighborDiscoveryRouterAdvertisement(a *Layer3Ipv6I } else if a == nil && b == nil { return true } + if !util.BoolsMatch(a.Enable, b.Enable) { + return false + } if !util.Ints64Match(a.Lifetime, b.Lifetime) { return false } - if !util.BoolsMatch(a.ManagedFlag, b.ManagedFlag) { + if !util.StringsMatch(a.LinkMtu, b.LinkMtu) { return false } - if !util.BoolsMatch(a.OtherFlag, b.OtherFlag) { + if !util.BoolsMatch(a.ManagedFlag, b.ManagedFlag) { return false } - if !util.StringsMatch(a.RetransmissionTimer, b.RetransmissionTimer) { + if !util.BoolsMatch(a.OtherFlag, b.OtherFlag) { return false } - if !util.BoolsMatch(a.Enable, b.Enable) { + if !util.StringsMatch(a.RouterPreference, b.RouterPreference) { return false } if !util.BoolsMatch(a.EnableConsistencyCheck, b.EnableConsistencyCheck) { @@ -4370,19 +4353,16 @@ func matchLayer3Ipv6InheritedNeighborDiscoveryRouterAdvertisement(a *Layer3Ipv6I if !util.StringsMatch(a.HopLimit, b.HopLimit) { return false } - if !util.StringsMatch(a.ReachableTime, b.ReachableTime) { - return false - } - if !util.StringsMatch(a.RouterPreference, b.RouterPreference) { + if !util.Ints64Match(a.MaxInterval, b.MaxInterval) { return false } - if !util.StringsMatch(a.LinkMtu, b.LinkMtu) { + if !util.Ints64Match(a.MinInterval, b.MinInterval) { return false } - if !util.Ints64Match(a.MaxInterval, b.MaxInterval) { + if !util.StringsMatch(a.ReachableTime, b.ReachableTime) { return false } - if !util.Ints64Match(a.MinInterval, b.MinInterval) { + if !util.StringsMatch(a.RetransmissionTimer, b.RetransmissionTimer) { return false } return true @@ -4393,15 +4373,24 @@ func matchLayer3Ipv6InheritedNeighborDiscovery(a *Layer3Ipv6InheritedNeighborDis } else if a == nil && b == nil { return true } - if !util.BoolsMatch(a.EnableDad, b.EnableDad) { + if !matchLayer3Ipv6InheritedNeighborDiscoveryDnsServer(a.DnsServer, b.DnsServer) { return false } - if !util.BoolsMatch(a.EnableNdpMonitor, b.EnableNdpMonitor) { + if !matchLayer3Ipv6InheritedNeighborDiscoveryDnsSuffix(a.DnsSuffix, b.DnsSuffix) { return false } if !util.Ints64Match(a.ReachableTime, b.ReachableTime) { return false } + if !util.Ints64Match(a.DadAttempts, b.DadAttempts) { + return false + } + if !util.BoolsMatch(a.EnableDad, b.EnableDad) { + return false + } + if !util.BoolsMatch(a.EnableNdpMonitor, b.EnableNdpMonitor) { + return false + } if !matchLayer3Ipv6InheritedNeighborDiscoveryNeighbor(a.Neighbor, b.Neighbor) { return false } @@ -4411,18 +4400,26 @@ func matchLayer3Ipv6InheritedNeighborDiscovery(a *Layer3Ipv6InheritedNeighborDis if !matchLayer3Ipv6InheritedNeighborDiscoveryRouterAdvertisement(a.RouterAdvertisement, b.RouterAdvertisement) { return false } - if !util.Ints64Match(a.DadAttempts, b.DadAttempts) { + return true +} +func matchLayer3Ipv6Inherited(a *Layer3Ipv6Inherited, b *Layer3Ipv6Inherited) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + if !matchLayer3Ipv6InheritedAssignAddr(a.AssignAddr, b.AssignAddr) { return false } - if !matchLayer3Ipv6InheritedNeighborDiscoveryDnsServer(a.DnsServer, b.DnsServer) { + if !util.BoolsMatch(a.Enable, b.Enable) { return false } - if !matchLayer3Ipv6InheritedNeighborDiscoveryDnsSuffix(a.DnsSuffix, b.DnsSuffix) { + if !matchLayer3Ipv6InheritedNeighborDiscovery(a.NeighborDiscovery, b.NeighborDiscovery) { return false } return true } -func matchLayer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamic(a *Layer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamic, b *Layer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamic) bool { +func matchLayer3Ipv6AddressPrefix(a *Layer3Ipv6AddressPrefix, b *Layer3Ipv6AddressPrefix) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -4430,129 +4427,159 @@ func matchLayer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamic(a *Layer3Ipv6Inher } return true } -func matchLayer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamicId(a *Layer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamicId, b *Layer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamicId) bool { +func matchLayer3Ipv6AddressAnycast(a *Layer3Ipv6AddressAnycast, b *Layer3Ipv6AddressAnycast) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.Ints64Match(a.Identifier, b.Identifier) { - return false - } return true } -func matchLayer3Ipv6InheritedAssignAddrTypeGuaPoolType(a *Layer3Ipv6InheritedAssignAddrTypeGuaPoolType, b *Layer3Ipv6InheritedAssignAddrTypeGuaPoolType) bool { +func matchLayer3Ipv6AddressAdvertise(a *Layer3Ipv6AddressAdvertise, b *Layer3Ipv6AddressAdvertise) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchLayer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamic(a.Dynamic, b.Dynamic) { + if !util.BoolsMatch(a.OnlinkFlag, b.OnlinkFlag) { return false } - if !matchLayer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamicId(a.DynamicId, b.DynamicId) { + if !util.BoolsMatch(a.AutoConfigFlag, b.AutoConfigFlag) { return false } - return true -} -func matchLayer3Ipv6InheritedAssignAddrTypeGuaAdvertise(a *Layer3Ipv6InheritedAssignAddrTypeGuaAdvertise, b *Layer3Ipv6InheritedAssignAddrTypeGuaAdvertise) bool { - if a == nil && b != nil || a != nil && b == nil { + if !util.BoolsMatch(a.Enable, b.Enable) { return false - } else if a == nil && b == nil { - return true } - if !util.BoolsMatch(a.Enable, b.Enable) { + if !util.StringsMatch(a.ValidLifetime, b.ValidLifetime) { return false } - if !util.BoolsMatch(a.OnlinkFlag, b.OnlinkFlag) { + if !util.StringsMatch(a.PreferredLifetime, b.PreferredLifetime) { return false } - if !util.BoolsMatch(a.AutoConfigFlag, b.AutoConfigFlag) { + return true +} +func matchLayer3Ipv6Address(a []Layer3Ipv6Address, b []Layer3Ipv6Address) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true + } + for _, a := range a { + for _, b := range b { + if !matchLayer3Ipv6AddressPrefix(a.Prefix, b.Prefix) { + return false + } + if !matchLayer3Ipv6AddressAnycast(a.Anycast, b.Anycast) { + return false + } + if !matchLayer3Ipv6AddressAdvertise(a.Advertise, b.Advertise) { + return false + } + if !util.StringsEqual(a.Name, b.Name) { + return false + } + if !util.BoolsMatch(a.EnableOnInterface, b.EnableOnInterface) { + return false + } + } } return true } -func matchLayer3Ipv6InheritedAssignAddrTypeGua(a *Layer3Ipv6InheritedAssignAddrTypeGua, b *Layer3Ipv6InheritedAssignAddrTypeGua) bool { +func matchLayer3Ipv6(a *Layer3Ipv6, b *Layer3Ipv6) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.BoolsMatch(a.EnableOnInterface, b.EnableOnInterface) { + if !matchLayer3Ipv6Inherited(a.Inherited, b.Inherited) { return false } - if !util.StringsMatch(a.PrefixPool, b.PrefixPool) { + if !matchLayer3Ipv6Address(a.Address, b.Address) { return false } - if !matchLayer3Ipv6InheritedAssignAddrTypeGuaPoolType(a.PoolType, b.PoolType) { + if !util.BoolsMatch(a.Enabled, b.Enabled) { return false } - if !matchLayer3Ipv6InheritedAssignAddrTypeGuaAdvertise(a.Advertise, b.Advertise) { + if !util.StringsMatch(a.InterfaceId, b.InterfaceId) { + return false + } + if !matchLayer3Ipv6NeighborDiscovery(a.NeighborDiscovery, b.NeighborDiscovery) { + return false + } + if !matchLayer3Ipv6DhcpClient(a.DhcpClient, b.DhcpClient) { return false } return true } -func matchLayer3Ipv6InheritedAssignAddrTypeUlaAdvertise(a *Layer3Ipv6InheritedAssignAddrTypeUlaAdvertise, b *Layer3Ipv6InheritedAssignAddrTypeUlaAdvertise) bool { +func matchLayer3AdjustTcpMss(a *Layer3AdjustTcpMss, b *Layer3AdjustTcpMss) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.PreferredLifetime, b.PreferredLifetime) { + if !util.BoolsMatch(a.Enable, b.Enable) { return false } - if !util.BoolsMatch(a.OnlinkFlag, b.OnlinkFlag) { + if !util.Ints64Match(a.Ipv4MssAdjustment, b.Ipv4MssAdjustment) { return false } - if !util.BoolsMatch(a.AutoConfigFlag, b.AutoConfigFlag) { + if !util.Ints64Match(a.Ipv6MssAdjustment, b.Ipv6MssAdjustment) { + return false + } + return true +} +func matchLayer3DhcpClientSendHostname(a *Layer3DhcpClientSendHostname, b *Layer3DhcpClientSendHostname) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } if !util.BoolsMatch(a.Enable, b.Enable) { return false } - if !util.StringsMatch(a.ValidLifetime, b.ValidLifetime) { + if !util.StringsMatch(a.Hostname, b.Hostname) { return false } return true } -func matchLayer3Ipv6InheritedAssignAddrTypeUla(a *Layer3Ipv6InheritedAssignAddrTypeUla, b *Layer3Ipv6InheritedAssignAddrTypeUla) bool { +func matchLayer3DhcpClient(a *Layer3DhcpClient, b *Layer3DhcpClient) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Address, b.Address) { - return false - } - if !util.BoolsMatch(a.Prefix, b.Prefix) { + if !util.Ints64Match(a.DefaultRouteMetric, b.DefaultRouteMetric) { return false } - if !util.BoolsMatch(a.Anycast, b.Anycast) { + if !util.BoolsMatch(a.Enable, b.Enable) { return false } - if !matchLayer3Ipv6InheritedAssignAddrTypeUlaAdvertise(a.Advertise, b.Advertise) { + if !matchLayer3DhcpClientSendHostname(a.SendHostname, b.SendHostname) { return false } - if !util.BoolsMatch(a.EnableOnInterface, b.EnableOnInterface) { + if !util.BoolsMatch(a.CreateDefaultRoute, b.CreateDefaultRoute) { return false } return true } -func matchLayer3Ipv6InheritedAssignAddrType(a *Layer3Ipv6InheritedAssignAddrType, b *Layer3Ipv6InheritedAssignAddrType) bool { +func matchLayer3Bonjour(a *Layer3Bonjour, b *Layer3Bonjour) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchLayer3Ipv6InheritedAssignAddrTypeGua(a.Gua, b.Gua) { + if !util.BoolsMatch(a.Enable, b.Enable) { return false } - if !matchLayer3Ipv6InheritedAssignAddrTypeUla(a.Ula, b.Ula) { + if !util.Ints64Match(a.GroupId, b.GroupId) { + return false + } + if !util.BoolsMatch(a.TtlCheck, b.TtlCheck) { return false } return true } -func matchLayer3Ipv6InheritedAssignAddr(a []Layer3Ipv6InheritedAssignAddr, b []Layer3Ipv6InheritedAssignAddr) bool { +func matchLayer3Ip(a []Layer3Ip, b []Layer3Ip) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -4560,73 +4587,57 @@ func matchLayer3Ipv6InheritedAssignAddr(a []Layer3Ipv6InheritedAssignAddr, b []L } for _, a := range a { for _, b := range b { - if !matchLayer3Ipv6InheritedAssignAddrType(a.Type, b.Type) { + if !util.StringsEqual(a.Name, b.Name) { return false } - if !util.StringsEqual(a.Name, b.Name) { + if !util.StringsMatch(a.SdwanGateway, b.SdwanGateway) { return false } } } return true } -func matchLayer3Ipv6Inherited(a *Layer3Ipv6Inherited, b *Layer3Ipv6Inherited) bool { +func matchLayer3LacpHighAvailability(a *Layer3LacpHighAvailability, b *Layer3LacpHighAvailability) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchLayer3Ipv6InheritedAssignAddr(a.AssignAddr, b.AssignAddr) { - return false - } - if !util.BoolsMatch(a.Enable, b.Enable) { - return false - } - if !matchLayer3Ipv6InheritedNeighborDiscovery(a.NeighborDiscovery, b.NeighborDiscovery) { + if !util.BoolsMatch(a.PassivePreNegotiation, b.PassivePreNegotiation) { return false } return true } -func matchLayer3Ipv6AddressPrefix(a *Layer3Ipv6AddressPrefix, b *Layer3Ipv6AddressPrefix) bool { +func matchLayer3Lacp(a *Layer3Lacp, b *Layer3Lacp) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - return true -} -func matchLayer3Ipv6AddressAnycast(a *Layer3Ipv6AddressAnycast, b *Layer3Ipv6AddressAnycast) bool { - if a == nil && b != nil || a != nil && b == nil { + if !util.BoolsMatch(a.Enable, b.Enable) { return false - } else if a == nil && b == nil { - return true } - return true -} -func matchLayer3Ipv6AddressAdvertise(a *Layer3Ipv6AddressAdvertise, b *Layer3Ipv6AddressAdvertise) bool { - if a == nil && b != nil || a != nil && b == nil { + if !util.BoolsMatch(a.FastFailover, b.FastFailover) { return false - } else if a == nil && b == nil { - return true } - if !util.BoolsMatch(a.Enable, b.Enable) { + if !matchLayer3LacpHighAvailability(a.HighAvailability, b.HighAvailability) { return false } - if !util.StringsMatch(a.ValidLifetime, b.ValidLifetime) { + if !util.Ints64Match(a.MaxPorts, b.MaxPorts) { return false } - if !util.StringsMatch(a.PreferredLifetime, b.PreferredLifetime) { + if !util.StringsMatch(a.Mode, b.Mode) { return false } - if !util.BoolsMatch(a.OnlinkFlag, b.OnlinkFlag) { + if !util.Ints64Match(a.SystemPriority, b.SystemPriority) { return false } - if !util.BoolsMatch(a.AutoConfigFlag, b.AutoConfigFlag) { + if !util.StringsMatch(a.TransmissionRate, b.TransmissionRate) { return false } return true } -func matchLayer3Ipv6Address(a []Layer3Ipv6Address, b []Layer3Ipv6Address) bool { +func matchLayer3Arp(a []Layer3Arp, b []Layer3Arp) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -4634,16 +4645,7 @@ func matchLayer3Ipv6Address(a []Layer3Ipv6Address, b []Layer3Ipv6Address) bool { } for _, a := range a { for _, b := range b { - if !util.BoolsMatch(a.EnableOnInterface, b.EnableOnInterface) { - return false - } - if !matchLayer3Ipv6AddressPrefix(a.Prefix, b.Prefix) { - return false - } - if !matchLayer3Ipv6AddressAnycast(a.Anycast, b.Anycast) { - return false - } - if !matchLayer3Ipv6AddressAdvertise(a.Advertise, b.Advertise) { + if !util.StringsMatch(a.HwAddress, b.HwAddress) { return false } if !util.StringsEqual(a.Name, b.Name) { @@ -4653,88 +4655,86 @@ func matchLayer3Ipv6Address(a []Layer3Ipv6Address, b []Layer3Ipv6Address) bool { } return true } -func matchLayer3Ipv6(a *Layer3Ipv6, b *Layer3Ipv6) bool { +func matchLayer3LldpHighAvailability(a *Layer3LldpHighAvailability, b *Layer3LldpHighAvailability) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchLayer3Ipv6NeighborDiscovery(a.NeighborDiscovery, b.NeighborDiscovery) { - return false - } - if !matchLayer3Ipv6DhcpClient(a.DhcpClient, b.DhcpClient) { + if !util.BoolsMatch(a.PassivePreNegotiation, b.PassivePreNegotiation) { return false } - if !matchLayer3Ipv6Inherited(a.Inherited, b.Inherited) { + return true +} +func matchLayer3Lldp(a *Layer3Lldp, b *Layer3Lldp) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } - if !matchLayer3Ipv6Address(a.Address, b.Address) { + if !util.BoolsMatch(a.Enable, b.Enable) { return false } - if !util.BoolsMatch(a.Enabled, b.Enabled) { + if !matchLayer3LldpHighAvailability(a.HighAvailability, b.HighAvailability) { return false } - if !util.StringsMatch(a.InterfaceId, b.InterfaceId) { + if !util.StringsMatch(a.Profile, b.Profile) { return false } return true } -func matchLayer3LldpHighAvailability(a *Layer3LldpHighAvailability, b *Layer3LldpHighAvailability) bool { +func matchLayer3SdwanLinkSettingsUpstreamNatDdns(a *Layer3SdwanLinkSettingsUpstreamNatDdns, b *Layer3SdwanLinkSettingsUpstreamNatDdns) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.BoolsMatch(a.PassivePreNegotiation, b.PassivePreNegotiation) { - return false - } return true } -func matchLayer3Lldp(a *Layer3Lldp, b *Layer3Lldp) bool { +func matchLayer3SdwanLinkSettingsUpstreamNatStaticIp(a *Layer3SdwanLinkSettingsUpstreamNatStaticIp, b *Layer3SdwanLinkSettingsUpstreamNatStaticIp) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Profile, b.Profile) { - return false - } - if !util.BoolsMatch(a.Enable, b.Enable) { + if !util.StringsMatch(a.Fqdn, b.Fqdn) { return false } - if !matchLayer3LldpHighAvailability(a.HighAvailability, b.HighAvailability) { + if !util.StringsMatch(a.IpAddress, b.IpAddress) { return false } return true } -func matchLayer3NdpProxyAddress(a []Layer3NdpProxyAddress, b []Layer3NdpProxyAddress) bool { +func matchLayer3SdwanLinkSettingsUpstreamNat(a *Layer3SdwanLinkSettingsUpstreamNat, b *Layer3SdwanLinkSettingsUpstreamNat) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - for _, a := range a { - for _, b := range b { - if !util.StringsEqual(a.Name, b.Name) { - return false - } - if !util.BoolsMatch(a.Negate, b.Negate) { - return false - } - } + if !util.BoolsMatch(a.Enable, b.Enable) { + return false + } + if !matchLayer3SdwanLinkSettingsUpstreamNatDdns(a.Ddns, b.Ddns) { + return false + } + if !matchLayer3SdwanLinkSettingsUpstreamNatStaticIp(a.StaticIp, b.StaticIp) { + return false } return true } -func matchLayer3NdpProxy(a *Layer3NdpProxy, b *Layer3NdpProxy) bool { +func matchLayer3SdwanLinkSettings(a *Layer3SdwanLinkSettings, b *Layer3SdwanLinkSettings) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchLayer3NdpProxyAddress(a.Address, b.Address) { + if !util.BoolsMatch(a.Enable, b.Enable) { return false } - if !util.BoolsMatch(a.Enabled, b.Enabled) { + if !util.StringsMatch(a.SdwanInterfaceProfile, b.SdwanInterfaceProfile) { + return false + } + if !matchLayer3SdwanLinkSettingsUpstreamNat(a.UpstreamNat, b.UpstreamNat) { return false } return true @@ -4745,55 +4745,55 @@ func matchLayer3(a *Layer3, b *Layer3) bool { } else if a == nil && b == nil { return true } - if !matchLayer3DhcpClient(a.DhcpClient, b.DhcpClient) { + if !matchLayer3DdnsConfig(a.DdnsConfig, b.DdnsConfig) { return false } - if !util.StringsMatch(a.InterfaceManagementProfile, b.InterfaceManagementProfile) { + if !util.Ints64Match(a.Mtu, b.Mtu) { return false } - if !matchLayer3SdwanLinkSettings(a.SdwanLinkSettings, b.SdwanLinkSettings) { + if !matchLayer3NdpProxy(a.NdpProxy, b.NdpProxy) { return false } - if !util.BoolsMatch(a.UntaggedSubInterface, b.UntaggedSubInterface) { + if !matchLayer3AdjustTcpMss(a.AdjustTcpMss, b.AdjustTcpMss) { return false } - if !util.BoolsMatch(a.DfIgnore, b.DfIgnore) { + if !util.BoolsMatch(a.DecryptForward, b.DecryptForward) { return false } - if !matchLayer3Ip(a.Ip, b.Ip) { + if !matchLayer3DhcpClient(a.DhcpClient, b.DhcpClient) { return false } - if !matchLayer3Lacp(a.Lacp, b.Lacp) { + if !util.StringsMatch(a.InterfaceManagementProfile, b.InterfaceManagementProfile) { return false } - if !matchLayer3AdjustTcpMss(a.AdjustTcpMss, b.AdjustTcpMss) { + if !matchLayer3Ipv6(a.Ipv6, b.Ipv6) { return false } - if !matchLayer3Bonjour(a.Bonjour, b.Bonjour) { + if !util.StringsMatch(a.NetflowProfile, b.NetflowProfile) { return false } - if !matchLayer3DdnsConfig(a.DdnsConfig, b.DdnsConfig) { + if !matchLayer3Bonjour(a.Bonjour, b.Bonjour) { return false } - if !matchLayer3Ipv6(a.Ipv6, b.Ipv6) { + if !util.BoolsMatch(a.DfIgnore, b.DfIgnore) { return false } - if !matchLayer3Lldp(a.Lldp, b.Lldp) { + if !matchLayer3Ip(a.Ip, b.Ip) { return false } - if !matchLayer3NdpProxy(a.NdpProxy, b.NdpProxy) { + if !matchLayer3Lacp(a.Lacp, b.Lacp) { return false } - if !matchLayer3Arp(a.Arp, b.Arp) { + if !util.BoolsMatch(a.UntaggedSubInterface, b.UntaggedSubInterface) { return false } - if !util.BoolsMatch(a.DecryptForward, b.DecryptForward) { + if !matchLayer3Arp(a.Arp, b.Arp) { return false } - if !util.Ints64Match(a.Mtu, b.Mtu) { + if !matchLayer3Lldp(a.Lldp, b.Lldp) { return false } - if !util.StringsMatch(a.NetflowProfile, b.NetflowProfile) { + if !matchLayer3SdwanLinkSettings(a.SdwanLinkSettings, b.SdwanLinkSettings) { return false } return true diff --git a/network/interface/ethernet/entry.go b/network/interface/ethernet/entry.go index d11c8b5..e4af1f5 100644 --- a/network/interface/ethernet/entry.go +++ b/network/interface/ethernet/entry.go @@ -1897,6 +1897,9 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["Layer3"]; ok { nestedLayer3.Misc = o.Misc["Layer3"] } + if o.Layer3.TrafficInterconnect != nil { + nestedLayer3.TrafficInterconnect = util.YesNo(o.Layer3.TrafficInterconnect, nil) + } if o.Layer3.Bonjour != nil { nestedLayer3.Bonjour = &Layer3BonjourXml{} if _, ok := o.Misc["Layer3Bonjour"]; ok { @@ -1912,135 +1915,66 @@ func specifyEntry(o *Entry) (any, error) { nestedLayer3.Bonjour.TtlCheck = util.YesNo(o.Layer3.Bonjour.TtlCheck, nil) } } - if o.Layer3.DdnsConfig != nil { - nestedLayer3.DdnsConfig = &Layer3DdnsConfigXml{} - if _, ok := o.Misc["Layer3DdnsConfig"]; ok { - nestedLayer3.DdnsConfig.Misc = o.Misc["Layer3DdnsConfig"] - } - if o.Layer3.DdnsConfig.DdnsCertProfile != nil { - nestedLayer3.DdnsConfig.DdnsCertProfile = o.Layer3.DdnsConfig.DdnsCertProfile - } - if o.Layer3.DdnsConfig.DdnsEnabled != nil { - nestedLayer3.DdnsConfig.DdnsEnabled = util.YesNo(o.Layer3.DdnsConfig.DdnsEnabled, nil) - } - if o.Layer3.DdnsConfig.DdnsHostname != nil { - nestedLayer3.DdnsConfig.DdnsHostname = o.Layer3.DdnsConfig.DdnsHostname - } - if o.Layer3.DdnsConfig.DdnsIp != nil { - nestedLayer3.DdnsConfig.DdnsIp = util.StrToMem(o.Layer3.DdnsConfig.DdnsIp) - } - if o.Layer3.DdnsConfig.DdnsIpv6 != nil { - nestedLayer3.DdnsConfig.DdnsIpv6 = util.StrToMem(o.Layer3.DdnsConfig.DdnsIpv6) - } - if o.Layer3.DdnsConfig.DdnsUpdateInterval != nil { - nestedLayer3.DdnsConfig.DdnsUpdateInterval = o.Layer3.DdnsConfig.DdnsUpdateInterval - } - if o.Layer3.DdnsConfig.DdnsVendor != nil { - nestedLayer3.DdnsConfig.DdnsVendor = o.Layer3.DdnsConfig.DdnsVendor - } - if o.Layer3.DdnsConfig.DdnsVendorConfig != nil { - nestedLayer3.DdnsConfig.DdnsVendorConfig = []Layer3DdnsConfigDdnsVendorConfigXml{} - for _, oLayer3DdnsConfigDdnsVendorConfig := range o.Layer3.DdnsConfig.DdnsVendorConfig { - nestedLayer3DdnsConfigDdnsVendorConfig := Layer3DdnsConfigDdnsVendorConfigXml{} - if _, ok := o.Misc["Layer3DdnsConfigDdnsVendorConfig"]; ok { - nestedLayer3DdnsConfigDdnsVendorConfig.Misc = o.Misc["Layer3DdnsConfigDdnsVendorConfig"] - } - if oLayer3DdnsConfigDdnsVendorConfig.Value != nil { - nestedLayer3DdnsConfigDdnsVendorConfig.Value = oLayer3DdnsConfigDdnsVendorConfig.Value - } - if oLayer3DdnsConfigDdnsVendorConfig.Name != "" { - nestedLayer3DdnsConfigDdnsVendorConfig.Name = oLayer3DdnsConfigDdnsVendorConfig.Name - } - nestedLayer3.DdnsConfig.DdnsVendorConfig = append(nestedLayer3.DdnsConfig.DdnsVendorConfig, nestedLayer3DdnsConfigDdnsVendorConfig) - } - } - } if o.Layer3.DfIgnore != nil { nestedLayer3.DfIgnore = util.YesNo(o.Layer3.DfIgnore, nil) } - if o.Layer3.Pppoe != nil { - nestedLayer3.Pppoe = &Layer3PppoeXml{} - if _, ok := o.Misc["Layer3Pppoe"]; ok { - nestedLayer3.Pppoe.Misc = o.Misc["Layer3Pppoe"] - } - if o.Layer3.Pppoe.DefaultRouteMetric != nil { - nestedLayer3.Pppoe.DefaultRouteMetric = o.Layer3.Pppoe.DefaultRouteMetric - } - if o.Layer3.Pppoe.Enable != nil { - nestedLayer3.Pppoe.Enable = util.YesNo(o.Layer3.Pppoe.Enable, nil) - } - if o.Layer3.Pppoe.Password != nil { - nestedLayer3.Pppoe.Password = o.Layer3.Pppoe.Password - } - if o.Layer3.Pppoe.StaticAddress != nil { - nestedLayer3.Pppoe.StaticAddress = &Layer3PppoeStaticAddressXml{} - if _, ok := o.Misc["Layer3PppoeStaticAddress"]; ok { - nestedLayer3.Pppoe.StaticAddress.Misc = o.Misc["Layer3PppoeStaticAddress"] - } - if o.Layer3.Pppoe.StaticAddress.Ip != nil { - nestedLayer3.Pppoe.StaticAddress.Ip = o.Layer3.Pppoe.StaticAddress.Ip + if o.Layer3.Ip != nil { + nestedLayer3.Ip = []Layer3IpXml{} + for _, oLayer3Ip := range o.Layer3.Ip { + nestedLayer3Ip := Layer3IpXml{} + if _, ok := o.Misc["Layer3Ip"]; ok { + nestedLayer3Ip.Misc = o.Misc["Layer3Ip"] } - } - if o.Layer3.Pppoe.AccessConcentrator != nil { - nestedLayer3.Pppoe.AccessConcentrator = o.Layer3.Pppoe.AccessConcentrator - } - if o.Layer3.Pppoe.CreateDefaultRoute != nil { - nestedLayer3.Pppoe.CreateDefaultRoute = util.YesNo(o.Layer3.Pppoe.CreateDefaultRoute, nil) - } - if o.Layer3.Pppoe.Service != nil { - nestedLayer3.Pppoe.Service = o.Layer3.Pppoe.Service - } - if o.Layer3.Pppoe.Username != nil { - nestedLayer3.Pppoe.Username = o.Layer3.Pppoe.Username - } - if o.Layer3.Pppoe.Authentication != nil { - nestedLayer3.Pppoe.Authentication = o.Layer3.Pppoe.Authentication - } - if o.Layer3.Pppoe.Passive != nil { - nestedLayer3.Pppoe.Passive = &Layer3PppoePassiveXml{} - if _, ok := o.Misc["Layer3PppoePassive"]; ok { - nestedLayer3.Pppoe.Passive.Misc = o.Misc["Layer3PppoePassive"] + if oLayer3Ip.SdwanGateway != nil { + nestedLayer3Ip.SdwanGateway = oLayer3Ip.SdwanGateway } - if o.Layer3.Pppoe.Passive.Enable != nil { - nestedLayer3.Pppoe.Passive.Enable = util.YesNo(o.Layer3.Pppoe.Passive.Enable, nil) + if oLayer3Ip.Name != "" { + nestedLayer3Ip.Name = oLayer3Ip.Name } + nestedLayer3.Ip = append(nestedLayer3.Ip, nestedLayer3Ip) } } - if o.Layer3.DecryptForward != nil { - nestedLayer3.DecryptForward = util.YesNo(o.Layer3.DecryptForward, nil) + if o.Layer3.NetflowProfile != nil { + nestedLayer3.NetflowProfile = o.Layer3.NetflowProfile } - if o.Layer3.DhcpClient != nil { - nestedLayer3.DhcpClient = &Layer3DhcpClientXml{} - if _, ok := o.Misc["Layer3DhcpClient"]; ok { - nestedLayer3.DhcpClient.Misc = o.Misc["Layer3DhcpClient"] - } - if o.Layer3.DhcpClient.CreateDefaultRoute != nil { - nestedLayer3.DhcpClient.CreateDefaultRoute = util.YesNo(o.Layer3.DhcpClient.CreateDefaultRoute, nil) - } - if o.Layer3.DhcpClient.DefaultRouteMetric != nil { - nestedLayer3.DhcpClient.DefaultRouteMetric = o.Layer3.DhcpClient.DefaultRouteMetric + if o.Layer3.ClusterInterconnect != nil { + nestedLayer3.ClusterInterconnect = util.YesNo(o.Layer3.ClusterInterconnect, nil) + } + if o.Layer3.InterfaceManagementProfile != nil { + nestedLayer3.InterfaceManagementProfile = o.Layer3.InterfaceManagementProfile + } + if o.Layer3.Lldp != nil { + nestedLayer3.Lldp = &Layer3LldpXml{} + if _, ok := o.Misc["Layer3Lldp"]; ok { + nestedLayer3.Lldp.Misc = o.Misc["Layer3Lldp"] } - if o.Layer3.DhcpClient.Enable != nil { - nestedLayer3.DhcpClient.Enable = util.YesNo(o.Layer3.DhcpClient.Enable, nil) + if o.Layer3.Lldp.Enable != nil { + nestedLayer3.Lldp.Enable = util.YesNo(o.Layer3.Lldp.Enable, nil) } - if o.Layer3.DhcpClient.SendHostname != nil { - nestedLayer3.DhcpClient.SendHostname = &Layer3DhcpClientSendHostnameXml{} - if _, ok := o.Misc["Layer3DhcpClientSendHostname"]; ok { - nestedLayer3.DhcpClient.SendHostname.Misc = o.Misc["Layer3DhcpClientSendHostname"] - } - if o.Layer3.DhcpClient.SendHostname.Hostname != nil { - nestedLayer3.DhcpClient.SendHostname.Hostname = o.Layer3.DhcpClient.SendHostname.Hostname + if o.Layer3.Lldp.HighAvailability != nil { + nestedLayer3.Lldp.HighAvailability = &Layer3LldpHighAvailabilityXml{} + if _, ok := o.Misc["Layer3LldpHighAvailability"]; ok { + nestedLayer3.Lldp.HighAvailability.Misc = o.Misc["Layer3LldpHighAvailability"] } - if o.Layer3.DhcpClient.SendHostname.Enable != nil { - nestedLayer3.DhcpClient.SendHostname.Enable = util.YesNo(o.Layer3.DhcpClient.SendHostname.Enable, nil) + if o.Layer3.Lldp.HighAvailability.PassivePreNegotiation != nil { + nestedLayer3.Lldp.HighAvailability.PassivePreNegotiation = util.YesNo(o.Layer3.Lldp.HighAvailability.PassivePreNegotiation, nil) } } + if o.Layer3.Lldp.Profile != nil { + nestedLayer3.Lldp.Profile = o.Layer3.Lldp.Profile + } + } + if o.Layer3.Mtu != nil { + nestedLayer3.Mtu = o.Layer3.Mtu } if o.Layer3.NdpProxy != nil { nestedLayer3.NdpProxy = &Layer3NdpProxyXml{} if _, ok := o.Misc["Layer3NdpProxy"]; ok { nestedLayer3.NdpProxy.Misc = o.Misc["Layer3NdpProxy"] } + if o.Layer3.NdpProxy.Enabled != nil { + nestedLayer3.NdpProxy.Enabled = util.YesNo(o.Layer3.NdpProxy.Enabled, nil) + } if o.Layer3.NdpProxy.Address != nil { nestedLayer3.NdpProxy.Address = []Layer3NdpProxyAddressXml{} for _, oLayer3NdpProxyAddress := range o.Layer3.NdpProxy.Address { @@ -2057,53 +1991,9 @@ func specifyEntry(o *Entry) (any, error) { nestedLayer3.NdpProxy.Address = append(nestedLayer3.NdpProxy.Address, nestedLayer3NdpProxyAddress) } } - if o.Layer3.NdpProxy.Enabled != nil { - nestedLayer3.NdpProxy.Enabled = util.YesNo(o.Layer3.NdpProxy.Enabled, nil) - } - } - if o.Layer3.NetflowProfile != nil { - nestedLayer3.NetflowProfile = o.Layer3.NetflowProfile - } - if o.Layer3.ClusterInterconnect != nil { - nestedLayer3.ClusterInterconnect = util.YesNo(o.Layer3.ClusterInterconnect, nil) - } - if o.Layer3.Arp != nil { - nestedLayer3.Arp = []Layer3ArpXml{} - for _, oLayer3Arp := range o.Layer3.Arp { - nestedLayer3Arp := Layer3ArpXml{} - if _, ok := o.Misc["Layer3Arp"]; ok { - nestedLayer3Arp.Misc = o.Misc["Layer3Arp"] - } - if oLayer3Arp.HwAddress != nil { - nestedLayer3Arp.HwAddress = oLayer3Arp.HwAddress - } - if oLayer3Arp.Name != "" { - nestedLayer3Arp.Name = oLayer3Arp.Name - } - nestedLayer3.Arp = append(nestedLayer3.Arp, nestedLayer3Arp) - } - } - if o.Layer3.Ip != nil { - nestedLayer3.Ip = []Layer3IpXml{} - for _, oLayer3Ip := range o.Layer3.Ip { - nestedLayer3Ip := Layer3IpXml{} - if _, ok := o.Misc["Layer3Ip"]; ok { - nestedLayer3Ip.Misc = o.Misc["Layer3Ip"] - } - if oLayer3Ip.SdwanGateway != nil { - nestedLayer3Ip.SdwanGateway = oLayer3Ip.SdwanGateway - } - if oLayer3Ip.Name != "" { - nestedLayer3Ip.Name = oLayer3Ip.Name - } - nestedLayer3.Ip = append(nestedLayer3.Ip, nestedLayer3Ip) - } - } - if o.Layer3.Mtu != nil { - nestedLayer3.Mtu = o.Layer3.Mtu } - if o.Layer3.TrafficInterconnect != nil { - nestedLayer3.TrafficInterconnect = util.YesNo(o.Layer3.TrafficInterconnect, nil) + if o.Layer3.UntaggedSubInterface != nil { + nestedLayer3.UntaggedSubInterface = util.YesNo(o.Layer3.UntaggedSubInterface, nil) } if o.Layer3.AdjustTcpMss != nil { nestedLayer3.AdjustTcpMss = &Layer3AdjustTcpMssXml{} @@ -2120,42 +2010,73 @@ func specifyEntry(o *Entry) (any, error) { nestedLayer3.AdjustTcpMss.Ipv6MssAdjustment = o.Layer3.AdjustTcpMss.Ipv6MssAdjustment } } - if o.Layer3.InterfaceManagementProfile != nil { - nestedLayer3.InterfaceManagementProfile = o.Layer3.InterfaceManagementProfile + if o.Layer3.DecryptForward != nil { + nestedLayer3.DecryptForward = util.YesNo(o.Layer3.DecryptForward, nil) + } + if o.Layer3.DhcpClient != nil { + nestedLayer3.DhcpClient = &Layer3DhcpClientXml{} + if _, ok := o.Misc["Layer3DhcpClient"]; ok { + nestedLayer3.DhcpClient.Misc = o.Misc["Layer3DhcpClient"] + } + if o.Layer3.DhcpClient.CreateDefaultRoute != nil { + nestedLayer3.DhcpClient.CreateDefaultRoute = util.YesNo(o.Layer3.DhcpClient.CreateDefaultRoute, nil) + } + if o.Layer3.DhcpClient.DefaultRouteMetric != nil { + nestedLayer3.DhcpClient.DefaultRouteMetric = o.Layer3.DhcpClient.DefaultRouteMetric + } + if o.Layer3.DhcpClient.Enable != nil { + nestedLayer3.DhcpClient.Enable = util.YesNo(o.Layer3.DhcpClient.Enable, nil) + } + if o.Layer3.DhcpClient.SendHostname != nil { + nestedLayer3.DhcpClient.SendHostname = &Layer3DhcpClientSendHostnameXml{} + if _, ok := o.Misc["Layer3DhcpClientSendHostname"]; ok { + nestedLayer3.DhcpClient.SendHostname.Misc = o.Misc["Layer3DhcpClientSendHostname"] + } + if o.Layer3.DhcpClient.SendHostname.Enable != nil { + nestedLayer3.DhcpClient.SendHostname.Enable = util.YesNo(o.Layer3.DhcpClient.SendHostname.Enable, nil) + } + if o.Layer3.DhcpClient.SendHostname.Hostname != nil { + nestedLayer3.DhcpClient.SendHostname.Hostname = o.Layer3.DhcpClient.SendHostname.Hostname + } + } } if o.Layer3.Ipv6 != nil { nestedLayer3.Ipv6 = &Layer3Ipv6Xml{} if _, ok := o.Misc["Layer3Ipv6"]; ok { nestedLayer3.Ipv6.Misc = o.Misc["Layer3Ipv6"] } - if o.Layer3.Ipv6.InterfaceId != nil { - nestedLayer3.Ipv6.InterfaceId = o.Layer3.Ipv6.InterfaceId - } if o.Layer3.Ipv6.NeighborDiscovery != nil { nestedLayer3.Ipv6.NeighborDiscovery = &Layer3Ipv6NeighborDiscoveryXml{} if _, ok := o.Misc["Layer3Ipv6NeighborDiscovery"]; ok { nestedLayer3.Ipv6.NeighborDiscovery.Misc = o.Misc["Layer3Ipv6NeighborDiscovery"] } + if o.Layer3.Ipv6.NeighborDiscovery.Neighbor != nil { + nestedLayer3.Ipv6.NeighborDiscovery.Neighbor = []Layer3Ipv6NeighborDiscoveryNeighborXml{} + for _, oLayer3Ipv6NeighborDiscoveryNeighbor := range o.Layer3.Ipv6.NeighborDiscovery.Neighbor { + nestedLayer3Ipv6NeighborDiscoveryNeighbor := Layer3Ipv6NeighborDiscoveryNeighborXml{} + if _, ok := o.Misc["Layer3Ipv6NeighborDiscoveryNeighbor"]; ok { + nestedLayer3Ipv6NeighborDiscoveryNeighbor.Misc = o.Misc["Layer3Ipv6NeighborDiscoveryNeighbor"] + } + if oLayer3Ipv6NeighborDiscoveryNeighbor.HwAddress != nil { + nestedLayer3Ipv6NeighborDiscoveryNeighbor.HwAddress = oLayer3Ipv6NeighborDiscoveryNeighbor.HwAddress + } + if oLayer3Ipv6NeighborDiscoveryNeighbor.Name != "" { + nestedLayer3Ipv6NeighborDiscoveryNeighbor.Name = oLayer3Ipv6NeighborDiscoveryNeighbor.Name + } + nestedLayer3.Ipv6.NeighborDiscovery.Neighbor = append(nestedLayer3.Ipv6.NeighborDiscovery.Neighbor, nestedLayer3Ipv6NeighborDiscoveryNeighbor) + } + } + if o.Layer3.Ipv6.NeighborDiscovery.NsInterval != nil { + nestedLayer3.Ipv6.NeighborDiscovery.NsInterval = o.Layer3.Ipv6.NeighborDiscovery.NsInterval + } + if o.Layer3.Ipv6.NeighborDiscovery.ReachableTime != nil { + nestedLayer3.Ipv6.NeighborDiscovery.ReachableTime = o.Layer3.Ipv6.NeighborDiscovery.ReachableTime + } if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement != nil { nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement = &Layer3Ipv6NeighborDiscoveryRouterAdvertisementXml{} if _, ok := o.Misc["Layer3Ipv6NeighborDiscoveryRouterAdvertisement"]; ok { nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Misc = o.Misc["Layer3Ipv6NeighborDiscoveryRouterAdvertisement"] } - if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Enable != nil { - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Enable = util.YesNo(o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Enable, nil) - } - if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.ManagedFlag != nil { - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.ManagedFlag = util.YesNo(o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.ManagedFlag, nil) - } - if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MinInterval != nil { - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MinInterval = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MinInterval - } - if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MaxInterval != nil { - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MaxInterval = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MaxInterval - } - if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.OtherFlag != nil { - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.OtherFlag = util.YesNo(o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.OtherFlag, nil) - } if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.ReachableTime != nil { nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.ReachableTime = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.ReachableTime } @@ -2190,25 +2111,40 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["Layer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix"]; ok { nestedLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix.Misc = o.Misc["Layer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix"] } - if oLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix.Name != "" { - nestedLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix.Name = oLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix.Name - } if oLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix.Lifetime != nil { nestedLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix.Lifetime = oLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix.Lifetime } + if oLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix.Name != "" { + nestedLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix.Name = oLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix.Name + } nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Suffix = append(nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Suffix, nestedLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix) } } } + if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Enable != nil { + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Enable = util.YesNo(o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Enable, nil) + } + if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Lifetime != nil { + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Lifetime = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Lifetime + } + if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.ManagedFlag != nil { + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.ManagedFlag = util.YesNo(o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.ManagedFlag, nil) + } + if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MaxInterval != nil { + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MaxInterval = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MaxInterval + } + if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MinInterval != nil { + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MinInterval = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MinInterval + } + if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.OtherFlag != nil { + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.OtherFlag = util.YesNo(o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.OtherFlag, nil) + } if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck != nil { nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck = util.YesNo(o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck, nil) } if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.HopLimit != nil { nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.HopLimit = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.HopLimit } - if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Lifetime != nil { - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Lifetime = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Lifetime - } if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.LinkMtu != nil { nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.LinkMtu = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.LinkMtu } @@ -2228,34 +2164,87 @@ func specifyEntry(o *Entry) (any, error) { if o.Layer3.Ipv6.NeighborDiscovery.EnableNdpMonitor != nil { nestedLayer3.Ipv6.NeighborDiscovery.EnableNdpMonitor = util.YesNo(o.Layer3.Ipv6.NeighborDiscovery.EnableNdpMonitor, nil) } - if o.Layer3.Ipv6.NeighborDiscovery.Neighbor != nil { - nestedLayer3.Ipv6.NeighborDiscovery.Neighbor = []Layer3Ipv6NeighborDiscoveryNeighborXml{} - for _, oLayer3Ipv6NeighborDiscoveryNeighbor := range o.Layer3.Ipv6.NeighborDiscovery.Neighbor { - nestedLayer3Ipv6NeighborDiscoveryNeighbor := Layer3Ipv6NeighborDiscoveryNeighborXml{} - if _, ok := o.Misc["Layer3Ipv6NeighborDiscoveryNeighbor"]; ok { - nestedLayer3Ipv6NeighborDiscoveryNeighbor.Misc = o.Misc["Layer3Ipv6NeighborDiscoveryNeighbor"] - } - if oLayer3Ipv6NeighborDiscoveryNeighbor.HwAddress != nil { - nestedLayer3Ipv6NeighborDiscoveryNeighbor.HwAddress = oLayer3Ipv6NeighborDiscoveryNeighbor.HwAddress - } - if oLayer3Ipv6NeighborDiscoveryNeighbor.Name != "" { - nestedLayer3Ipv6NeighborDiscoveryNeighbor.Name = oLayer3Ipv6NeighborDiscoveryNeighbor.Name - } - nestedLayer3.Ipv6.NeighborDiscovery.Neighbor = append(nestedLayer3.Ipv6.NeighborDiscovery.Neighbor, nestedLayer3Ipv6NeighborDiscoveryNeighbor) - } - } - if o.Layer3.Ipv6.NeighborDiscovery.NsInterval != nil { - nestedLayer3.Ipv6.NeighborDiscovery.NsInterval = o.Layer3.Ipv6.NeighborDiscovery.NsInterval - } - if o.Layer3.Ipv6.NeighborDiscovery.ReachableTime != nil { - nestedLayer3.Ipv6.NeighborDiscovery.ReachableTime = o.Layer3.Ipv6.NeighborDiscovery.ReachableTime - } } if o.Layer3.Ipv6.DhcpClient != nil { nestedLayer3.Ipv6.DhcpClient = &Layer3Ipv6DhcpClientXml{} if _, ok := o.Misc["Layer3Ipv6DhcpClient"]; ok { nestedLayer3.Ipv6.DhcpClient.Misc = o.Misc["Layer3Ipv6DhcpClient"] } + if o.Layer3.Ipv6.DhcpClient.Preference != nil { + nestedLayer3.Ipv6.DhcpClient.Preference = o.Layer3.Ipv6.DhcpClient.Preference + } + if o.Layer3.Ipv6.DhcpClient.PrefixDelegation != nil { + nestedLayer3.Ipv6.DhcpClient.PrefixDelegation = &Layer3Ipv6DhcpClientPrefixDelegationXml{} + if _, ok := o.Misc["Layer3Ipv6DhcpClientPrefixDelegation"]; ok { + nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Misc = o.Misc["Layer3Ipv6DhcpClientPrefixDelegation"] + } + if o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable != nil { + nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Enable = &Layer3Ipv6DhcpClientPrefixDelegationEnableXml{} + if _, ok := o.Misc["Layer3Ipv6DhcpClientPrefixDelegationEnable"]; ok { + nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Misc = o.Misc["Layer3Ipv6DhcpClientPrefixDelegationEnable"] + } + if o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.No != nil { + nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Enable.No = &Layer3Ipv6DhcpClientPrefixDelegationEnableNoXml{} + if _, ok := o.Misc["Layer3Ipv6DhcpClientPrefixDelegationEnableNo"]; ok { + nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Enable.No.Misc = o.Misc["Layer3Ipv6DhcpClientPrefixDelegationEnableNo"] + } + } + if o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes != nil { + nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes = &Layer3Ipv6DhcpClientPrefixDelegationEnableYesXml{} + if _, ok := o.Misc["Layer3Ipv6DhcpClientPrefixDelegationEnableYes"]; ok { + nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.Misc = o.Misc["Layer3Ipv6DhcpClientPrefixDelegationEnableYes"] + } + if o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLenHint != nil { + nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLenHint = util.YesNo(o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLenHint, nil) + } + if o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PfxPoolName != nil { + nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PfxPoolName = o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PfxPoolName + } + if o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLen != nil { + nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLen = o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLen + } + } + } + } + if o.Layer3.Ipv6.DhcpClient.V6Options != nil { + nestedLayer3.Ipv6.DhcpClient.V6Options = &Layer3Ipv6DhcpClientV6OptionsXml{} + if _, ok := o.Misc["Layer3Ipv6DhcpClientV6Options"]; ok { + nestedLayer3.Ipv6.DhcpClient.V6Options.Misc = o.Misc["Layer3Ipv6DhcpClientV6Options"] + } + if o.Layer3.Ipv6.DhcpClient.V6Options.DuidType != nil { + nestedLayer3.Ipv6.DhcpClient.V6Options.DuidType = o.Layer3.Ipv6.DhcpClient.V6Options.DuidType + } + if o.Layer3.Ipv6.DhcpClient.V6Options.Enable != nil { + nestedLayer3.Ipv6.DhcpClient.V6Options.Enable = &Layer3Ipv6DhcpClientV6OptionsEnableXml{} + if _, ok := o.Misc["Layer3Ipv6DhcpClientV6OptionsEnable"]; ok { + nestedLayer3.Ipv6.DhcpClient.V6Options.Enable.Misc = o.Misc["Layer3Ipv6DhcpClientV6OptionsEnable"] + } + if o.Layer3.Ipv6.DhcpClient.V6Options.Enable.No != nil { + nestedLayer3.Ipv6.DhcpClient.V6Options.Enable.No = &Layer3Ipv6DhcpClientV6OptionsEnableNoXml{} + if _, ok := o.Misc["Layer3Ipv6DhcpClientV6OptionsEnableNo"]; ok { + nestedLayer3.Ipv6.DhcpClient.V6Options.Enable.No.Misc = o.Misc["Layer3Ipv6DhcpClientV6OptionsEnableNo"] + } + } + if o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes != nil { + nestedLayer3.Ipv6.DhcpClient.V6Options.Enable.Yes = &Layer3Ipv6DhcpClientV6OptionsEnableYesXml{} + if _, ok := o.Misc["Layer3Ipv6DhcpClientV6OptionsEnableYes"]; ok { + nestedLayer3.Ipv6.DhcpClient.V6Options.Enable.Yes.Misc = o.Misc["Layer3Ipv6DhcpClientV6OptionsEnableYes"] + } + if o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes.NonTempAddr != nil { + nestedLayer3.Ipv6.DhcpClient.V6Options.Enable.Yes.NonTempAddr = util.YesNo(o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes.NonTempAddr, nil) + } + if o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes.TempAddr != nil { + nestedLayer3.Ipv6.DhcpClient.V6Options.Enable.Yes.TempAddr = util.YesNo(o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes.TempAddr, nil) + } + } + } + if o.Layer3.Ipv6.DhcpClient.V6Options.RapidCommit != nil { + nestedLayer3.Ipv6.DhcpClient.V6Options.RapidCommit = util.YesNo(o.Layer3.Ipv6.DhcpClient.V6Options.RapidCommit, nil) + } + if o.Layer3.Ipv6.DhcpClient.V6Options.SupportSrvrReconfig != nil { + nestedLayer3.Ipv6.DhcpClient.V6Options.SupportSrvrReconfig = util.YesNo(o.Layer3.Ipv6.DhcpClient.V6Options.SupportSrvrReconfig, nil) + } + } if o.Layer3.Ipv6.DhcpClient.AcceptRaRoute != nil { nestedLayer3.Ipv6.DhcpClient.AcceptRaRoute = util.YesNo(o.Layer3.Ipv6.DhcpClient.AcceptRaRoute, nil) } @@ -2270,6 +2259,28 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["Layer3Ipv6DhcpClientNeighborDiscovery"]; ok { nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.Misc = o.Misc["Layer3Ipv6DhcpClientNeighborDiscovery"] } + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.EnableDad != nil { + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.EnableDad = util.YesNo(o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.EnableDad, nil) + } + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.EnableNdpMonitor != nil { + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.EnableNdpMonitor = util.YesNo(o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.EnableNdpMonitor, nil) + } + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.Neighbor != nil { + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.Neighbor = []Layer3Ipv6DhcpClientNeighborDiscoveryNeighborXml{} + for _, oLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor := range o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.Neighbor { + nestedLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor := Layer3Ipv6DhcpClientNeighborDiscoveryNeighborXml{} + if _, ok := o.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryNeighbor"]; ok { + nestedLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.Misc = o.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryNeighbor"] + } + if oLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.HwAddress != nil { + nestedLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.HwAddress = oLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.HwAddress + } + if oLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.Name != "" { + nestedLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.Name = oLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.Name + } + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.Neighbor = append(nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.Neighbor, nestedLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor) + } + } if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.NsInterval != nil { nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.NsInterval = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.NsInterval } @@ -2292,6 +2303,12 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSource"]; ok { nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Misc = o.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSource"] } + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Dhcpv6 != nil { + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Dhcpv6 = &Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceDhcpv6Xml{} + if _, ok := o.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceDhcpv6"]; ok { + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Dhcpv6.Misc = o.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceDhcpv6"] + } + } if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual != nil { nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual = &Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualXml{} if _, ok := o.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManual"]; ok { @@ -2304,22 +2321,16 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer"]; ok { nestedLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Misc = o.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer"] } - if oLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Lifetime != nil { - nestedLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Lifetime = oLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Lifetime - } if oLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Name != "" { nestedLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Name = oLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Name } + if oLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Lifetime != nil { + nestedLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Lifetime = oLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Lifetime + } nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual.Server = append(nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual.Server, nestedLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer) } } } - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Dhcpv6 != nil { - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Dhcpv6 = &Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceDhcpv6Xml{} - if _, ok := o.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceDhcpv6"]; ok { - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Dhcpv6.Misc = o.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceDhcpv6"] - } - } } } if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix != nil { @@ -2335,12 +2346,6 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSource"]; ok { nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Misc = o.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSource"] } - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Dhcpv6 != nil { - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Dhcpv6 = &Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceDhcpv6Xml{} - if _, ok := o.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceDhcpv6"]; ok { - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Dhcpv6.Misc = o.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceDhcpv6"] - } - } if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Manual != nil { nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Manual = &Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualXml{} if _, ok := o.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManual"]; ok { @@ -2353,121 +2358,139 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix"]; ok { nestedLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix.Misc = o.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix"] } - if oLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix.Lifetime != nil { - nestedLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix.Lifetime = oLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix.Lifetime - } if oLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix.Name != "" { nestedLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix.Name = oLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix.Name } + if oLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix.Lifetime != nil { + nestedLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix.Lifetime = oLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix.Lifetime + } nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Manual.Suffix = append(nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Manual.Suffix, nestedLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix) } } } - } - } - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.EnableDad != nil { - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.EnableDad = util.YesNo(o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.EnableDad, nil) - } - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.EnableNdpMonitor != nil { - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.EnableNdpMonitor = util.YesNo(o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.EnableNdpMonitor, nil) - } - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.Neighbor != nil { - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.Neighbor = []Layer3Ipv6DhcpClientNeighborDiscoveryNeighborXml{} - for _, oLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor := range o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.Neighbor { - nestedLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor := Layer3Ipv6DhcpClientNeighborDiscoveryNeighborXml{} - if _, ok := o.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryNeighbor"]; ok { - nestedLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.Misc = o.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryNeighbor"] - } - if oLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.Name != "" { - nestedLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.Name = oLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.Name - } - if oLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.HwAddress != nil { - nestedLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.HwAddress = oLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.HwAddress + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Dhcpv6 != nil { + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Dhcpv6 = &Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceDhcpv6Xml{} + if _, ok := o.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceDhcpv6"]; ok { + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Dhcpv6.Misc = o.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceDhcpv6"] + } } - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.Neighbor = append(nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.Neighbor, nestedLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor) } } } - if o.Layer3.Ipv6.DhcpClient.Preference != nil { - nestedLayer3.Ipv6.DhcpClient.Preference = o.Layer3.Ipv6.DhcpClient.Preference + } + if o.Layer3.Ipv6.Inherited != nil { + nestedLayer3.Ipv6.Inherited = &Layer3Ipv6InheritedXml{} + if _, ok := o.Misc["Layer3Ipv6Inherited"]; ok { + nestedLayer3.Ipv6.Inherited.Misc = o.Misc["Layer3Ipv6Inherited"] } - if o.Layer3.Ipv6.DhcpClient.PrefixDelegation != nil { - nestedLayer3.Ipv6.DhcpClient.PrefixDelegation = &Layer3Ipv6DhcpClientPrefixDelegationXml{} - if _, ok := o.Misc["Layer3Ipv6DhcpClientPrefixDelegation"]; ok { - nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Misc = o.Misc["Layer3Ipv6DhcpClientPrefixDelegation"] - } - if o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable != nil { - nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Enable = &Layer3Ipv6DhcpClientPrefixDelegationEnableXml{} - if _, ok := o.Misc["Layer3Ipv6DhcpClientPrefixDelegationEnable"]; ok { - nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Misc = o.Misc["Layer3Ipv6DhcpClientPrefixDelegationEnable"] - } - if o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.No != nil { - nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Enable.No = &Layer3Ipv6DhcpClientPrefixDelegationEnableNoXml{} - if _, ok := o.Misc["Layer3Ipv6DhcpClientPrefixDelegationEnableNo"]; ok { - nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Enable.No.Misc = o.Misc["Layer3Ipv6DhcpClientPrefixDelegationEnableNo"] - } + if o.Layer3.Ipv6.Inherited.AssignAddr != nil { + nestedLayer3.Ipv6.Inherited.AssignAddr = []Layer3Ipv6InheritedAssignAddrXml{} + for _, oLayer3Ipv6InheritedAssignAddr := range o.Layer3.Ipv6.Inherited.AssignAddr { + nestedLayer3Ipv6InheritedAssignAddr := Layer3Ipv6InheritedAssignAddrXml{} + if _, ok := o.Misc["Layer3Ipv6InheritedAssignAddr"]; ok { + nestedLayer3Ipv6InheritedAssignAddr.Misc = o.Misc["Layer3Ipv6InheritedAssignAddr"] } - if o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes != nil { - nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes = &Layer3Ipv6DhcpClientPrefixDelegationEnableYesXml{} - if _, ok := o.Misc["Layer3Ipv6DhcpClientPrefixDelegationEnableYes"]; ok { - nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.Misc = o.Misc["Layer3Ipv6DhcpClientPrefixDelegationEnableYes"] - } - if o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLenHint != nil { - nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLenHint = util.YesNo(o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLenHint, nil) + if oLayer3Ipv6InheritedAssignAddr.Type != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type = &Layer3Ipv6InheritedAssignAddrTypeXml{} + if _, ok := o.Misc["Layer3Ipv6InheritedAssignAddrType"]; ok { + nestedLayer3Ipv6InheritedAssignAddr.Type.Misc = o.Misc["Layer3Ipv6InheritedAssignAddrType"] } - if o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PfxPoolName != nil { - nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PfxPoolName = o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PfxPoolName - } - if o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLen != nil { - nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLen = o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLen + if oLayer3Ipv6InheritedAssignAddr.Type.Gua != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Gua = &Layer3Ipv6InheritedAssignAddrTypeGuaXml{} + if _, ok := o.Misc["Layer3Ipv6InheritedAssignAddrTypeGua"]; ok { + nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.Misc = o.Misc["Layer3Ipv6InheritedAssignAddrTypeGua"] + } + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType = &Layer3Ipv6InheritedAssignAddrTypeGuaPoolTypeXml{} + if _, ok := o.Misc["Layer3Ipv6InheritedAssignAddrTypeGuaPoolType"]; ok { + nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.Misc = o.Misc["Layer3Ipv6InheritedAssignAddrTypeGuaPoolType"] + } + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.Dynamic != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.Dynamic = &Layer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamicXml{} + if _, ok := o.Misc["Layer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamic"]; ok { + nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.Dynamic.Misc = o.Misc["Layer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamic"] + } + } + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId = &Layer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamicIdXml{} + if _, ok := o.Misc["Layer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamicId"]; ok { + nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId.Misc = o.Misc["Layer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamicId"] + } + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId.Identifier != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId.Identifier = oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId.Identifier + } + } + } + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise = &Layer3Ipv6InheritedAssignAddrTypeGuaAdvertiseXml{} + if _, ok := o.Misc["Layer3Ipv6InheritedAssignAddrTypeGuaAdvertise"]; ok { + nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.Misc = o.Misc["Layer3Ipv6InheritedAssignAddrTypeGuaAdvertise"] + } + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.AutoConfigFlag != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.AutoConfigFlag = util.YesNo(oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.AutoConfigFlag, nil) + } + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.Enable != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.Enable = util.YesNo(oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.Enable, nil) + } + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.OnlinkFlag != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.OnlinkFlag = util.YesNo(oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.OnlinkFlag, nil) + } + } + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.EnableOnInterface != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.EnableOnInterface = util.YesNo(oLayer3Ipv6InheritedAssignAddr.Type.Gua.EnableOnInterface, nil) + } + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PrefixPool != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.PrefixPool = oLayer3Ipv6InheritedAssignAddr.Type.Gua.PrefixPool + } } - } - } - } - if o.Layer3.Ipv6.DhcpClient.V6Options != nil { - nestedLayer3.Ipv6.DhcpClient.V6Options = &Layer3Ipv6DhcpClientV6OptionsXml{} - if _, ok := o.Misc["Layer3Ipv6DhcpClientV6Options"]; ok { - nestedLayer3.Ipv6.DhcpClient.V6Options.Misc = o.Misc["Layer3Ipv6DhcpClientV6Options"] - } - if o.Layer3.Ipv6.DhcpClient.V6Options.DuidType != nil { - nestedLayer3.Ipv6.DhcpClient.V6Options.DuidType = o.Layer3.Ipv6.DhcpClient.V6Options.DuidType - } - if o.Layer3.Ipv6.DhcpClient.V6Options.Enable != nil { - nestedLayer3.Ipv6.DhcpClient.V6Options.Enable = &Layer3Ipv6DhcpClientV6OptionsEnableXml{} - if _, ok := o.Misc["Layer3Ipv6DhcpClientV6OptionsEnable"]; ok { - nestedLayer3.Ipv6.DhcpClient.V6Options.Enable.Misc = o.Misc["Layer3Ipv6DhcpClientV6OptionsEnable"] - } - if o.Layer3.Ipv6.DhcpClient.V6Options.Enable.No != nil { - nestedLayer3.Ipv6.DhcpClient.V6Options.Enable.No = &Layer3Ipv6DhcpClientV6OptionsEnableNoXml{} - if _, ok := o.Misc["Layer3Ipv6DhcpClientV6OptionsEnableNo"]; ok { - nestedLayer3.Ipv6.DhcpClient.V6Options.Enable.No.Misc = o.Misc["Layer3Ipv6DhcpClientV6OptionsEnableNo"] + if oLayer3Ipv6InheritedAssignAddr.Type.Ula != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula = &Layer3Ipv6InheritedAssignAddrTypeUlaXml{} + if _, ok := o.Misc["Layer3Ipv6InheritedAssignAddrTypeUla"]; ok { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Misc = o.Misc["Layer3Ipv6InheritedAssignAddrTypeUla"] + } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise = &Layer3Ipv6InheritedAssignAddrTypeUlaAdvertiseXml{} + if _, ok := o.Misc["Layer3Ipv6InheritedAssignAddrTypeUlaAdvertise"]; ok { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.Misc = o.Misc["Layer3Ipv6InheritedAssignAddrTypeUlaAdvertise"] + } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.Enable != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.Enable = util.YesNo(oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.Enable, nil) + } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.ValidLifetime != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.ValidLifetime = oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.ValidLifetime + } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.PreferredLifetime != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.PreferredLifetime = oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.PreferredLifetime + } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.OnlinkFlag != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.OnlinkFlag = util.YesNo(oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.OnlinkFlag, nil) + } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.AutoConfigFlag != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.AutoConfigFlag = util.YesNo(oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.AutoConfigFlag, nil) + } + } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.EnableOnInterface != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.EnableOnInterface = util.YesNo(oLayer3Ipv6InheritedAssignAddr.Type.Ula.EnableOnInterface, nil) + } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Address != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Address = oLayer3Ipv6InheritedAssignAddr.Type.Ula.Address + } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Prefix != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Prefix = util.YesNo(oLayer3Ipv6InheritedAssignAddr.Type.Ula.Prefix, nil) + } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Anycast != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Anycast = util.YesNo(oLayer3Ipv6InheritedAssignAddr.Type.Ula.Anycast, nil) + } } } - if o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes != nil { - nestedLayer3.Ipv6.DhcpClient.V6Options.Enable.Yes = &Layer3Ipv6DhcpClientV6OptionsEnableYesXml{} - if _, ok := o.Misc["Layer3Ipv6DhcpClientV6OptionsEnableYes"]; ok { - nestedLayer3.Ipv6.DhcpClient.V6Options.Enable.Yes.Misc = o.Misc["Layer3Ipv6DhcpClientV6OptionsEnableYes"] - } - if o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes.NonTempAddr != nil { - nestedLayer3.Ipv6.DhcpClient.V6Options.Enable.Yes.NonTempAddr = util.YesNo(o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes.NonTempAddr, nil) - } - if o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes.TempAddr != nil { - nestedLayer3.Ipv6.DhcpClient.V6Options.Enable.Yes.TempAddr = util.YesNo(o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes.TempAddr, nil) - } + if oLayer3Ipv6InheritedAssignAddr.Name != "" { + nestedLayer3Ipv6InheritedAssignAddr.Name = oLayer3Ipv6InheritedAssignAddr.Name } - } - if o.Layer3.Ipv6.DhcpClient.V6Options.RapidCommit != nil { - nestedLayer3.Ipv6.DhcpClient.V6Options.RapidCommit = util.YesNo(o.Layer3.Ipv6.DhcpClient.V6Options.RapidCommit, nil) - } - if o.Layer3.Ipv6.DhcpClient.V6Options.SupportSrvrReconfig != nil { - nestedLayer3.Ipv6.DhcpClient.V6Options.SupportSrvrReconfig = util.YesNo(o.Layer3.Ipv6.DhcpClient.V6Options.SupportSrvrReconfig, nil) + nestedLayer3.Ipv6.Inherited.AssignAddr = append(nestedLayer3.Ipv6.Inherited.AssignAddr, nestedLayer3Ipv6InheritedAssignAddr) } } - } - if o.Layer3.Ipv6.Inherited != nil { - nestedLayer3.Ipv6.Inherited = &Layer3Ipv6InheritedXml{} - if _, ok := o.Misc["Layer3Ipv6Inherited"]; ok { - nestedLayer3.Ipv6.Inherited.Misc = o.Misc["Layer3Ipv6Inherited"] + if o.Layer3.Ipv6.Inherited.Enable != nil { + nestedLayer3.Ipv6.Inherited.Enable = util.YesNo(o.Layer3.Ipv6.Inherited.Enable, nil) } if o.Layer3.Ipv6.Inherited.NeighborDiscovery != nil { nestedLayer3.Ipv6.Inherited.NeighborDiscovery = &Layer3Ipv6InheritedNeighborDiscoveryXml{} @@ -2479,14 +2502,23 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["Layer3Ipv6InheritedNeighborDiscoveryRouterAdvertisement"]; ok { nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Misc = o.Misc["Layer3Ipv6InheritedNeighborDiscoveryRouterAdvertisement"] } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Enable != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Enable = util.YesNo(o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Enable, nil) + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Lifetime != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Lifetime = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Lifetime + } if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.LinkMtu != nil { nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.LinkMtu = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.LinkMtu } if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.MinInterval != nil { nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.MinInterval = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.MinInterval } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RouterPreference != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RouterPreference = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RouterPreference + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.ReachableTime != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.ReachableTime = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.ReachableTime + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer } if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck != nil { nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck = util.YesNo(o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck, nil) @@ -2503,19 +2535,65 @@ func specifyEntry(o *Entry) (any, error) { if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.OtherFlag != nil { nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.OtherFlag = util.YesNo(o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.OtherFlag, nil) } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.ReachableTime != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.ReachableTime = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.ReachableTime + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RouterPreference != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RouterPreference = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RouterPreference } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DadAttempts != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DadAttempts = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DadAttempts + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix = &Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixXml{} + if _, ok := o.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsSuffix"]; ok { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Misc = o.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsSuffix"] } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Enable != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Enable = util.YesNo(o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Enable, nil) + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Enable != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Enable = util.YesNo(o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Enable, nil) } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Lifetime != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Lifetime = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Lifetime + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source = &Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceXml{} + if _, ok := o.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSource"]; ok { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Misc = o.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSource"] + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Dhcpv6 != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Dhcpv6 = &Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceDhcpv6Xml{} + if _, ok := o.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceDhcpv6"]; ok { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Dhcpv6.Misc = o.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceDhcpv6"] + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Dhcpv6.PrefixPool != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Dhcpv6.PrefixPool = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Dhcpv6.PrefixPool + } + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Manual != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Manual = &Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualXml{} + if _, ok := o.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManual"]; ok { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Manual.Misc = o.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManual"] + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Manual.Suffix != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Manual.Suffix = []Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffixXml{} + for _, oLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix := range o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Manual.Suffix { + nestedLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix := Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffixXml{} + if _, ok := o.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix"]; ok { + nestedLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Misc = o.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix"] + } + if oLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Name != "" { + nestedLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Name = oLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Name + } + if oLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Lifetime != nil { + nestedLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Lifetime = oLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Lifetime + } + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Manual.Suffix = append(nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Manual.Suffix, nestedLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix) + } + } + } } } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.EnableDad != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.EnableDad = util.YesNo(o.Layer3.Ipv6.Inherited.NeighborDiscovery.EnableDad, nil) + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.NsInterval != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.NsInterval = o.Layer3.Ipv6.Inherited.NeighborDiscovery.NsInterval + } if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer != nil { nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsServer = &Layer3Ipv6InheritedNeighborDiscoveryDnsServerXml{} if _, ok := o.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsServer"]; ok { @@ -2562,64 +2640,18 @@ func specifyEntry(o *Entry) (any, error) { } } } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix = &Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixXml{} - if _, ok := o.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsSuffix"]; ok { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Misc = o.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsSuffix"] - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Enable != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Enable = util.YesNo(o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Enable, nil) - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source = &Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceXml{} - if _, ok := o.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSource"]; ok { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Misc = o.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSource"] + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.EnableNdpMonitor != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.EnableNdpMonitor = util.YesNo(o.Layer3.Ipv6.Inherited.NeighborDiscovery.EnableNdpMonitor, nil) + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.Neighbor != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.Neighbor = []Layer3Ipv6InheritedNeighborDiscoveryNeighborXml{} + for _, oLayer3Ipv6InheritedNeighborDiscoveryNeighbor := range o.Layer3.Ipv6.Inherited.NeighborDiscovery.Neighbor { + nestedLayer3Ipv6InheritedNeighborDiscoveryNeighbor := Layer3Ipv6InheritedNeighborDiscoveryNeighborXml{} + if _, ok := o.Misc["Layer3Ipv6InheritedNeighborDiscoveryNeighbor"]; ok { + nestedLayer3Ipv6InheritedNeighborDiscoveryNeighbor.Misc = o.Misc["Layer3Ipv6InheritedNeighborDiscoveryNeighbor"] } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Dhcpv6 != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Dhcpv6 = &Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceDhcpv6Xml{} - if _, ok := o.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceDhcpv6"]; ok { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Dhcpv6.Misc = o.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceDhcpv6"] - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Dhcpv6.PrefixPool != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Dhcpv6.PrefixPool = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Dhcpv6.PrefixPool - } - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Manual != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Manual = &Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualXml{} - if _, ok := o.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManual"]; ok { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Manual.Misc = o.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManual"] - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Manual.Suffix != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Manual.Suffix = []Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffixXml{} - for _, oLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix := range o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Manual.Suffix { - nestedLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix := Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffixXml{} - if _, ok := o.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix"]; ok { - nestedLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Misc = o.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix"] - } - if oLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Lifetime != nil { - nestedLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Lifetime = oLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Lifetime - } - if oLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Name != "" { - nestedLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Name = oLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Name - } - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Manual.Suffix = append(nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Manual.Suffix, nestedLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix) - } - } - } - } - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.NsInterval != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.NsInterval = o.Layer3.Ipv6.Inherited.NeighborDiscovery.NsInterval - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.Neighbor != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.Neighbor = []Layer3Ipv6InheritedNeighborDiscoveryNeighborXml{} - for _, oLayer3Ipv6InheritedNeighborDiscoveryNeighbor := range o.Layer3.Ipv6.Inherited.NeighborDiscovery.Neighbor { - nestedLayer3Ipv6InheritedNeighborDiscoveryNeighbor := Layer3Ipv6InheritedNeighborDiscoveryNeighborXml{} - if _, ok := o.Misc["Layer3Ipv6InheritedNeighborDiscoveryNeighbor"]; ok { - nestedLayer3Ipv6InheritedNeighborDiscoveryNeighbor.Misc = o.Misc["Layer3Ipv6InheritedNeighborDiscoveryNeighbor"] - } - if oLayer3Ipv6InheritedNeighborDiscoveryNeighbor.HwAddress != nil { - nestedLayer3Ipv6InheritedNeighborDiscoveryNeighbor.HwAddress = oLayer3Ipv6InheritedNeighborDiscoveryNeighbor.HwAddress + if oLayer3Ipv6InheritedNeighborDiscoveryNeighbor.HwAddress != nil { + nestedLayer3Ipv6InheritedNeighborDiscoveryNeighbor.HwAddress = oLayer3Ipv6InheritedNeighborDiscoveryNeighbor.HwAddress } if oLayer3Ipv6InheritedNeighborDiscoveryNeighbor.Name != "" { nestedLayer3Ipv6InheritedNeighborDiscoveryNeighbor.Name = oLayer3Ipv6InheritedNeighborDiscoveryNeighbor.Name @@ -2630,124 +2662,6 @@ func specifyEntry(o *Entry) (any, error) { if o.Layer3.Ipv6.Inherited.NeighborDiscovery.ReachableTime != nil { nestedLayer3.Ipv6.Inherited.NeighborDiscovery.ReachableTime = o.Layer3.Ipv6.Inherited.NeighborDiscovery.ReachableTime } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DadAttempts != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DadAttempts = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DadAttempts - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.EnableDad != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.EnableDad = util.YesNo(o.Layer3.Ipv6.Inherited.NeighborDiscovery.EnableDad, nil) - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.EnableNdpMonitor != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.EnableNdpMonitor = util.YesNo(o.Layer3.Ipv6.Inherited.NeighborDiscovery.EnableNdpMonitor, nil) - } - } - if o.Layer3.Ipv6.Inherited.AssignAddr != nil { - nestedLayer3.Ipv6.Inherited.AssignAddr = []Layer3Ipv6InheritedAssignAddrXml{} - for _, oLayer3Ipv6InheritedAssignAddr := range o.Layer3.Ipv6.Inherited.AssignAddr { - nestedLayer3Ipv6InheritedAssignAddr := Layer3Ipv6InheritedAssignAddrXml{} - if _, ok := o.Misc["Layer3Ipv6InheritedAssignAddr"]; ok { - nestedLayer3Ipv6InheritedAssignAddr.Misc = o.Misc["Layer3Ipv6InheritedAssignAddr"] - } - if oLayer3Ipv6InheritedAssignAddr.Name != "" { - nestedLayer3Ipv6InheritedAssignAddr.Name = oLayer3Ipv6InheritedAssignAddr.Name - } - if oLayer3Ipv6InheritedAssignAddr.Type != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type = &Layer3Ipv6InheritedAssignAddrTypeXml{} - if _, ok := o.Misc["Layer3Ipv6InheritedAssignAddrType"]; ok { - nestedLayer3Ipv6InheritedAssignAddr.Type.Misc = o.Misc["Layer3Ipv6InheritedAssignAddrType"] - } - if oLayer3Ipv6InheritedAssignAddr.Type.Gua != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Gua = &Layer3Ipv6InheritedAssignAddrTypeGuaXml{} - if _, ok := o.Misc["Layer3Ipv6InheritedAssignAddrTypeGua"]; ok { - nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.Misc = o.Misc["Layer3Ipv6InheritedAssignAddrTypeGua"] - } - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.EnableOnInterface != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.EnableOnInterface = util.YesNo(oLayer3Ipv6InheritedAssignAddr.Type.Gua.EnableOnInterface, nil) - } - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PrefixPool != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.PrefixPool = oLayer3Ipv6InheritedAssignAddr.Type.Gua.PrefixPool - } - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType = &Layer3Ipv6InheritedAssignAddrTypeGuaPoolTypeXml{} - if _, ok := o.Misc["Layer3Ipv6InheritedAssignAddrTypeGuaPoolType"]; ok { - nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.Misc = o.Misc["Layer3Ipv6InheritedAssignAddrTypeGuaPoolType"] - } - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.Dynamic != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.Dynamic = &Layer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamicXml{} - if _, ok := o.Misc["Layer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamic"]; ok { - nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.Dynamic.Misc = o.Misc["Layer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamic"] - } - } - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId = &Layer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamicIdXml{} - if _, ok := o.Misc["Layer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamicId"]; ok { - nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId.Misc = o.Misc["Layer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamicId"] - } - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId.Identifier != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId.Identifier = oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId.Identifier - } - } - } - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise = &Layer3Ipv6InheritedAssignAddrTypeGuaAdvertiseXml{} - if _, ok := o.Misc["Layer3Ipv6InheritedAssignAddrTypeGuaAdvertise"]; ok { - nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.Misc = o.Misc["Layer3Ipv6InheritedAssignAddrTypeGuaAdvertise"] - } - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.Enable != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.Enable = util.YesNo(oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.Enable, nil) - } - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.OnlinkFlag != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.OnlinkFlag = util.YesNo(oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.OnlinkFlag, nil) - } - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.AutoConfigFlag != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.AutoConfigFlag = util.YesNo(oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.AutoConfigFlag, nil) - } - } - } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula = &Layer3Ipv6InheritedAssignAddrTypeUlaXml{} - if _, ok := o.Misc["Layer3Ipv6InheritedAssignAddrTypeUla"]; ok { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Misc = o.Misc["Layer3Ipv6InheritedAssignAddrTypeUla"] - } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Prefix != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Prefix = util.YesNo(oLayer3Ipv6InheritedAssignAddr.Type.Ula.Prefix, nil) - } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Anycast != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Anycast = util.YesNo(oLayer3Ipv6InheritedAssignAddr.Type.Ula.Anycast, nil) - } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise = &Layer3Ipv6InheritedAssignAddrTypeUlaAdvertiseXml{} - if _, ok := o.Misc["Layer3Ipv6InheritedAssignAddrTypeUlaAdvertise"]; ok { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.Misc = o.Misc["Layer3Ipv6InheritedAssignAddrTypeUlaAdvertise"] - } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.OnlinkFlag != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.OnlinkFlag = util.YesNo(oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.OnlinkFlag, nil) - } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.AutoConfigFlag != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.AutoConfigFlag = util.YesNo(oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.AutoConfigFlag, nil) - } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.Enable != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.Enable = util.YesNo(oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.Enable, nil) - } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.ValidLifetime != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.ValidLifetime = oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.ValidLifetime - } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.PreferredLifetime != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.PreferredLifetime = oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.PreferredLifetime - } - } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.EnableOnInterface != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.EnableOnInterface = util.YesNo(oLayer3Ipv6InheritedAssignAddr.Type.Ula.EnableOnInterface, nil) - } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Address != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Address = oLayer3Ipv6InheritedAssignAddr.Type.Ula.Address - } - } - } - nestedLayer3.Ipv6.Inherited.AssignAddr = append(nestedLayer3.Ipv6.Inherited.AssignAddr, nestedLayer3Ipv6InheritedAssignAddr) - } - } - if o.Layer3.Ipv6.Inherited.Enable != nil { - nestedLayer3.Ipv6.Inherited.Enable = util.YesNo(o.Layer3.Ipv6.Inherited.Enable, nil) } } if o.Layer3.Ipv6.Address != nil { @@ -2757,27 +2671,6 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["Layer3Ipv6Address"]; ok { nestedLayer3Ipv6Address.Misc = o.Misc["Layer3Ipv6Address"] } - if oLayer3Ipv6Address.Advertise != nil { - nestedLayer3Ipv6Address.Advertise = &Layer3Ipv6AddressAdvertiseXml{} - if _, ok := o.Misc["Layer3Ipv6AddressAdvertise"]; ok { - nestedLayer3Ipv6Address.Advertise.Misc = o.Misc["Layer3Ipv6AddressAdvertise"] - } - if oLayer3Ipv6Address.Advertise.OnlinkFlag != nil { - nestedLayer3Ipv6Address.Advertise.OnlinkFlag = util.YesNo(oLayer3Ipv6Address.Advertise.OnlinkFlag, nil) - } - if oLayer3Ipv6Address.Advertise.AutoConfigFlag != nil { - nestedLayer3Ipv6Address.Advertise.AutoConfigFlag = util.YesNo(oLayer3Ipv6Address.Advertise.AutoConfigFlag, nil) - } - if oLayer3Ipv6Address.Advertise.Enable != nil { - nestedLayer3Ipv6Address.Advertise.Enable = util.YesNo(oLayer3Ipv6Address.Advertise.Enable, nil) - } - if oLayer3Ipv6Address.Advertise.ValidLifetime != nil { - nestedLayer3Ipv6Address.Advertise.ValidLifetime = oLayer3Ipv6Address.Advertise.ValidLifetime - } - if oLayer3Ipv6Address.Advertise.PreferredLifetime != nil { - nestedLayer3Ipv6Address.Advertise.PreferredLifetime = oLayer3Ipv6Address.Advertise.PreferredLifetime - } - } if oLayer3Ipv6Address.Name != "" { nestedLayer3Ipv6Address.Name = oLayer3Ipv6Address.Name } @@ -2796,32 +2689,35 @@ func specifyEntry(o *Entry) (any, error) { nestedLayer3Ipv6Address.Anycast.Misc = o.Misc["Layer3Ipv6AddressAnycast"] } } + if oLayer3Ipv6Address.Advertise != nil { + nestedLayer3Ipv6Address.Advertise = &Layer3Ipv6AddressAdvertiseXml{} + if _, ok := o.Misc["Layer3Ipv6AddressAdvertise"]; ok { + nestedLayer3Ipv6Address.Advertise.Misc = o.Misc["Layer3Ipv6AddressAdvertise"] + } + if oLayer3Ipv6Address.Advertise.Enable != nil { + nestedLayer3Ipv6Address.Advertise.Enable = util.YesNo(oLayer3Ipv6Address.Advertise.Enable, nil) + } + if oLayer3Ipv6Address.Advertise.ValidLifetime != nil { + nestedLayer3Ipv6Address.Advertise.ValidLifetime = oLayer3Ipv6Address.Advertise.ValidLifetime + } + if oLayer3Ipv6Address.Advertise.PreferredLifetime != nil { + nestedLayer3Ipv6Address.Advertise.PreferredLifetime = oLayer3Ipv6Address.Advertise.PreferredLifetime + } + if oLayer3Ipv6Address.Advertise.OnlinkFlag != nil { + nestedLayer3Ipv6Address.Advertise.OnlinkFlag = util.YesNo(oLayer3Ipv6Address.Advertise.OnlinkFlag, nil) + } + if oLayer3Ipv6Address.Advertise.AutoConfigFlag != nil { + nestedLayer3Ipv6Address.Advertise.AutoConfigFlag = util.YesNo(oLayer3Ipv6Address.Advertise.AutoConfigFlag, nil) + } + } nestedLayer3.Ipv6.Address = append(nestedLayer3.Ipv6.Address, nestedLayer3Ipv6Address) } } if o.Layer3.Ipv6.Enabled != nil { nestedLayer3.Ipv6.Enabled = util.YesNo(o.Layer3.Ipv6.Enabled, nil) } - } - if o.Layer3.Lldp != nil { - nestedLayer3.Lldp = &Layer3LldpXml{} - if _, ok := o.Misc["Layer3Lldp"]; ok { - nestedLayer3.Lldp.Misc = o.Misc["Layer3Lldp"] - } - if o.Layer3.Lldp.HighAvailability != nil { - nestedLayer3.Lldp.HighAvailability = &Layer3LldpHighAvailabilityXml{} - if _, ok := o.Misc["Layer3LldpHighAvailability"]; ok { - nestedLayer3.Lldp.HighAvailability.Misc = o.Misc["Layer3LldpHighAvailability"] - } - if o.Layer3.Lldp.HighAvailability.PassivePreNegotiation != nil { - nestedLayer3.Lldp.HighAvailability.PassivePreNegotiation = util.YesNo(o.Layer3.Lldp.HighAvailability.PassivePreNegotiation, nil) - } - } - if o.Layer3.Lldp.Profile != nil { - nestedLayer3.Lldp.Profile = o.Layer3.Lldp.Profile - } - if o.Layer3.Lldp.Enable != nil { - nestedLayer3.Lldp.Enable = util.YesNo(o.Layer3.Lldp.Enable, nil) + if o.Layer3.Ipv6.InterfaceId != nil { + nestedLayer3.Ipv6.InterfaceId = o.Layer3.Ipv6.InterfaceId } } if o.Layer3.SdwanLinkSettings != nil { @@ -2829,12 +2725,6 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["Layer3SdwanLinkSettings"]; ok { nestedLayer3.SdwanLinkSettings.Misc = o.Misc["Layer3SdwanLinkSettings"] } - if o.Layer3.SdwanLinkSettings.Enable != nil { - nestedLayer3.SdwanLinkSettings.Enable = util.YesNo(o.Layer3.SdwanLinkSettings.Enable, nil) - } - if o.Layer3.SdwanLinkSettings.SdwanInterfaceProfile != nil { - nestedLayer3.SdwanLinkSettings.SdwanInterfaceProfile = o.Layer3.SdwanLinkSettings.SdwanInterfaceProfile - } if o.Layer3.SdwanLinkSettings.UpstreamNat != nil { nestedLayer3.SdwanLinkSettings.UpstreamNat = &Layer3SdwanLinkSettingsUpstreamNatXml{} if _, ok := o.Misc["Layer3SdwanLinkSettingsUpstreamNat"]; ok { @@ -2862,30 +2752,140 @@ func specifyEntry(o *Entry) (any, error) { } } } + if o.Layer3.SdwanLinkSettings.Enable != nil { + nestedLayer3.SdwanLinkSettings.Enable = util.YesNo(o.Layer3.SdwanLinkSettings.Enable, nil) + } + if o.Layer3.SdwanLinkSettings.SdwanInterfaceProfile != nil { + nestedLayer3.SdwanLinkSettings.SdwanInterfaceProfile = o.Layer3.SdwanLinkSettings.SdwanInterfaceProfile + } } - if o.Layer3.UntaggedSubInterface != nil { - nestedLayer3.UntaggedSubInterface = util.YesNo(o.Layer3.UntaggedSubInterface, nil) - } - } - entry.Layer3 = nestedLayer3 - - var nestedLogCard *LogCardXml - if o.LogCard != nil { - nestedLogCard = &LogCardXml{} - if _, ok := o.Misc["LogCard"]; ok { - nestedLogCard.Misc = o.Misc["LogCard"] - } - if o.LogCard.DefaultGateway != nil { - nestedLogCard.DefaultGateway = o.LogCard.DefaultGateway - } - if o.LogCard.IpAddress != nil { - nestedLogCard.IpAddress = o.LogCard.IpAddress - } - if o.LogCard.Ipv6Address != nil { - nestedLogCard.Ipv6Address = o.LogCard.Ipv6Address - } - if o.LogCard.Ipv6DefaultGateway != nil { - nestedLogCard.Ipv6DefaultGateway = o.LogCard.Ipv6DefaultGateway + if o.Layer3.Arp != nil { + nestedLayer3.Arp = []Layer3ArpXml{} + for _, oLayer3Arp := range o.Layer3.Arp { + nestedLayer3Arp := Layer3ArpXml{} + if _, ok := o.Misc["Layer3Arp"]; ok { + nestedLayer3Arp.Misc = o.Misc["Layer3Arp"] + } + if oLayer3Arp.Name != "" { + nestedLayer3Arp.Name = oLayer3Arp.Name + } + if oLayer3Arp.HwAddress != nil { + nestedLayer3Arp.HwAddress = oLayer3Arp.HwAddress + } + nestedLayer3.Arp = append(nestedLayer3.Arp, nestedLayer3Arp) + } + } + if o.Layer3.DdnsConfig != nil { + nestedLayer3.DdnsConfig = &Layer3DdnsConfigXml{} + if _, ok := o.Misc["Layer3DdnsConfig"]; ok { + nestedLayer3.DdnsConfig.Misc = o.Misc["Layer3DdnsConfig"] + } + if o.Layer3.DdnsConfig.DdnsCertProfile != nil { + nestedLayer3.DdnsConfig.DdnsCertProfile = o.Layer3.DdnsConfig.DdnsCertProfile + } + if o.Layer3.DdnsConfig.DdnsEnabled != nil { + nestedLayer3.DdnsConfig.DdnsEnabled = util.YesNo(o.Layer3.DdnsConfig.DdnsEnabled, nil) + } + if o.Layer3.DdnsConfig.DdnsHostname != nil { + nestedLayer3.DdnsConfig.DdnsHostname = o.Layer3.DdnsConfig.DdnsHostname + } + if o.Layer3.DdnsConfig.DdnsIp != nil { + nestedLayer3.DdnsConfig.DdnsIp = util.StrToMem(o.Layer3.DdnsConfig.DdnsIp) + } + if o.Layer3.DdnsConfig.DdnsIpv6 != nil { + nestedLayer3.DdnsConfig.DdnsIpv6 = util.StrToMem(o.Layer3.DdnsConfig.DdnsIpv6) + } + if o.Layer3.DdnsConfig.DdnsUpdateInterval != nil { + nestedLayer3.DdnsConfig.DdnsUpdateInterval = o.Layer3.DdnsConfig.DdnsUpdateInterval + } + if o.Layer3.DdnsConfig.DdnsVendor != nil { + nestedLayer3.DdnsConfig.DdnsVendor = o.Layer3.DdnsConfig.DdnsVendor + } + if o.Layer3.DdnsConfig.DdnsVendorConfig != nil { + nestedLayer3.DdnsConfig.DdnsVendorConfig = []Layer3DdnsConfigDdnsVendorConfigXml{} + for _, oLayer3DdnsConfigDdnsVendorConfig := range o.Layer3.DdnsConfig.DdnsVendorConfig { + nestedLayer3DdnsConfigDdnsVendorConfig := Layer3DdnsConfigDdnsVendorConfigXml{} + if _, ok := o.Misc["Layer3DdnsConfigDdnsVendorConfig"]; ok { + nestedLayer3DdnsConfigDdnsVendorConfig.Misc = o.Misc["Layer3DdnsConfigDdnsVendorConfig"] + } + if oLayer3DdnsConfigDdnsVendorConfig.Value != nil { + nestedLayer3DdnsConfigDdnsVendorConfig.Value = oLayer3DdnsConfigDdnsVendorConfig.Value + } + if oLayer3DdnsConfigDdnsVendorConfig.Name != "" { + nestedLayer3DdnsConfigDdnsVendorConfig.Name = oLayer3DdnsConfigDdnsVendorConfig.Name + } + nestedLayer3.DdnsConfig.DdnsVendorConfig = append(nestedLayer3.DdnsConfig.DdnsVendorConfig, nestedLayer3DdnsConfigDdnsVendorConfig) + } + } + } + if o.Layer3.Pppoe != nil { + nestedLayer3.Pppoe = &Layer3PppoeXml{} + if _, ok := o.Misc["Layer3Pppoe"]; ok { + nestedLayer3.Pppoe.Misc = o.Misc["Layer3Pppoe"] + } + if o.Layer3.Pppoe.Username != nil { + nestedLayer3.Pppoe.Username = o.Layer3.Pppoe.Username + } + if o.Layer3.Pppoe.Passive != nil { + nestedLayer3.Pppoe.Passive = &Layer3PppoePassiveXml{} + if _, ok := o.Misc["Layer3PppoePassive"]; ok { + nestedLayer3.Pppoe.Passive.Misc = o.Misc["Layer3PppoePassive"] + } + if o.Layer3.Pppoe.Passive.Enable != nil { + nestedLayer3.Pppoe.Passive.Enable = util.YesNo(o.Layer3.Pppoe.Passive.Enable, nil) + } + } + if o.Layer3.Pppoe.Password != nil { + nestedLayer3.Pppoe.Password = o.Layer3.Pppoe.Password + } + if o.Layer3.Pppoe.StaticAddress != nil { + nestedLayer3.Pppoe.StaticAddress = &Layer3PppoeStaticAddressXml{} + if _, ok := o.Misc["Layer3PppoeStaticAddress"]; ok { + nestedLayer3.Pppoe.StaticAddress.Misc = o.Misc["Layer3PppoeStaticAddress"] + } + if o.Layer3.Pppoe.StaticAddress.Ip != nil { + nestedLayer3.Pppoe.StaticAddress.Ip = o.Layer3.Pppoe.StaticAddress.Ip + } + } + if o.Layer3.Pppoe.DefaultRouteMetric != nil { + nestedLayer3.Pppoe.DefaultRouteMetric = o.Layer3.Pppoe.DefaultRouteMetric + } + if o.Layer3.Pppoe.Enable != nil { + nestedLayer3.Pppoe.Enable = util.YesNo(o.Layer3.Pppoe.Enable, nil) + } + if o.Layer3.Pppoe.Service != nil { + nestedLayer3.Pppoe.Service = o.Layer3.Pppoe.Service + } + if o.Layer3.Pppoe.AccessConcentrator != nil { + nestedLayer3.Pppoe.AccessConcentrator = o.Layer3.Pppoe.AccessConcentrator + } + if o.Layer3.Pppoe.Authentication != nil { + nestedLayer3.Pppoe.Authentication = o.Layer3.Pppoe.Authentication + } + if o.Layer3.Pppoe.CreateDefaultRoute != nil { + nestedLayer3.Pppoe.CreateDefaultRoute = util.YesNo(o.Layer3.Pppoe.CreateDefaultRoute, nil) + } + } + } + entry.Layer3 = nestedLayer3 + + var nestedLogCard *LogCardXml + if o.LogCard != nil { + nestedLogCard = &LogCardXml{} + if _, ok := o.Misc["LogCard"]; ok { + nestedLogCard.Misc = o.Misc["LogCard"] + } + if o.LogCard.DefaultGateway != nil { + nestedLogCard.DefaultGateway = o.LogCard.DefaultGateway + } + if o.LogCard.IpAddress != nil { + nestedLogCard.IpAddress = o.LogCard.IpAddress + } + if o.LogCard.Ipv6Address != nil { + nestedLogCard.Ipv6Address = o.LogCard.Ipv6Address + } + if o.LogCard.Ipv6DefaultGateway != nil { + nestedLogCard.Ipv6DefaultGateway = o.LogCard.Ipv6DefaultGateway } if o.LogCard.Netmask != nil { nestedLogCard.Netmask = o.LogCard.Netmask @@ -2911,6 +2911,9 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["VirtualWire"]; ok { nestedVirtualWire.Misc = o.Misc["VirtualWire"] } + if o.VirtualWire.NetflowProfile != nil { + nestedVirtualWire.NetflowProfile = o.VirtualWire.NetflowProfile + } if o.VirtualWire.Lacp != nil { nestedVirtualWire.Lacp = &VirtualWireLacpXml{} if _, ok := o.Misc["VirtualWireLacp"]; ok { @@ -2947,9 +2950,6 @@ func specifyEntry(o *Entry) (any, error) { nestedVirtualWire.Lldp.Profile = o.VirtualWire.Lldp.Profile } } - if o.VirtualWire.NetflowProfile != nil { - nestedVirtualWire.NetflowProfile = o.VirtualWire.NetflowProfile - } } entry.VirtualWire = nestedVirtualWire @@ -3017,6 +3017,9 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { if _, ok := o.Misc["Layer2"]; ok { nestedLayer2.Misc = o.Misc["Layer2"] } + if o.Layer2.NetflowProfile != nil { + nestedLayer2.NetflowProfile = o.Layer2.NetflowProfile + } if o.Layer2.Lldp != nil { nestedLayer2.Lldp = &Layer2LldpXml_11_0_2{} if _, ok := o.Misc["Layer2Lldp"]; ok { @@ -3038,9 +3041,6 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { nestedLayer2.Lldp.Profile = o.Layer2.Lldp.Profile } } - if o.Layer2.NetflowProfile != nil { - nestedLayer2.NetflowProfile = o.Layer2.NetflowProfile - } } entry.Layer2 = nestedLayer2 @@ -3050,115 +3050,6 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { if _, ok := o.Misc["Layer3"]; ok { nestedLayer3.Misc = o.Misc["Layer3"] } - if o.Layer3.DfIgnore != nil { - nestedLayer3.DfIgnore = util.YesNo(o.Layer3.DfIgnore, nil) - } - if o.Layer3.Pppoe != nil { - nestedLayer3.Pppoe = &Layer3PppoeXml_11_0_2{} - if _, ok := o.Misc["Layer3Pppoe"]; ok { - nestedLayer3.Pppoe.Misc = o.Misc["Layer3Pppoe"] - } - if o.Layer3.Pppoe.StaticAddress != nil { - nestedLayer3.Pppoe.StaticAddress = &Layer3PppoeStaticAddressXml_11_0_2{} - if _, ok := o.Misc["Layer3PppoeStaticAddress"]; ok { - nestedLayer3.Pppoe.StaticAddress.Misc = o.Misc["Layer3PppoeStaticAddress"] - } - if o.Layer3.Pppoe.StaticAddress.Ip != nil { - nestedLayer3.Pppoe.StaticAddress.Ip = o.Layer3.Pppoe.StaticAddress.Ip - } - } - if o.Layer3.Pppoe.AccessConcentrator != nil { - nestedLayer3.Pppoe.AccessConcentrator = o.Layer3.Pppoe.AccessConcentrator - } - if o.Layer3.Pppoe.CreateDefaultRoute != nil { - nestedLayer3.Pppoe.CreateDefaultRoute = util.YesNo(o.Layer3.Pppoe.CreateDefaultRoute, nil) - } - if o.Layer3.Pppoe.DefaultRouteMetric != nil { - nestedLayer3.Pppoe.DefaultRouteMetric = o.Layer3.Pppoe.DefaultRouteMetric - } - if o.Layer3.Pppoe.Enable != nil { - nestedLayer3.Pppoe.Enable = util.YesNo(o.Layer3.Pppoe.Enable, nil) - } - if o.Layer3.Pppoe.Password != nil { - nestedLayer3.Pppoe.Password = o.Layer3.Pppoe.Password - } - if o.Layer3.Pppoe.Authentication != nil { - nestedLayer3.Pppoe.Authentication = o.Layer3.Pppoe.Authentication - } - if o.Layer3.Pppoe.Passive != nil { - nestedLayer3.Pppoe.Passive = &Layer3PppoePassiveXml_11_0_2{} - if _, ok := o.Misc["Layer3PppoePassive"]; ok { - nestedLayer3.Pppoe.Passive.Misc = o.Misc["Layer3PppoePassive"] - } - if o.Layer3.Pppoe.Passive.Enable != nil { - nestedLayer3.Pppoe.Passive.Enable = util.YesNo(o.Layer3.Pppoe.Passive.Enable, nil) - } - } - if o.Layer3.Pppoe.Service != nil { - nestedLayer3.Pppoe.Service = o.Layer3.Pppoe.Service - } - if o.Layer3.Pppoe.Username != nil { - nestedLayer3.Pppoe.Username = o.Layer3.Pppoe.Username - } - } - if o.Layer3.Bonjour != nil { - nestedLayer3.Bonjour = &Layer3BonjourXml_11_0_2{} - if _, ok := o.Misc["Layer3Bonjour"]; ok { - nestedLayer3.Bonjour.Misc = o.Misc["Layer3Bonjour"] - } - if o.Layer3.Bonjour.TtlCheck != nil { - nestedLayer3.Bonjour.TtlCheck = util.YesNo(o.Layer3.Bonjour.TtlCheck, nil) - } - if o.Layer3.Bonjour.Enable != nil { - nestedLayer3.Bonjour.Enable = util.YesNo(o.Layer3.Bonjour.Enable, nil) - } - if o.Layer3.Bonjour.GroupId != nil { - nestedLayer3.Bonjour.GroupId = o.Layer3.Bonjour.GroupId - } - } - if o.Layer3.DdnsConfig != nil { - nestedLayer3.DdnsConfig = &Layer3DdnsConfigXml_11_0_2{} - if _, ok := o.Misc["Layer3DdnsConfig"]; ok { - nestedLayer3.DdnsConfig.Misc = o.Misc["Layer3DdnsConfig"] - } - if o.Layer3.DdnsConfig.DdnsHostname != nil { - nestedLayer3.DdnsConfig.DdnsHostname = o.Layer3.DdnsConfig.DdnsHostname - } - if o.Layer3.DdnsConfig.DdnsIp != nil { - nestedLayer3.DdnsConfig.DdnsIp = util.StrToMem(o.Layer3.DdnsConfig.DdnsIp) - } - if o.Layer3.DdnsConfig.DdnsIpv6 != nil { - nestedLayer3.DdnsConfig.DdnsIpv6 = util.StrToMem(o.Layer3.DdnsConfig.DdnsIpv6) - } - if o.Layer3.DdnsConfig.DdnsUpdateInterval != nil { - nestedLayer3.DdnsConfig.DdnsUpdateInterval = o.Layer3.DdnsConfig.DdnsUpdateInterval - } - if o.Layer3.DdnsConfig.DdnsVendor != nil { - nestedLayer3.DdnsConfig.DdnsVendor = o.Layer3.DdnsConfig.DdnsVendor - } - if o.Layer3.DdnsConfig.DdnsVendorConfig != nil { - nestedLayer3.DdnsConfig.DdnsVendorConfig = []Layer3DdnsConfigDdnsVendorConfigXml_11_0_2{} - for _, oLayer3DdnsConfigDdnsVendorConfig := range o.Layer3.DdnsConfig.DdnsVendorConfig { - nestedLayer3DdnsConfigDdnsVendorConfig := Layer3DdnsConfigDdnsVendorConfigXml_11_0_2{} - if _, ok := o.Misc["Layer3DdnsConfigDdnsVendorConfig"]; ok { - nestedLayer3DdnsConfigDdnsVendorConfig.Misc = o.Misc["Layer3DdnsConfigDdnsVendorConfig"] - } - if oLayer3DdnsConfigDdnsVendorConfig.Value != nil { - nestedLayer3DdnsConfigDdnsVendorConfig.Value = oLayer3DdnsConfigDdnsVendorConfig.Value - } - if oLayer3DdnsConfigDdnsVendorConfig.Name != "" { - nestedLayer3DdnsConfigDdnsVendorConfig.Name = oLayer3DdnsConfigDdnsVendorConfig.Name - } - nestedLayer3.DdnsConfig.DdnsVendorConfig = append(nestedLayer3.DdnsConfig.DdnsVendorConfig, nestedLayer3DdnsConfigDdnsVendorConfig) - } - } - if o.Layer3.DdnsConfig.DdnsCertProfile != nil { - nestedLayer3.DdnsConfig.DdnsCertProfile = o.Layer3.DdnsConfig.DdnsCertProfile - } - if o.Layer3.DdnsConfig.DdnsEnabled != nil { - nestedLayer3.DdnsConfig.DdnsEnabled = util.YesNo(o.Layer3.DdnsConfig.DdnsEnabled, nil) - } - } if o.Layer3.NdpProxy != nil { nestedLayer3.NdpProxy = &Layer3NdpProxyXml_11_0_2{} if _, ok := o.Misc["Layer3NdpProxy"]; ok { @@ -3184,170 +3075,46 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { nestedLayer3.NdpProxy.Enabled = util.YesNo(o.Layer3.NdpProxy.Enabled, nil) } } - if o.Layer3.NetflowProfile != nil { - nestedLayer3.NetflowProfile = o.Layer3.NetflowProfile - } - if o.Layer3.ClusterInterconnect != nil { - nestedLayer3.ClusterInterconnect = util.YesNo(o.Layer3.ClusterInterconnect, nil) + if o.Layer3.UntaggedSubInterface != nil { + nestedLayer3.UntaggedSubInterface = util.YesNo(o.Layer3.UntaggedSubInterface, nil) } - if o.Layer3.DecryptForward != nil { - nestedLayer3.DecryptForward = util.YesNo(o.Layer3.DecryptForward, nil) + if o.Layer3.InterfaceManagementProfile != nil { + nestedLayer3.InterfaceManagementProfile = o.Layer3.InterfaceManagementProfile } - if o.Layer3.DhcpClient != nil { - nestedLayer3.DhcpClient = &Layer3DhcpClientXml_11_0_2{} - if _, ok := o.Misc["Layer3DhcpClient"]; ok { - nestedLayer3.DhcpClient.Misc = o.Misc["Layer3DhcpClient"] + if o.Layer3.Lldp != nil { + nestedLayer3.Lldp = &Layer3LldpXml_11_0_2{} + if _, ok := o.Misc["Layer3Lldp"]; ok { + nestedLayer3.Lldp.Misc = o.Misc["Layer3Lldp"] } - if o.Layer3.DhcpClient.CreateDefaultRoute != nil { - nestedLayer3.DhcpClient.CreateDefaultRoute = util.YesNo(o.Layer3.DhcpClient.CreateDefaultRoute, nil) + if o.Layer3.Lldp.Profile != nil { + nestedLayer3.Lldp.Profile = o.Layer3.Lldp.Profile } - if o.Layer3.DhcpClient.DefaultRouteMetric != nil { - nestedLayer3.DhcpClient.DefaultRouteMetric = o.Layer3.DhcpClient.DefaultRouteMetric - } - if o.Layer3.DhcpClient.Enable != nil { - nestedLayer3.DhcpClient.Enable = util.YesNo(o.Layer3.DhcpClient.Enable, nil) + if o.Layer3.Lldp.Enable != nil { + nestedLayer3.Lldp.Enable = util.YesNo(o.Layer3.Lldp.Enable, nil) } - if o.Layer3.DhcpClient.SendHostname != nil { - nestedLayer3.DhcpClient.SendHostname = &Layer3DhcpClientSendHostnameXml_11_0_2{} - if _, ok := o.Misc["Layer3DhcpClientSendHostname"]; ok { - nestedLayer3.DhcpClient.SendHostname.Misc = o.Misc["Layer3DhcpClientSendHostname"] - } - if o.Layer3.DhcpClient.SendHostname.Enable != nil { - nestedLayer3.DhcpClient.SendHostname.Enable = util.YesNo(o.Layer3.DhcpClient.SendHostname.Enable, nil) + if o.Layer3.Lldp.HighAvailability != nil { + nestedLayer3.Lldp.HighAvailability = &Layer3LldpHighAvailabilityXml_11_0_2{} + if _, ok := o.Misc["Layer3LldpHighAvailability"]; ok { + nestedLayer3.Lldp.HighAvailability.Misc = o.Misc["Layer3LldpHighAvailability"] } - if o.Layer3.DhcpClient.SendHostname.Hostname != nil { - nestedLayer3.DhcpClient.SendHostname.Hostname = o.Layer3.DhcpClient.SendHostname.Hostname + if o.Layer3.Lldp.HighAvailability.PassivePreNegotiation != nil { + nestedLayer3.Lldp.HighAvailability.PassivePreNegotiation = util.YesNo(o.Layer3.Lldp.HighAvailability.PassivePreNegotiation, nil) } } } if o.Layer3.Mtu != nil { nestedLayer3.Mtu = o.Layer3.Mtu } - if o.Layer3.TrafficInterconnect != nil { - nestedLayer3.TrafficInterconnect = util.YesNo(o.Layer3.TrafficInterconnect, nil) - } - if o.Layer3.Arp != nil { - nestedLayer3.Arp = []Layer3ArpXml_11_0_2{} - for _, oLayer3Arp := range o.Layer3.Arp { - nestedLayer3Arp := Layer3ArpXml_11_0_2{} - if _, ok := o.Misc["Layer3Arp"]; ok { - nestedLayer3Arp.Misc = o.Misc["Layer3Arp"] - } - if oLayer3Arp.HwAddress != nil { - nestedLayer3Arp.HwAddress = oLayer3Arp.HwAddress - } - if oLayer3Arp.Name != "" { - nestedLayer3Arp.Name = oLayer3Arp.Name - } - nestedLayer3.Arp = append(nestedLayer3.Arp, nestedLayer3Arp) - } - } - if o.Layer3.Ip != nil { - nestedLayer3.Ip = []Layer3IpXml_11_0_2{} - for _, oLayer3Ip := range o.Layer3.Ip { - nestedLayer3Ip := Layer3IpXml_11_0_2{} - if _, ok := o.Misc["Layer3Ip"]; ok { - nestedLayer3Ip.Misc = o.Misc["Layer3Ip"] - } - if oLayer3Ip.SdwanGateway != nil { - nestedLayer3Ip.SdwanGateway = oLayer3Ip.SdwanGateway - } - if oLayer3Ip.Name != "" { - nestedLayer3Ip.Name = oLayer3Ip.Name - } - nestedLayer3.Ip = append(nestedLayer3.Ip, nestedLayer3Ip) - } - } if o.Layer3.Ipv6 != nil { nestedLayer3.Ipv6 = &Layer3Ipv6Xml_11_0_2{} if _, ok := o.Misc["Layer3Ipv6"]; ok { nestedLayer3.Ipv6.Misc = o.Misc["Layer3Ipv6"] } - if o.Layer3.Ipv6.Address != nil { - nestedLayer3.Ipv6.Address = []Layer3Ipv6AddressXml_11_0_2{} - for _, oLayer3Ipv6Address := range o.Layer3.Ipv6.Address { - nestedLayer3Ipv6Address := Layer3Ipv6AddressXml_11_0_2{} - if _, ok := o.Misc["Layer3Ipv6Address"]; ok { - nestedLayer3Ipv6Address.Misc = o.Misc["Layer3Ipv6Address"] - } - if oLayer3Ipv6Address.Name != "" { - nestedLayer3Ipv6Address.Name = oLayer3Ipv6Address.Name - } - if oLayer3Ipv6Address.EnableOnInterface != nil { - nestedLayer3Ipv6Address.EnableOnInterface = util.YesNo(oLayer3Ipv6Address.EnableOnInterface, nil) - } - if oLayer3Ipv6Address.Prefix != nil { - nestedLayer3Ipv6Address.Prefix = &Layer3Ipv6AddressPrefixXml_11_0_2{} - if _, ok := o.Misc["Layer3Ipv6AddressPrefix"]; ok { - nestedLayer3Ipv6Address.Prefix.Misc = o.Misc["Layer3Ipv6AddressPrefix"] - } - } - if oLayer3Ipv6Address.Anycast != nil { - nestedLayer3Ipv6Address.Anycast = &Layer3Ipv6AddressAnycastXml_11_0_2{} - if _, ok := o.Misc["Layer3Ipv6AddressAnycast"]; ok { - nestedLayer3Ipv6Address.Anycast.Misc = o.Misc["Layer3Ipv6AddressAnycast"] - } - } - if oLayer3Ipv6Address.Advertise != nil { - nestedLayer3Ipv6Address.Advertise = &Layer3Ipv6AddressAdvertiseXml_11_0_2{} - if _, ok := o.Misc["Layer3Ipv6AddressAdvertise"]; ok { - nestedLayer3Ipv6Address.Advertise.Misc = o.Misc["Layer3Ipv6AddressAdvertise"] - } - if oLayer3Ipv6Address.Advertise.Enable != nil { - nestedLayer3Ipv6Address.Advertise.Enable = util.YesNo(oLayer3Ipv6Address.Advertise.Enable, nil) - } - if oLayer3Ipv6Address.Advertise.ValidLifetime != nil { - nestedLayer3Ipv6Address.Advertise.ValidLifetime = oLayer3Ipv6Address.Advertise.ValidLifetime - } - if oLayer3Ipv6Address.Advertise.PreferredLifetime != nil { - nestedLayer3Ipv6Address.Advertise.PreferredLifetime = oLayer3Ipv6Address.Advertise.PreferredLifetime - } - if oLayer3Ipv6Address.Advertise.OnlinkFlag != nil { - nestedLayer3Ipv6Address.Advertise.OnlinkFlag = util.YesNo(oLayer3Ipv6Address.Advertise.OnlinkFlag, nil) - } - if oLayer3Ipv6Address.Advertise.AutoConfigFlag != nil { - nestedLayer3Ipv6Address.Advertise.AutoConfigFlag = util.YesNo(oLayer3Ipv6Address.Advertise.AutoConfigFlag, nil) - } - } - nestedLayer3.Ipv6.Address = append(nestedLayer3.Ipv6.Address, nestedLayer3Ipv6Address) - } - } - if o.Layer3.Ipv6.Enabled != nil { - nestedLayer3.Ipv6.Enabled = util.YesNo(o.Layer3.Ipv6.Enabled, nil) - } - if o.Layer3.Ipv6.InterfaceId != nil { - nestedLayer3.Ipv6.InterfaceId = o.Layer3.Ipv6.InterfaceId - } if o.Layer3.Ipv6.NeighborDiscovery != nil { nestedLayer3.Ipv6.NeighborDiscovery = &Layer3Ipv6NeighborDiscoveryXml_11_0_2{} if _, ok := o.Misc["Layer3Ipv6NeighborDiscovery"]; ok { nestedLayer3.Ipv6.NeighborDiscovery.Misc = o.Misc["Layer3Ipv6NeighborDiscovery"] } - if o.Layer3.Ipv6.NeighborDiscovery.EnableDad != nil { - nestedLayer3.Ipv6.NeighborDiscovery.EnableDad = util.YesNo(o.Layer3.Ipv6.NeighborDiscovery.EnableDad, nil) - } - if o.Layer3.Ipv6.NeighborDiscovery.EnableNdpMonitor != nil { - nestedLayer3.Ipv6.NeighborDiscovery.EnableNdpMonitor = util.YesNo(o.Layer3.Ipv6.NeighborDiscovery.EnableNdpMonitor, nil) - } - if o.Layer3.Ipv6.NeighborDiscovery.Neighbor != nil { - nestedLayer3.Ipv6.NeighborDiscovery.Neighbor = []Layer3Ipv6NeighborDiscoveryNeighborXml_11_0_2{} - for _, oLayer3Ipv6NeighborDiscoveryNeighbor := range o.Layer3.Ipv6.NeighborDiscovery.Neighbor { - nestedLayer3Ipv6NeighborDiscoveryNeighbor := Layer3Ipv6NeighborDiscoveryNeighborXml_11_0_2{} - if _, ok := o.Misc["Layer3Ipv6NeighborDiscoveryNeighbor"]; ok { - nestedLayer3Ipv6NeighborDiscoveryNeighbor.Misc = o.Misc["Layer3Ipv6NeighborDiscoveryNeighbor"] - } - if oLayer3Ipv6NeighborDiscoveryNeighbor.HwAddress != nil { - nestedLayer3Ipv6NeighborDiscoveryNeighbor.HwAddress = oLayer3Ipv6NeighborDiscoveryNeighbor.HwAddress - } - if oLayer3Ipv6NeighborDiscoveryNeighbor.Name != "" { - nestedLayer3Ipv6NeighborDiscoveryNeighbor.Name = oLayer3Ipv6NeighborDiscoveryNeighbor.Name - } - nestedLayer3.Ipv6.NeighborDiscovery.Neighbor = append(nestedLayer3.Ipv6.NeighborDiscovery.Neighbor, nestedLayer3Ipv6NeighborDiscoveryNeighbor) - } - } - if o.Layer3.Ipv6.NeighborDiscovery.NsInterval != nil { - nestedLayer3.Ipv6.NeighborDiscovery.NsInterval = o.Layer3.Ipv6.NeighborDiscovery.NsInterval - } if o.Layer3.Ipv6.NeighborDiscovery.ReachableTime != nil { nestedLayer3.Ipv6.NeighborDiscovery.ReachableTime = o.Layer3.Ipv6.NeighborDiscovery.ReachableTime } @@ -3356,6 +3123,30 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { if _, ok := o.Misc["Layer3Ipv6NeighborDiscoveryRouterAdvertisement"]; ok { nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Misc = o.Misc["Layer3Ipv6NeighborDiscoveryRouterAdvertisement"] } + if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer != nil { + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer + } + if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.RouterPreference != nil { + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.RouterPreference = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.RouterPreference + } + if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck != nil { + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck = util.YesNo(o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck, nil) + } + if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.HopLimit != nil { + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.HopLimit = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.HopLimit + } + if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.LinkMtu != nil { + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.LinkMtu = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.LinkMtu + } + if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.ManagedFlag != nil { + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.ManagedFlag = util.YesNo(o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.ManagedFlag, nil) + } + if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MaxInterval != nil { + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MaxInterval = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MaxInterval + } + if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MinInterval != nil { + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MinInterval = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MinInterval + } if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.OtherFlag != nil { nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.OtherFlag = util.YesNo(o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.OtherFlag, nil) } @@ -3403,40 +3194,41 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { } } } - if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck != nil { - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck = util.YesNo(o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck, nil) - } - if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.HopLimit != nil { - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.HopLimit = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.HopLimit - } - if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Lifetime != nil { - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Lifetime = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Lifetime - } - if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.LinkMtu != nil { - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.LinkMtu = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.LinkMtu - } - if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MaxInterval != nil { - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MaxInterval = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MaxInterval - } - if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer != nil { - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer - } - if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.RouterPreference != nil { - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.RouterPreference = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.RouterPreference - } if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Enable != nil { nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Enable = util.YesNo(o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Enable, nil) } - if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.ManagedFlag != nil { - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.ManagedFlag = util.YesNo(o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.ManagedFlag, nil) - } - if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MinInterval != nil { - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MinInterval = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MinInterval + if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Lifetime != nil { + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Lifetime = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Lifetime } } if o.Layer3.Ipv6.NeighborDiscovery.DadAttempts != nil { nestedLayer3.Ipv6.NeighborDiscovery.DadAttempts = o.Layer3.Ipv6.NeighborDiscovery.DadAttempts } + if o.Layer3.Ipv6.NeighborDiscovery.EnableDad != nil { + nestedLayer3.Ipv6.NeighborDiscovery.EnableDad = util.YesNo(o.Layer3.Ipv6.NeighborDiscovery.EnableDad, nil) + } + if o.Layer3.Ipv6.NeighborDiscovery.EnableNdpMonitor != nil { + nestedLayer3.Ipv6.NeighborDiscovery.EnableNdpMonitor = util.YesNo(o.Layer3.Ipv6.NeighborDiscovery.EnableNdpMonitor, nil) + } + if o.Layer3.Ipv6.NeighborDiscovery.Neighbor != nil { + nestedLayer3.Ipv6.NeighborDiscovery.Neighbor = []Layer3Ipv6NeighborDiscoveryNeighborXml_11_0_2{} + for _, oLayer3Ipv6NeighborDiscoveryNeighbor := range o.Layer3.Ipv6.NeighborDiscovery.Neighbor { + nestedLayer3Ipv6NeighborDiscoveryNeighbor := Layer3Ipv6NeighborDiscoveryNeighborXml_11_0_2{} + if _, ok := o.Misc["Layer3Ipv6NeighborDiscoveryNeighbor"]; ok { + nestedLayer3Ipv6NeighborDiscoveryNeighbor.Misc = o.Misc["Layer3Ipv6NeighborDiscoveryNeighbor"] + } + if oLayer3Ipv6NeighborDiscoveryNeighbor.HwAddress != nil { + nestedLayer3Ipv6NeighborDiscoveryNeighbor.HwAddress = oLayer3Ipv6NeighborDiscoveryNeighbor.HwAddress + } + if oLayer3Ipv6NeighborDiscoveryNeighbor.Name != "" { + nestedLayer3Ipv6NeighborDiscoveryNeighbor.Name = oLayer3Ipv6NeighborDiscoveryNeighbor.Name + } + nestedLayer3.Ipv6.NeighborDiscovery.Neighbor = append(nestedLayer3.Ipv6.NeighborDiscovery.Neighbor, nestedLayer3Ipv6NeighborDiscoveryNeighbor) + } + } + if o.Layer3.Ipv6.NeighborDiscovery.NsInterval != nil { + nestedLayer3.Ipv6.NeighborDiscovery.NsInterval = o.Layer3.Ipv6.NeighborDiscovery.NsInterval + } } if o.Layer3.Ipv6.DhcpClient != nil { nestedLayer3.Ipv6.DhcpClient = &Layer3Ipv6DhcpClientXml_11_0_2{} @@ -3464,15 +3256,15 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { if _, ok := o.Misc["Layer3Ipv6DhcpClientPrefixDelegationEnableYes"]; ok { nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.Misc = o.Misc["Layer3Ipv6DhcpClientPrefixDelegationEnableYes"] } + if o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PfxPoolName != nil { + nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PfxPoolName = o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PfxPoolName + } if o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLen != nil { nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLen = o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLen } if o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLenHint != nil { nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLenHint = util.YesNo(o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLenHint, nil) } - if o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PfxPoolName != nil { - nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PfxPoolName = o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PfxPoolName - } } } } @@ -3481,20 +3273,17 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { if _, ok := o.Misc["Layer3Ipv6DhcpClientV6Options"]; ok { nestedLayer3.Ipv6.DhcpClient.V6Options.Misc = o.Misc["Layer3Ipv6DhcpClientV6Options"] } - if o.Layer3.Ipv6.DhcpClient.V6Options.RapidCommit != nil { - nestedLayer3.Ipv6.DhcpClient.V6Options.RapidCommit = util.YesNo(o.Layer3.Ipv6.DhcpClient.V6Options.RapidCommit, nil) - } - if o.Layer3.Ipv6.DhcpClient.V6Options.SupportSrvrReconfig != nil { - nestedLayer3.Ipv6.DhcpClient.V6Options.SupportSrvrReconfig = util.YesNo(o.Layer3.Ipv6.DhcpClient.V6Options.SupportSrvrReconfig, nil) - } - if o.Layer3.Ipv6.DhcpClient.V6Options.DuidType != nil { - nestedLayer3.Ipv6.DhcpClient.V6Options.DuidType = o.Layer3.Ipv6.DhcpClient.V6Options.DuidType - } if o.Layer3.Ipv6.DhcpClient.V6Options.Enable != nil { nestedLayer3.Ipv6.DhcpClient.V6Options.Enable = &Layer3Ipv6DhcpClientV6OptionsEnableXml_11_0_2{} if _, ok := o.Misc["Layer3Ipv6DhcpClientV6OptionsEnable"]; ok { nestedLayer3.Ipv6.DhcpClient.V6Options.Enable.Misc = o.Misc["Layer3Ipv6DhcpClientV6OptionsEnable"] } + if o.Layer3.Ipv6.DhcpClient.V6Options.Enable.No != nil { + nestedLayer3.Ipv6.DhcpClient.V6Options.Enable.No = &Layer3Ipv6DhcpClientV6OptionsEnableNoXml_11_0_2{} + if _, ok := o.Misc["Layer3Ipv6DhcpClientV6OptionsEnableNo"]; ok { + nestedLayer3.Ipv6.DhcpClient.V6Options.Enable.No.Misc = o.Misc["Layer3Ipv6DhcpClientV6OptionsEnableNo"] + } + } if o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes != nil { nestedLayer3.Ipv6.DhcpClient.V6Options.Enable.Yes = &Layer3Ipv6DhcpClientV6OptionsEnableYesXml_11_0_2{} if _, ok := o.Misc["Layer3Ipv6DhcpClientV6OptionsEnableYes"]; ok { @@ -3507,12 +3296,15 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { nestedLayer3.Ipv6.DhcpClient.V6Options.Enable.Yes.TempAddr = util.YesNo(o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes.TempAddr, nil) } } - if o.Layer3.Ipv6.DhcpClient.V6Options.Enable.No != nil { - nestedLayer3.Ipv6.DhcpClient.V6Options.Enable.No = &Layer3Ipv6DhcpClientV6OptionsEnableNoXml_11_0_2{} - if _, ok := o.Misc["Layer3Ipv6DhcpClientV6OptionsEnableNo"]; ok { - nestedLayer3.Ipv6.DhcpClient.V6Options.Enable.No.Misc = o.Misc["Layer3Ipv6DhcpClientV6OptionsEnableNo"] - } - } + } + if o.Layer3.Ipv6.DhcpClient.V6Options.RapidCommit != nil { + nestedLayer3.Ipv6.DhcpClient.V6Options.RapidCommit = util.YesNo(o.Layer3.Ipv6.DhcpClient.V6Options.RapidCommit, nil) + } + if o.Layer3.Ipv6.DhcpClient.V6Options.SupportSrvrReconfig != nil { + nestedLayer3.Ipv6.DhcpClient.V6Options.SupportSrvrReconfig = util.YesNo(o.Layer3.Ipv6.DhcpClient.V6Options.SupportSrvrReconfig, nil) + } + if o.Layer3.Ipv6.DhcpClient.V6Options.DuidType != nil { + nestedLayer3.Ipv6.DhcpClient.V6Options.DuidType = o.Layer3.Ipv6.DhcpClient.V6Options.DuidType } } if o.Layer3.Ipv6.DhcpClient.AcceptRaRoute != nil { @@ -3529,28 +3321,6 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { if _, ok := o.Misc["Layer3Ipv6DhcpClientNeighborDiscovery"]; ok { nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.Misc = o.Misc["Layer3Ipv6DhcpClientNeighborDiscovery"] } - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.Neighbor != nil { - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.Neighbor = []Layer3Ipv6DhcpClientNeighborDiscoveryNeighborXml_11_0_2{} - for _, oLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor := range o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.Neighbor { - nestedLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor := Layer3Ipv6DhcpClientNeighborDiscoveryNeighborXml_11_0_2{} - if _, ok := o.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryNeighbor"]; ok { - nestedLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.Misc = o.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryNeighbor"] - } - if oLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.Name != "" { - nestedLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.Name = oLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.Name - } - if oLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.HwAddress != nil { - nestedLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.HwAddress = oLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.HwAddress - } - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.Neighbor = append(nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.Neighbor, nestedLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor) - } - } - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.NsInterval != nil { - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.NsInterval = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.NsInterval - } - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.ReachableTime != nil { - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.ReachableTime = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.ReachableTime - } if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DadAttempts != nil { nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DadAttempts = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DadAttempts } @@ -3559,11 +3329,20 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { if _, ok := o.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsServer"]; ok { nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Misc = o.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsServer"] } + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Enable != nil { + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Enable = util.YesNo(o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Enable, nil) + } if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source != nil { nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source = &Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceXml_11_0_2{} if _, ok := o.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSource"]; ok { nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Misc = o.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSource"] } + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Dhcpv6 != nil { + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Dhcpv6 = &Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceDhcpv6Xml_11_0_2{} + if _, ok := o.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceDhcpv6"]; ok { + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Dhcpv6.Misc = o.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceDhcpv6"] + } + } if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual != nil { nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual = &Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualXml_11_0_2{} if _, ok := o.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManual"]; ok { @@ -3586,15 +3365,6 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { } } } - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Dhcpv6 != nil { - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Dhcpv6 = &Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceDhcpv6Xml_11_0_2{} - if _, ok := o.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceDhcpv6"]; ok { - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Dhcpv6.Misc = o.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceDhcpv6"] - } - } - } - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Enable != nil { - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Enable = util.YesNo(o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Enable, nil) } } if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix != nil { @@ -3602,6 +3372,9 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { if _, ok := o.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffix"]; ok { nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Misc = o.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffix"] } + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Enable != nil { + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Enable = util.YesNo(o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Enable, nil) + } if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source != nil { nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source = &Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceXml_11_0_2{} if _, ok := o.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSource"]; ok { @@ -3636,9 +3409,6 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { } } } - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Enable != nil { - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Enable = util.YesNo(o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Enable, nil) - } } if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.EnableDad != nil { nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.EnableDad = util.YesNo(o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.EnableDad, nil) @@ -3646,6 +3416,28 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.EnableNdpMonitor != nil { nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.EnableNdpMonitor = util.YesNo(o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.EnableNdpMonitor, nil) } + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.Neighbor != nil { + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.Neighbor = []Layer3Ipv6DhcpClientNeighborDiscoveryNeighborXml_11_0_2{} + for _, oLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor := range o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.Neighbor { + nestedLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor := Layer3Ipv6DhcpClientNeighborDiscoveryNeighborXml_11_0_2{} + if _, ok := o.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryNeighbor"]; ok { + nestedLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.Misc = o.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryNeighbor"] + } + if oLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.HwAddress != nil { + nestedLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.HwAddress = oLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.HwAddress + } + if oLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.Name != "" { + nestedLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.Name = oLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.Name + } + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.Neighbor = append(nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.Neighbor, nestedLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor) + } + } + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.NsInterval != nil { + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.NsInterval = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.NsInterval + } + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.ReachableTime != nil { + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.ReachableTime = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.ReachableTime + } } if o.Layer3.Ipv6.DhcpClient.Preference != nil { nestedLayer3.Ipv6.DhcpClient.Preference = o.Layer3.Ipv6.DhcpClient.Preference @@ -3673,6 +3465,12 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { if _, ok := o.Misc["Layer3Ipv6InheritedAssignAddrTypeGua"]; ok { nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.Misc = o.Misc["Layer3Ipv6InheritedAssignAddrTypeGua"] } + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.EnableOnInterface != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.EnableOnInterface = util.YesNo(oLayer3Ipv6InheritedAssignAddr.Type.Gua.EnableOnInterface, nil) + } + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PrefixPool != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.PrefixPool = oLayer3Ipv6InheritedAssignAddr.Type.Gua.PrefixPool + } if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType != nil { nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType = &Layer3Ipv6InheritedAssignAddrTypeGuaPoolTypeXml_11_0_2{} if _, ok := o.Misc["Layer3Ipv6InheritedAssignAddrTypeGuaPoolType"]; ok { @@ -3709,24 +3507,12 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.AutoConfigFlag = util.YesNo(oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.AutoConfigFlag, nil) } } - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.EnableOnInterface != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.EnableOnInterface = util.YesNo(oLayer3Ipv6InheritedAssignAddr.Type.Gua.EnableOnInterface, nil) - } - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PrefixPool != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.PrefixPool = oLayer3Ipv6InheritedAssignAddr.Type.Gua.PrefixPool - } } if oLayer3Ipv6InheritedAssignAddr.Type.Ula != nil { nestedLayer3Ipv6InheritedAssignAddr.Type.Ula = &Layer3Ipv6InheritedAssignAddrTypeUlaXml_11_0_2{} if _, ok := o.Misc["Layer3Ipv6InheritedAssignAddrTypeUla"]; ok { nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Misc = o.Misc["Layer3Ipv6InheritedAssignAddrTypeUla"] } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.EnableOnInterface != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.EnableOnInterface = util.YesNo(oLayer3Ipv6InheritedAssignAddr.Type.Ula.EnableOnInterface, nil) - } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Address != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Address = oLayer3Ipv6InheritedAssignAddr.Type.Ula.Address - } if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Prefix != nil { nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Prefix = util.YesNo(oLayer3Ipv6InheritedAssignAddr.Type.Ula.Prefix, nil) } @@ -3738,12 +3524,6 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { if _, ok := o.Misc["Layer3Ipv6InheritedAssignAddrTypeUlaAdvertise"]; ok { nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.Misc = o.Misc["Layer3Ipv6InheritedAssignAddrTypeUlaAdvertise"] } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.Enable != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.Enable = util.YesNo(oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.Enable, nil) - } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.ValidLifetime != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.ValidLifetime = oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.ValidLifetime - } if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.PreferredLifetime != nil { nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.PreferredLifetime = oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.PreferredLifetime } @@ -3753,6 +3533,18 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.AutoConfigFlag != nil { nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.AutoConfigFlag = util.YesNo(oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.AutoConfigFlag, nil) } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.Enable != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.Enable = util.YesNo(oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.Enable, nil) + } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.ValidLifetime != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.ValidLifetime = oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.ValidLifetime + } + } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.EnableOnInterface != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.EnableOnInterface = util.YesNo(oLayer3Ipv6InheritedAssignAddr.Type.Ula.EnableOnInterface, nil) + } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Address != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Address = oLayer3Ipv6InheritedAssignAddr.Type.Ula.Address } } } @@ -3770,51 +3562,6 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { if _, ok := o.Misc["Layer3Ipv6InheritedNeighborDiscovery"]; ok { nestedLayer3.Ipv6.Inherited.NeighborDiscovery.Misc = o.Misc["Layer3Ipv6InheritedNeighborDiscovery"] } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.NsInterval != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.NsInterval = o.Layer3.Ipv6.Inherited.NeighborDiscovery.NsInterval - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement = &Layer3Ipv6InheritedNeighborDiscoveryRouterAdvertisementXml_11_0_2{} - if _, ok := o.Misc["Layer3Ipv6InheritedNeighborDiscoveryRouterAdvertisement"]; ok { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Misc = o.Misc["Layer3Ipv6InheritedNeighborDiscoveryRouterAdvertisement"] - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.MaxInterval != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.MaxInterval = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.MaxInterval - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.OtherFlag != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.OtherFlag = util.YesNo(o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.OtherFlag, nil) - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.ReachableTime != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.ReachableTime = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.ReachableTime - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Enable != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Enable = util.YesNo(o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Enable, nil) - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Lifetime != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Lifetime = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Lifetime - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.ManagedFlag != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.ManagedFlag = util.YesNo(o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.ManagedFlag, nil) - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.MinInterval != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.MinInterval = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.MinInterval - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RouterPreference != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RouterPreference = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RouterPreference - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck = util.YesNo(o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck, nil) - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.HopLimit != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.HopLimit = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.HopLimit - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.LinkMtu != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.LinkMtu = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.LinkMtu - } - } if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer != nil { nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsServer = &Layer3Ipv6InheritedNeighborDiscoveryDnsServerXml_11_0_2{} if _, ok := o.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsServer"]; ok { @@ -3861,11 +3608,39 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { } } } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.EnableNdpMonitor != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.EnableNdpMonitor = util.YesNo(o.Layer3.Ipv6.Inherited.NeighborDiscovery.EnableNdpMonitor, nil) + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.Neighbor != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.Neighbor = []Layer3Ipv6InheritedNeighborDiscoveryNeighborXml_11_0_2{} + for _, oLayer3Ipv6InheritedNeighborDiscoveryNeighbor := range o.Layer3.Ipv6.Inherited.NeighborDiscovery.Neighbor { + nestedLayer3Ipv6InheritedNeighborDiscoveryNeighbor := Layer3Ipv6InheritedNeighborDiscoveryNeighborXml_11_0_2{} + if _, ok := o.Misc["Layer3Ipv6InheritedNeighborDiscoveryNeighbor"]; ok { + nestedLayer3Ipv6InheritedNeighborDiscoveryNeighbor.Misc = o.Misc["Layer3Ipv6InheritedNeighborDiscoveryNeighbor"] + } + if oLayer3Ipv6InheritedNeighborDiscoveryNeighbor.HwAddress != nil { + nestedLayer3Ipv6InheritedNeighborDiscoveryNeighbor.HwAddress = oLayer3Ipv6InheritedNeighborDiscoveryNeighbor.HwAddress + } + if oLayer3Ipv6InheritedNeighborDiscoveryNeighbor.Name != "" { + nestedLayer3Ipv6InheritedNeighborDiscoveryNeighbor.Name = oLayer3Ipv6InheritedNeighborDiscoveryNeighbor.Name + } + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.Neighbor = append(nestedLayer3.Ipv6.Inherited.NeighborDiscovery.Neighbor, nestedLayer3Ipv6InheritedNeighborDiscoveryNeighbor) + } + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.ReachableTime != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.ReachableTime = o.Layer3.Ipv6.Inherited.NeighborDiscovery.ReachableTime + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DadAttempts != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DadAttempts = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DadAttempts + } if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix != nil { nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix = &Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixXml_11_0_2{} if _, ok := o.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsSuffix"]; ok { nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Misc = o.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsSuffix"] } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Enable != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Enable = util.YesNo(o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Enable, nil) + } if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source != nil { nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source = &Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceXml_11_0_2{} if _, ok := o.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSource"]; ok { @@ -3903,60 +3678,111 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { } } } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Enable != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Enable = util.YesNo(o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Enable, nil) - } } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.EnableNdpMonitor != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.EnableNdpMonitor = util.YesNo(o.Layer3.Ipv6.Inherited.NeighborDiscovery.EnableNdpMonitor, nil) + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.EnableDad != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.EnableDad = util.YesNo(o.Layer3.Ipv6.Inherited.NeighborDiscovery.EnableDad, nil) } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.Neighbor != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.Neighbor = []Layer3Ipv6InheritedNeighborDiscoveryNeighborXml_11_0_2{} - for _, oLayer3Ipv6InheritedNeighborDiscoveryNeighbor := range o.Layer3.Ipv6.Inherited.NeighborDiscovery.Neighbor { - nestedLayer3Ipv6InheritedNeighborDiscoveryNeighbor := Layer3Ipv6InheritedNeighborDiscoveryNeighborXml_11_0_2{} - if _, ok := o.Misc["Layer3Ipv6InheritedNeighborDiscoveryNeighbor"]; ok { - nestedLayer3Ipv6InheritedNeighborDiscoveryNeighbor.Misc = o.Misc["Layer3Ipv6InheritedNeighborDiscoveryNeighbor"] - } - if oLayer3Ipv6InheritedNeighborDiscoveryNeighbor.HwAddress != nil { - nestedLayer3Ipv6InheritedNeighborDiscoveryNeighbor.HwAddress = oLayer3Ipv6InheritedNeighborDiscoveryNeighbor.HwAddress - } - if oLayer3Ipv6InheritedNeighborDiscoveryNeighbor.Name != "" { - nestedLayer3Ipv6InheritedNeighborDiscoveryNeighbor.Name = oLayer3Ipv6InheritedNeighborDiscoveryNeighbor.Name - } - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.Neighbor = append(nestedLayer3.Ipv6.Inherited.NeighborDiscovery.Neighbor, nestedLayer3Ipv6InheritedNeighborDiscoveryNeighbor) + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.NsInterval != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.NsInterval = o.Layer3.Ipv6.Inherited.NeighborDiscovery.NsInterval + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement = &Layer3Ipv6InheritedNeighborDiscoveryRouterAdvertisementXml_11_0_2{} + if _, ok := o.Misc["Layer3Ipv6InheritedNeighborDiscoveryRouterAdvertisement"]; ok { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Misc = o.Misc["Layer3Ipv6InheritedNeighborDiscoveryRouterAdvertisement"] + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck = util.YesNo(o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck, nil) + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.HopLimit != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.HopLimit = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.HopLimit + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.ManagedFlag != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.ManagedFlag = util.YesNo(o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.ManagedFlag, nil) + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.MaxInterval != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.MaxInterval = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.MaxInterval + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.OtherFlag != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.OtherFlag = util.YesNo(o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.OtherFlag, nil) + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RouterPreference != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RouterPreference = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RouterPreference + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Enable != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Enable = util.YesNo(o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Enable, nil) + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Lifetime != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Lifetime = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Lifetime + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.LinkMtu != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.LinkMtu = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.LinkMtu + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.MinInterval != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.MinInterval = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.MinInterval + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.ReachableTime != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.ReachableTime = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.ReachableTime + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer } } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.ReachableTime != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.ReachableTime = o.Layer3.Ipv6.Inherited.NeighborDiscovery.ReachableTime + } + } + if o.Layer3.Ipv6.Address != nil { + nestedLayer3.Ipv6.Address = []Layer3Ipv6AddressXml_11_0_2{} + for _, oLayer3Ipv6Address := range o.Layer3.Ipv6.Address { + nestedLayer3Ipv6Address := Layer3Ipv6AddressXml_11_0_2{} + if _, ok := o.Misc["Layer3Ipv6Address"]; ok { + nestedLayer3Ipv6Address.Misc = o.Misc["Layer3Ipv6Address"] } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DadAttempts != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DadAttempts = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DadAttempts + if oLayer3Ipv6Address.EnableOnInterface != nil { + nestedLayer3Ipv6Address.EnableOnInterface = util.YesNo(oLayer3Ipv6Address.EnableOnInterface, nil) } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.EnableDad != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.EnableDad = util.YesNo(o.Layer3.Ipv6.Inherited.NeighborDiscovery.EnableDad, nil) + if oLayer3Ipv6Address.Prefix != nil { + nestedLayer3Ipv6Address.Prefix = &Layer3Ipv6AddressPrefixXml_11_0_2{} + if _, ok := o.Misc["Layer3Ipv6AddressPrefix"]; ok { + nestedLayer3Ipv6Address.Prefix.Misc = o.Misc["Layer3Ipv6AddressPrefix"] + } } + if oLayer3Ipv6Address.Anycast != nil { + nestedLayer3Ipv6Address.Anycast = &Layer3Ipv6AddressAnycastXml_11_0_2{} + if _, ok := o.Misc["Layer3Ipv6AddressAnycast"]; ok { + nestedLayer3Ipv6Address.Anycast.Misc = o.Misc["Layer3Ipv6AddressAnycast"] + } + } + if oLayer3Ipv6Address.Advertise != nil { + nestedLayer3Ipv6Address.Advertise = &Layer3Ipv6AddressAdvertiseXml_11_0_2{} + if _, ok := o.Misc["Layer3Ipv6AddressAdvertise"]; ok { + nestedLayer3Ipv6Address.Advertise.Misc = o.Misc["Layer3Ipv6AddressAdvertise"] + } + if oLayer3Ipv6Address.Advertise.OnlinkFlag != nil { + nestedLayer3Ipv6Address.Advertise.OnlinkFlag = util.YesNo(oLayer3Ipv6Address.Advertise.OnlinkFlag, nil) + } + if oLayer3Ipv6Address.Advertise.AutoConfigFlag != nil { + nestedLayer3Ipv6Address.Advertise.AutoConfigFlag = util.YesNo(oLayer3Ipv6Address.Advertise.AutoConfigFlag, nil) + } + if oLayer3Ipv6Address.Advertise.Enable != nil { + nestedLayer3Ipv6Address.Advertise.Enable = util.YesNo(oLayer3Ipv6Address.Advertise.Enable, nil) + } + if oLayer3Ipv6Address.Advertise.ValidLifetime != nil { + nestedLayer3Ipv6Address.Advertise.ValidLifetime = oLayer3Ipv6Address.Advertise.ValidLifetime + } + if oLayer3Ipv6Address.Advertise.PreferredLifetime != nil { + nestedLayer3Ipv6Address.Advertise.PreferredLifetime = oLayer3Ipv6Address.Advertise.PreferredLifetime + } + } + if oLayer3Ipv6Address.Name != "" { + nestedLayer3Ipv6Address.Name = oLayer3Ipv6Address.Name + } + nestedLayer3.Ipv6.Address = append(nestedLayer3.Ipv6.Address, nestedLayer3Ipv6Address) } } - } - if o.Layer3.Lldp != nil { - nestedLayer3.Lldp = &Layer3LldpXml_11_0_2{} - if _, ok := o.Misc["Layer3Lldp"]; ok { - nestedLayer3.Lldp.Misc = o.Misc["Layer3Lldp"] - } - if o.Layer3.Lldp.Enable != nil { - nestedLayer3.Lldp.Enable = util.YesNo(o.Layer3.Lldp.Enable, nil) - } - if o.Layer3.Lldp.HighAvailability != nil { - nestedLayer3.Lldp.HighAvailability = &Layer3LldpHighAvailabilityXml_11_0_2{} - if _, ok := o.Misc["Layer3LldpHighAvailability"]; ok { - nestedLayer3.Lldp.HighAvailability.Misc = o.Misc["Layer3LldpHighAvailability"] - } - if o.Layer3.Lldp.HighAvailability.PassivePreNegotiation != nil { - nestedLayer3.Lldp.HighAvailability.PassivePreNegotiation = util.YesNo(o.Layer3.Lldp.HighAvailability.PassivePreNegotiation, nil) - } + if o.Layer3.Ipv6.Enabled != nil { + nestedLayer3.Ipv6.Enabled = util.YesNo(o.Layer3.Ipv6.Enabled, nil) } - if o.Layer3.Lldp.Profile != nil { - nestedLayer3.Lldp.Profile = o.Layer3.Lldp.Profile + if o.Layer3.Ipv6.InterfaceId != nil { + nestedLayer3.Ipv6.InterfaceId = o.Layer3.Ipv6.InterfaceId } } if o.Layer3.SdwanLinkSettings != nil { @@ -3964,6 +3790,12 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { if _, ok := o.Misc["Layer3SdwanLinkSettings"]; ok { nestedLayer3.SdwanLinkSettings.Misc = o.Misc["Layer3SdwanLinkSettings"] } + if o.Layer3.SdwanLinkSettings.Enable != nil { + nestedLayer3.SdwanLinkSettings.Enable = util.YesNo(o.Layer3.SdwanLinkSettings.Enable, nil) + } + if o.Layer3.SdwanLinkSettings.SdwanInterfaceProfile != nil { + nestedLayer3.SdwanLinkSettings.SdwanInterfaceProfile = o.Layer3.SdwanLinkSettings.SdwanInterfaceProfile + } if o.Layer3.SdwanLinkSettings.UpstreamNat != nil { nestedLayer3.SdwanLinkSettings.UpstreamNat = &Layer3SdwanLinkSettingsUpstreamNatXml_11_0_2{} if _, ok := o.Misc["Layer3SdwanLinkSettingsUpstreamNat"]; ok { @@ -3991,15 +3823,6 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { } } } - if o.Layer3.SdwanLinkSettings.Enable != nil { - nestedLayer3.SdwanLinkSettings.Enable = util.YesNo(o.Layer3.SdwanLinkSettings.Enable, nil) - } - if o.Layer3.SdwanLinkSettings.SdwanInterfaceProfile != nil { - nestedLayer3.SdwanLinkSettings.SdwanInterfaceProfile = o.Layer3.SdwanLinkSettings.SdwanInterfaceProfile - } - } - if o.Layer3.UntaggedSubInterface != nil { - nestedLayer3.UntaggedSubInterface = util.YesNo(o.Layer3.UntaggedSubInterface, nil) } if o.Layer3.AdjustTcpMss != nil { nestedLayer3.AdjustTcpMss = &Layer3AdjustTcpMssXml_11_0_2{} @@ -4016,8 +3839,185 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { nestedLayer3.AdjustTcpMss.Ipv6MssAdjustment = o.Layer3.AdjustTcpMss.Ipv6MssAdjustment } } - if o.Layer3.InterfaceManagementProfile != nil { - nestedLayer3.InterfaceManagementProfile = o.Layer3.InterfaceManagementProfile + if o.Layer3.DecryptForward != nil { + nestedLayer3.DecryptForward = util.YesNo(o.Layer3.DecryptForward, nil) + } + if o.Layer3.DhcpClient != nil { + nestedLayer3.DhcpClient = &Layer3DhcpClientXml_11_0_2{} + if _, ok := o.Misc["Layer3DhcpClient"]; ok { + nestedLayer3.DhcpClient.Misc = o.Misc["Layer3DhcpClient"] + } + if o.Layer3.DhcpClient.DefaultRouteMetric != nil { + nestedLayer3.DhcpClient.DefaultRouteMetric = o.Layer3.DhcpClient.DefaultRouteMetric + } + if o.Layer3.DhcpClient.Enable != nil { + nestedLayer3.DhcpClient.Enable = util.YesNo(o.Layer3.DhcpClient.Enable, nil) + } + if o.Layer3.DhcpClient.SendHostname != nil { + nestedLayer3.DhcpClient.SendHostname = &Layer3DhcpClientSendHostnameXml_11_0_2{} + if _, ok := o.Misc["Layer3DhcpClientSendHostname"]; ok { + nestedLayer3.DhcpClient.SendHostname.Misc = o.Misc["Layer3DhcpClientSendHostname"] + } + if o.Layer3.DhcpClient.SendHostname.Enable != nil { + nestedLayer3.DhcpClient.SendHostname.Enable = util.YesNo(o.Layer3.DhcpClient.SendHostname.Enable, nil) + } + if o.Layer3.DhcpClient.SendHostname.Hostname != nil { + nestedLayer3.DhcpClient.SendHostname.Hostname = o.Layer3.DhcpClient.SendHostname.Hostname + } + } + if o.Layer3.DhcpClient.CreateDefaultRoute != nil { + nestedLayer3.DhcpClient.CreateDefaultRoute = util.YesNo(o.Layer3.DhcpClient.CreateDefaultRoute, nil) + } + } + if o.Layer3.Arp != nil { + nestedLayer3.Arp = []Layer3ArpXml_11_0_2{} + for _, oLayer3Arp := range o.Layer3.Arp { + nestedLayer3Arp := Layer3ArpXml_11_0_2{} + if _, ok := o.Misc["Layer3Arp"]; ok { + nestedLayer3Arp.Misc = o.Misc["Layer3Arp"] + } + if oLayer3Arp.HwAddress != nil { + nestedLayer3Arp.HwAddress = oLayer3Arp.HwAddress + } + if oLayer3Arp.Name != "" { + nestedLayer3Arp.Name = oLayer3Arp.Name + } + nestedLayer3.Arp = append(nestedLayer3.Arp, nestedLayer3Arp) + } + } + if o.Layer3.DdnsConfig != nil { + nestedLayer3.DdnsConfig = &Layer3DdnsConfigXml_11_0_2{} + if _, ok := o.Misc["Layer3DdnsConfig"]; ok { + nestedLayer3.DdnsConfig.Misc = o.Misc["Layer3DdnsConfig"] + } + if o.Layer3.DdnsConfig.DdnsIpv6 != nil { + nestedLayer3.DdnsConfig.DdnsIpv6 = util.StrToMem(o.Layer3.DdnsConfig.DdnsIpv6) + } + if o.Layer3.DdnsConfig.DdnsUpdateInterval != nil { + nestedLayer3.DdnsConfig.DdnsUpdateInterval = o.Layer3.DdnsConfig.DdnsUpdateInterval + } + if o.Layer3.DdnsConfig.DdnsVendor != nil { + nestedLayer3.DdnsConfig.DdnsVendor = o.Layer3.DdnsConfig.DdnsVendor + } + if o.Layer3.DdnsConfig.DdnsVendorConfig != nil { + nestedLayer3.DdnsConfig.DdnsVendorConfig = []Layer3DdnsConfigDdnsVendorConfigXml_11_0_2{} + for _, oLayer3DdnsConfigDdnsVendorConfig := range o.Layer3.DdnsConfig.DdnsVendorConfig { + nestedLayer3DdnsConfigDdnsVendorConfig := Layer3DdnsConfigDdnsVendorConfigXml_11_0_2{} + if _, ok := o.Misc["Layer3DdnsConfigDdnsVendorConfig"]; ok { + nestedLayer3DdnsConfigDdnsVendorConfig.Misc = o.Misc["Layer3DdnsConfigDdnsVendorConfig"] + } + if oLayer3DdnsConfigDdnsVendorConfig.Value != nil { + nestedLayer3DdnsConfigDdnsVendorConfig.Value = oLayer3DdnsConfigDdnsVendorConfig.Value + } + if oLayer3DdnsConfigDdnsVendorConfig.Name != "" { + nestedLayer3DdnsConfigDdnsVendorConfig.Name = oLayer3DdnsConfigDdnsVendorConfig.Name + } + nestedLayer3.DdnsConfig.DdnsVendorConfig = append(nestedLayer3.DdnsConfig.DdnsVendorConfig, nestedLayer3DdnsConfigDdnsVendorConfig) + } + } + if o.Layer3.DdnsConfig.DdnsCertProfile != nil { + nestedLayer3.DdnsConfig.DdnsCertProfile = o.Layer3.DdnsConfig.DdnsCertProfile + } + if o.Layer3.DdnsConfig.DdnsEnabled != nil { + nestedLayer3.DdnsConfig.DdnsEnabled = util.YesNo(o.Layer3.DdnsConfig.DdnsEnabled, nil) + } + if o.Layer3.DdnsConfig.DdnsHostname != nil { + nestedLayer3.DdnsConfig.DdnsHostname = o.Layer3.DdnsConfig.DdnsHostname + } + if o.Layer3.DdnsConfig.DdnsIp != nil { + nestedLayer3.DdnsConfig.DdnsIp = util.StrToMem(o.Layer3.DdnsConfig.DdnsIp) + } + } + if o.Layer3.Pppoe != nil { + nestedLayer3.Pppoe = &Layer3PppoeXml_11_0_2{} + if _, ok := o.Misc["Layer3Pppoe"]; ok { + nestedLayer3.Pppoe.Misc = o.Misc["Layer3Pppoe"] + } + if o.Layer3.Pppoe.Password != nil { + nestedLayer3.Pppoe.Password = o.Layer3.Pppoe.Password + } + if o.Layer3.Pppoe.StaticAddress != nil { + nestedLayer3.Pppoe.StaticAddress = &Layer3PppoeStaticAddressXml_11_0_2{} + if _, ok := o.Misc["Layer3PppoeStaticAddress"]; ok { + nestedLayer3.Pppoe.StaticAddress.Misc = o.Misc["Layer3PppoeStaticAddress"] + } + if o.Layer3.Pppoe.StaticAddress.Ip != nil { + nestedLayer3.Pppoe.StaticAddress.Ip = o.Layer3.Pppoe.StaticAddress.Ip + } + } + if o.Layer3.Pppoe.Username != nil { + nestedLayer3.Pppoe.Username = o.Layer3.Pppoe.Username + } + if o.Layer3.Pppoe.Passive != nil { + nestedLayer3.Pppoe.Passive = &Layer3PppoePassiveXml_11_0_2{} + if _, ok := o.Misc["Layer3PppoePassive"]; ok { + nestedLayer3.Pppoe.Passive.Misc = o.Misc["Layer3PppoePassive"] + } + if o.Layer3.Pppoe.Passive.Enable != nil { + nestedLayer3.Pppoe.Passive.Enable = util.YesNo(o.Layer3.Pppoe.Passive.Enable, nil) + } + } + if o.Layer3.Pppoe.Authentication != nil { + nestedLayer3.Pppoe.Authentication = o.Layer3.Pppoe.Authentication + } + if o.Layer3.Pppoe.CreateDefaultRoute != nil { + nestedLayer3.Pppoe.CreateDefaultRoute = util.YesNo(o.Layer3.Pppoe.CreateDefaultRoute, nil) + } + if o.Layer3.Pppoe.DefaultRouteMetric != nil { + nestedLayer3.Pppoe.DefaultRouteMetric = o.Layer3.Pppoe.DefaultRouteMetric + } + if o.Layer3.Pppoe.Enable != nil { + nestedLayer3.Pppoe.Enable = util.YesNo(o.Layer3.Pppoe.Enable, nil) + } + if o.Layer3.Pppoe.Service != nil { + nestedLayer3.Pppoe.Service = o.Layer3.Pppoe.Service + } + if o.Layer3.Pppoe.AccessConcentrator != nil { + nestedLayer3.Pppoe.AccessConcentrator = o.Layer3.Pppoe.AccessConcentrator + } + } + if o.Layer3.NetflowProfile != nil { + nestedLayer3.NetflowProfile = o.Layer3.NetflowProfile + } + if o.Layer3.ClusterInterconnect != nil { + nestedLayer3.ClusterInterconnect = util.YesNo(o.Layer3.ClusterInterconnect, nil) + } + if o.Layer3.TrafficInterconnect != nil { + nestedLayer3.TrafficInterconnect = util.YesNo(o.Layer3.TrafficInterconnect, nil) + } + if o.Layer3.Bonjour != nil { + nestedLayer3.Bonjour = &Layer3BonjourXml_11_0_2{} + if _, ok := o.Misc["Layer3Bonjour"]; ok { + nestedLayer3.Bonjour.Misc = o.Misc["Layer3Bonjour"] + } + if o.Layer3.Bonjour.Enable != nil { + nestedLayer3.Bonjour.Enable = util.YesNo(o.Layer3.Bonjour.Enable, nil) + } + if o.Layer3.Bonjour.GroupId != nil { + nestedLayer3.Bonjour.GroupId = o.Layer3.Bonjour.GroupId + } + if o.Layer3.Bonjour.TtlCheck != nil { + nestedLayer3.Bonjour.TtlCheck = util.YesNo(o.Layer3.Bonjour.TtlCheck, nil) + } + } + if o.Layer3.DfIgnore != nil { + nestedLayer3.DfIgnore = util.YesNo(o.Layer3.DfIgnore, nil) + } + if o.Layer3.Ip != nil { + nestedLayer3.Ip = []Layer3IpXml_11_0_2{} + for _, oLayer3Ip := range o.Layer3.Ip { + nestedLayer3Ip := Layer3IpXml_11_0_2{} + if _, ok := o.Misc["Layer3Ip"]; ok { + nestedLayer3Ip.Misc = o.Misc["Layer3Ip"] + } + if oLayer3Ip.SdwanGateway != nil { + nestedLayer3Ip.SdwanGateway = oLayer3Ip.SdwanGateway + } + if oLayer3Ip.Name != "" { + nestedLayer3Ip.Name = oLayer3Ip.Name + } + nestedLayer3.Ip = append(nestedLayer3.Ip, nestedLayer3Ip) + } } } entry.Layer3 = nestedLayer3 @@ -4028,6 +4028,12 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { if _, ok := o.Misc["LogCard"]; ok { nestedLogCard.Misc = o.Misc["LogCard"] } + if o.LogCard.IpAddress != nil { + nestedLogCard.IpAddress = o.LogCard.IpAddress + } + if o.LogCard.Ipv6Address != nil { + nestedLogCard.Ipv6Address = o.LogCard.Ipv6Address + } if o.LogCard.Ipv6DefaultGateway != nil { nestedLogCard.Ipv6DefaultGateway = o.LogCard.Ipv6DefaultGateway } @@ -4037,12 +4043,6 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { if o.LogCard.DefaultGateway != nil { nestedLogCard.DefaultGateway = o.LogCard.DefaultGateway } - if o.LogCard.IpAddress != nil { - nestedLogCard.IpAddress = o.LogCard.IpAddress - } - if o.LogCard.Ipv6Address != nil { - nestedLogCard.Ipv6Address = o.LogCard.Ipv6Address - } } entry.LogCard = nestedLogCard @@ -4084,6 +4084,9 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { if _, ok := o.Misc["VirtualWireLldp"]; ok { nestedVirtualWire.Lldp.Misc = o.Misc["VirtualWireLldp"] } + if o.VirtualWire.Lldp.Profile != nil { + nestedVirtualWire.Lldp.Profile = o.VirtualWire.Lldp.Profile + } if o.VirtualWire.Lldp.Enable != nil { nestedVirtualWire.Lldp.Enable = util.YesNo(o.VirtualWire.Lldp.Enable, nil) } @@ -4096,9 +4099,6 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { nestedVirtualWire.Lldp.HighAvailability.PassivePreNegotiation = util.YesNo(o.VirtualWire.Lldp.HighAvailability.PassivePreNegotiation, nil) } } - if o.VirtualWire.Lldp.Profile != nil { - nestedVirtualWire.Lldp.Profile = o.VirtualWire.Lldp.Profile - } } if o.VirtualWire.NetflowProfile != nil { nestedVirtualWire.NetflowProfile = o.VirtualWire.NetflowProfile @@ -4206,21 +4206,23 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Layer3.Misc != nil { entry.Misc["Layer3"] = o.Layer3.Misc } - if o.Layer3.Arp != nil { - nestedLayer3.Arp = []Layer3Arp{} - for _, oLayer3Arp := range o.Layer3.Arp { - nestedLayer3Arp := Layer3Arp{} - if oLayer3Arp.Misc != nil { - entry.Misc["Layer3Arp"] = oLayer3Arp.Misc - } - if oLayer3Arp.HwAddress != nil { - nestedLayer3Arp.HwAddress = oLayer3Arp.HwAddress - } - if oLayer3Arp.Name != "" { - nestedLayer3Arp.Name = oLayer3Arp.Name - } - nestedLayer3.Arp = append(nestedLayer3.Arp, nestedLayer3Arp) + if o.Layer3.Bonjour != nil { + nestedLayer3.Bonjour = &Layer3Bonjour{} + if o.Layer3.Bonjour.Misc != nil { + entry.Misc["Layer3Bonjour"] = o.Layer3.Bonjour.Misc + } + if o.Layer3.Bonjour.TtlCheck != nil { + nestedLayer3.Bonjour.TtlCheck = util.AsBool(o.Layer3.Bonjour.TtlCheck, nil) + } + if o.Layer3.Bonjour.Enable != nil { + nestedLayer3.Bonjour.Enable = util.AsBool(o.Layer3.Bonjour.Enable, nil) } + if o.Layer3.Bonjour.GroupId != nil { + nestedLayer3.Bonjour.GroupId = o.Layer3.Bonjour.GroupId + } + } + if o.Layer3.DfIgnore != nil { + nestedLayer3.DfIgnore = util.AsBool(o.Layer3.DfIgnore, nil) } if o.Layer3.Ip != nil { nestedLayer3.Ip = []Layer3Ip{} @@ -4238,12 +4240,70 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { nestedLayer3.Ip = append(nestedLayer3.Ip, nestedLayer3Ip) } } - if o.Layer3.Mtu != nil { - nestedLayer3.Mtu = o.Layer3.Mtu + if o.Layer3.NetflowProfile != nil { + nestedLayer3.NetflowProfile = o.Layer3.NetflowProfile + } + if o.Layer3.ClusterInterconnect != nil { + nestedLayer3.ClusterInterconnect = util.AsBool(o.Layer3.ClusterInterconnect, nil) } if o.Layer3.TrafficInterconnect != nil { nestedLayer3.TrafficInterconnect = util.AsBool(o.Layer3.TrafficInterconnect, nil) } + if o.Layer3.InterfaceManagementProfile != nil { + nestedLayer3.InterfaceManagementProfile = o.Layer3.InterfaceManagementProfile + } + if o.Layer3.Lldp != nil { + nestedLayer3.Lldp = &Layer3Lldp{} + if o.Layer3.Lldp.Misc != nil { + entry.Misc["Layer3Lldp"] = o.Layer3.Lldp.Misc + } + if o.Layer3.Lldp.Enable != nil { + nestedLayer3.Lldp.Enable = util.AsBool(o.Layer3.Lldp.Enable, nil) + } + if o.Layer3.Lldp.HighAvailability != nil { + nestedLayer3.Lldp.HighAvailability = &Layer3LldpHighAvailability{} + if o.Layer3.Lldp.HighAvailability.Misc != nil { + entry.Misc["Layer3LldpHighAvailability"] = o.Layer3.Lldp.HighAvailability.Misc + } + if o.Layer3.Lldp.HighAvailability.PassivePreNegotiation != nil { + nestedLayer3.Lldp.HighAvailability.PassivePreNegotiation = util.AsBool(o.Layer3.Lldp.HighAvailability.PassivePreNegotiation, nil) + } + } + if o.Layer3.Lldp.Profile != nil { + nestedLayer3.Lldp.Profile = o.Layer3.Lldp.Profile + } + } + if o.Layer3.Mtu != nil { + nestedLayer3.Mtu = o.Layer3.Mtu + } + if o.Layer3.NdpProxy != nil { + nestedLayer3.NdpProxy = &Layer3NdpProxy{} + if o.Layer3.NdpProxy.Misc != nil { + entry.Misc["Layer3NdpProxy"] = o.Layer3.NdpProxy.Misc + } + if o.Layer3.NdpProxy.Address != nil { + nestedLayer3.NdpProxy.Address = []Layer3NdpProxyAddress{} + for _, oLayer3NdpProxyAddress := range o.Layer3.NdpProxy.Address { + nestedLayer3NdpProxyAddress := Layer3NdpProxyAddress{} + if oLayer3NdpProxyAddress.Misc != nil { + entry.Misc["Layer3NdpProxyAddress"] = oLayer3NdpProxyAddress.Misc + } + if oLayer3NdpProxyAddress.Negate != nil { + nestedLayer3NdpProxyAddress.Negate = util.AsBool(oLayer3NdpProxyAddress.Negate, nil) + } + if oLayer3NdpProxyAddress.Name != "" { + nestedLayer3NdpProxyAddress.Name = oLayer3NdpProxyAddress.Name + } + nestedLayer3.NdpProxy.Address = append(nestedLayer3.NdpProxy.Address, nestedLayer3NdpProxyAddress) + } + } + if o.Layer3.NdpProxy.Enabled != nil { + nestedLayer3.NdpProxy.Enabled = util.AsBool(o.Layer3.NdpProxy.Enabled, nil) + } + } + if o.Layer3.UntaggedSubInterface != nil { + nestedLayer3.UntaggedSubInterface = util.AsBool(o.Layer3.UntaggedSubInterface, nil) + } if o.Layer3.AdjustTcpMss != nil { nestedLayer3.AdjustTcpMss = &Layer3AdjustTcpMss{} if o.Layer3.AdjustTcpMss.Misc != nil { @@ -4259,241 +4319,386 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { nestedLayer3.AdjustTcpMss.Ipv6MssAdjustment = o.Layer3.AdjustTcpMss.Ipv6MssAdjustment } } - if o.Layer3.InterfaceManagementProfile != nil { - nestedLayer3.InterfaceManagementProfile = o.Layer3.InterfaceManagementProfile + if o.Layer3.DecryptForward != nil { + nestedLayer3.DecryptForward = util.AsBool(o.Layer3.DecryptForward, nil) + } + if o.Layer3.DhcpClient != nil { + nestedLayer3.DhcpClient = &Layer3DhcpClient{} + if o.Layer3.DhcpClient.Misc != nil { + entry.Misc["Layer3DhcpClient"] = o.Layer3.DhcpClient.Misc + } + if o.Layer3.DhcpClient.CreateDefaultRoute != nil { + nestedLayer3.DhcpClient.CreateDefaultRoute = util.AsBool(o.Layer3.DhcpClient.CreateDefaultRoute, nil) + } + if o.Layer3.DhcpClient.DefaultRouteMetric != nil { + nestedLayer3.DhcpClient.DefaultRouteMetric = o.Layer3.DhcpClient.DefaultRouteMetric + } + if o.Layer3.DhcpClient.Enable != nil { + nestedLayer3.DhcpClient.Enable = util.AsBool(o.Layer3.DhcpClient.Enable, nil) + } + if o.Layer3.DhcpClient.SendHostname != nil { + nestedLayer3.DhcpClient.SendHostname = &Layer3DhcpClientSendHostname{} + if o.Layer3.DhcpClient.SendHostname.Misc != nil { + entry.Misc["Layer3DhcpClientSendHostname"] = o.Layer3.DhcpClient.SendHostname.Misc + } + if o.Layer3.DhcpClient.SendHostname.Enable != nil { + nestedLayer3.DhcpClient.SendHostname.Enable = util.AsBool(o.Layer3.DhcpClient.SendHostname.Enable, nil) + } + if o.Layer3.DhcpClient.SendHostname.Hostname != nil { + nestedLayer3.DhcpClient.SendHostname.Hostname = o.Layer3.DhcpClient.SendHostname.Hostname + } + } } if o.Layer3.Ipv6 != nil { nestedLayer3.Ipv6 = &Layer3Ipv6{} if o.Layer3.Ipv6.Misc != nil { entry.Misc["Layer3Ipv6"] = o.Layer3.Ipv6.Misc } - if o.Layer3.Ipv6.Inherited != nil { - nestedLayer3.Ipv6.Inherited = &Layer3Ipv6Inherited{} - if o.Layer3.Ipv6.Inherited.Misc != nil { - entry.Misc["Layer3Ipv6Inherited"] = o.Layer3.Ipv6.Inherited.Misc + if o.Layer3.Ipv6.DhcpClient != nil { + nestedLayer3.Ipv6.DhcpClient = &Layer3Ipv6DhcpClient{} + if o.Layer3.Ipv6.DhcpClient.Misc != nil { + entry.Misc["Layer3Ipv6DhcpClient"] = o.Layer3.Ipv6.DhcpClient.Misc } - if o.Layer3.Ipv6.Inherited.AssignAddr != nil { - nestedLayer3.Ipv6.Inherited.AssignAddr = []Layer3Ipv6InheritedAssignAddr{} - for _, oLayer3Ipv6InheritedAssignAddr := range o.Layer3.Ipv6.Inherited.AssignAddr { - nestedLayer3Ipv6InheritedAssignAddr := Layer3Ipv6InheritedAssignAddr{} - if oLayer3Ipv6InheritedAssignAddr.Misc != nil { - entry.Misc["Layer3Ipv6InheritedAssignAddr"] = oLayer3Ipv6InheritedAssignAddr.Misc + if o.Layer3.Ipv6.DhcpClient.PrefixDelegation != nil { + nestedLayer3.Ipv6.DhcpClient.PrefixDelegation = &Layer3Ipv6DhcpClientPrefixDelegation{} + if o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Misc != nil { + entry.Misc["Layer3Ipv6DhcpClientPrefixDelegation"] = o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Misc + } + if o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable != nil { + nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Enable = &Layer3Ipv6DhcpClientPrefixDelegationEnable{} + if o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Misc != nil { + entry.Misc["Layer3Ipv6DhcpClientPrefixDelegationEnable"] = o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Misc } - if oLayer3Ipv6InheritedAssignAddr.Type != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type = &Layer3Ipv6InheritedAssignAddrType{} - if oLayer3Ipv6InheritedAssignAddr.Type.Misc != nil { - entry.Misc["Layer3Ipv6InheritedAssignAddrType"] = oLayer3Ipv6InheritedAssignAddr.Type.Misc - } - if oLayer3Ipv6InheritedAssignAddr.Type.Gua != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Gua = &Layer3Ipv6InheritedAssignAddrTypeGua{} - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.Misc != nil { - entry.Misc["Layer3Ipv6InheritedAssignAddrTypeGua"] = oLayer3Ipv6InheritedAssignAddr.Type.Gua.Misc - } - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.EnableOnInterface != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.EnableOnInterface = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Gua.EnableOnInterface, nil) - } - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PrefixPool != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.PrefixPool = oLayer3Ipv6InheritedAssignAddr.Type.Gua.PrefixPool - } - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType = &Layer3Ipv6InheritedAssignAddrTypeGuaPoolType{} - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.Misc != nil { - entry.Misc["Layer3Ipv6InheritedAssignAddrTypeGuaPoolType"] = oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.Misc - } - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.Dynamic != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.Dynamic = &Layer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamic{} - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.Dynamic.Misc != nil { - entry.Misc["Layer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamic"] = oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.Dynamic.Misc - } - } - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId = &Layer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamicId{} - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId.Misc != nil { - entry.Misc["Layer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamicId"] = oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId.Misc - } - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId.Identifier != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId.Identifier = oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId.Identifier - } - } - } - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise = &Layer3Ipv6InheritedAssignAddrTypeGuaAdvertise{} - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.Misc != nil { - entry.Misc["Layer3Ipv6InheritedAssignAddrTypeGuaAdvertise"] = oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.Misc - } - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.Enable != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.Enable = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.Enable, nil) - } - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.OnlinkFlag != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.OnlinkFlag = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.OnlinkFlag, nil) - } - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.AutoConfigFlag != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.AutoConfigFlag = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.AutoConfigFlag, nil) - } - } - } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula = &Layer3Ipv6InheritedAssignAddrTypeUla{} - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Misc != nil { - entry.Misc["Layer3Ipv6InheritedAssignAddrTypeUla"] = oLayer3Ipv6InheritedAssignAddr.Type.Ula.Misc - } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Prefix != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Prefix = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Ula.Prefix, nil) - } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Anycast != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Anycast = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Ula.Anycast, nil) - } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise = &Layer3Ipv6InheritedAssignAddrTypeUlaAdvertise{} - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.Misc != nil { - entry.Misc["Layer3Ipv6InheritedAssignAddrTypeUlaAdvertise"] = oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.Misc - } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.ValidLifetime != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.ValidLifetime = oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.ValidLifetime - } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.PreferredLifetime != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.PreferredLifetime = oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.PreferredLifetime - } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.OnlinkFlag != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.OnlinkFlag = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.OnlinkFlag, nil) - } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.AutoConfigFlag != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.AutoConfigFlag = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.AutoConfigFlag, nil) - } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.Enable != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.Enable = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.Enable, nil) - } - } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.EnableOnInterface != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.EnableOnInterface = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Ula.EnableOnInterface, nil) - } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Address != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Address = oLayer3Ipv6InheritedAssignAddr.Type.Ula.Address - } + if o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.No != nil { + nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Enable.No = &Layer3Ipv6DhcpClientPrefixDelegationEnableNo{} + if o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.No.Misc != nil { + entry.Misc["Layer3Ipv6DhcpClientPrefixDelegationEnableNo"] = o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.No.Misc + } + } + if o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes != nil { + nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes = &Layer3Ipv6DhcpClientPrefixDelegationEnableYes{} + if o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.Misc != nil { + entry.Misc["Layer3Ipv6DhcpClientPrefixDelegationEnableYes"] = o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.Misc + } + if o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PfxPoolName != nil { + nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PfxPoolName = o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PfxPoolName + } + if o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLen != nil { + nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLen = o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLen + } + if o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLenHint != nil { + nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLenHint = util.AsBool(o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLenHint, nil) } } - if oLayer3Ipv6InheritedAssignAddr.Name != "" { - nestedLayer3Ipv6InheritedAssignAddr.Name = oLayer3Ipv6InheritedAssignAddr.Name - } - nestedLayer3.Ipv6.Inherited.AssignAddr = append(nestedLayer3.Ipv6.Inherited.AssignAddr, nestedLayer3Ipv6InheritedAssignAddr) } } - if o.Layer3.Ipv6.Inherited.Enable != nil { - nestedLayer3.Ipv6.Inherited.Enable = util.AsBool(o.Layer3.Ipv6.Inherited.Enable, nil) - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery = &Layer3Ipv6InheritedNeighborDiscovery{} - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.Misc != nil { - entry.Misc["Layer3Ipv6InheritedNeighborDiscovery"] = o.Layer3.Ipv6.Inherited.NeighborDiscovery.Misc + if o.Layer3.Ipv6.DhcpClient.V6Options != nil { + nestedLayer3.Ipv6.DhcpClient.V6Options = &Layer3Ipv6DhcpClientV6Options{} + if o.Layer3.Ipv6.DhcpClient.V6Options.Misc != nil { + entry.Misc["Layer3Ipv6DhcpClientV6Options"] = o.Layer3.Ipv6.DhcpClient.V6Options.Misc } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsServer = &Layer3Ipv6InheritedNeighborDiscoveryDnsServer{} - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Misc != nil { - entry.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsServer"] = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Misc + if o.Layer3.Ipv6.DhcpClient.V6Options.DuidType != nil { + nestedLayer3.Ipv6.DhcpClient.V6Options.DuidType = o.Layer3.Ipv6.DhcpClient.V6Options.DuidType + } + if o.Layer3.Ipv6.DhcpClient.V6Options.Enable != nil { + nestedLayer3.Ipv6.DhcpClient.V6Options.Enable = &Layer3Ipv6DhcpClientV6OptionsEnable{} + if o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Misc != nil { + entry.Misc["Layer3Ipv6DhcpClientV6OptionsEnable"] = o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Misc } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Enable != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Enable = util.AsBool(o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Enable, nil) + if o.Layer3.Ipv6.DhcpClient.V6Options.Enable.No != nil { + nestedLayer3.Ipv6.DhcpClient.V6Options.Enable.No = &Layer3Ipv6DhcpClientV6OptionsEnableNo{} + if o.Layer3.Ipv6.DhcpClient.V6Options.Enable.No.Misc != nil { + entry.Misc["Layer3Ipv6DhcpClientV6OptionsEnableNo"] = o.Layer3.Ipv6.DhcpClient.V6Options.Enable.No.Misc + } } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source = &Layer3Ipv6InheritedNeighborDiscoveryDnsServerSource{} - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Misc != nil { - entry.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsServerSource"] = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Misc + if o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes != nil { + nestedLayer3.Ipv6.DhcpClient.V6Options.Enable.Yes = &Layer3Ipv6DhcpClientV6OptionsEnableYes{} + if o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes.Misc != nil { + entry.Misc["Layer3Ipv6DhcpClientV6OptionsEnableYes"] = o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes.Misc } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6 != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6 = &Layer3Ipv6InheritedNeighborDiscoveryDnsServerSourceDhcpv6{} - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6.Misc != nil { - entry.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsServerSourceDhcpv6"] = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6.Misc - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6.PrefixPool != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6.PrefixPool = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6.PrefixPool + if o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes.NonTempAddr != nil { + nestedLayer3.Ipv6.DhcpClient.V6Options.Enable.Yes.NonTempAddr = util.AsBool(o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes.NonTempAddr, nil) + } + if o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes.TempAddr != nil { + nestedLayer3.Ipv6.DhcpClient.V6Options.Enable.Yes.TempAddr = util.AsBool(o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes.TempAddr, nil) + } + } + } + if o.Layer3.Ipv6.DhcpClient.V6Options.RapidCommit != nil { + nestedLayer3.Ipv6.DhcpClient.V6Options.RapidCommit = util.AsBool(o.Layer3.Ipv6.DhcpClient.V6Options.RapidCommit, nil) + } + if o.Layer3.Ipv6.DhcpClient.V6Options.SupportSrvrReconfig != nil { + nestedLayer3.Ipv6.DhcpClient.V6Options.SupportSrvrReconfig = util.AsBool(o.Layer3.Ipv6.DhcpClient.V6Options.SupportSrvrReconfig, nil) + } + } + if o.Layer3.Ipv6.DhcpClient.AcceptRaRoute != nil { + nestedLayer3.Ipv6.DhcpClient.AcceptRaRoute = util.AsBool(o.Layer3.Ipv6.DhcpClient.AcceptRaRoute, nil) + } + if o.Layer3.Ipv6.DhcpClient.DefaultRouteMetric != nil { + nestedLayer3.Ipv6.DhcpClient.DefaultRouteMetric = o.Layer3.Ipv6.DhcpClient.DefaultRouteMetric + } + if o.Layer3.Ipv6.DhcpClient.Enable != nil { + nestedLayer3.Ipv6.DhcpClient.Enable = util.AsBool(o.Layer3.Ipv6.DhcpClient.Enable, nil) + } + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery != nil { + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery = &Layer3Ipv6DhcpClientNeighborDiscovery{} + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.Misc != nil { + entry.Misc["Layer3Ipv6DhcpClientNeighborDiscovery"] = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.Misc + } + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.NsInterval != nil { + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.NsInterval = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.NsInterval + } + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.ReachableTime != nil { + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.ReachableTime = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.ReachableTime + } + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DadAttempts != nil { + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DadAttempts = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DadAttempts + } + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer != nil { + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer = &Layer3Ipv6DhcpClientNeighborDiscoveryDnsServer{} + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Misc != nil { + entry.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsServer"] = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Misc + } + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source != nil { + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source = &Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSource{} + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Misc != nil { + entry.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSource"] = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Misc + } + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Dhcpv6 != nil { + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Dhcpv6 = &Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceDhcpv6{} + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Dhcpv6.Misc != nil { + entry.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceDhcpv6"] = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Dhcpv6.Misc } } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual = &Layer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManual{} - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual.Misc != nil { - entry.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManual"] = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual.Misc + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual != nil { + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual = &Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManual{} + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual.Misc != nil { + entry.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManual"] = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual.Misc } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual.Server != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual.Server = []Layer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer{} - for _, oLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer := range o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual.Server { - nestedLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer := Layer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer{} - if oLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Misc != nil { - entry.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer"] = oLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Misc + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual.Server != nil { + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual.Server = []Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer{} + for _, oLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer := range o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual.Server { + nestedLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer := Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer{} + if oLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Misc != nil { + entry.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer"] = oLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Misc } - if oLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Lifetime != nil { - nestedLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Lifetime = oLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Lifetime + if oLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Lifetime != nil { + nestedLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Lifetime = oLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Lifetime } - if oLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Name != "" { - nestedLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Name = oLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Name + if oLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Name != "" { + nestedLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Name = oLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Name } - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual.Server = append(nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual.Server, nestedLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer) + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual.Server = append(nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual.Server, nestedLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer) } } } } + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Enable != nil { + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Enable = util.AsBool(o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Enable, nil) + } } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix = &Layer3Ipv6InheritedNeighborDiscoveryDnsSuffix{} - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Misc != nil { - entry.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsSuffix"] = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Misc + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix != nil { + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix = &Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffix{} + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Misc != nil { + entry.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffix"] = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Misc } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Enable != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Enable = util.AsBool(o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Enable, nil) + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Enable != nil { + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Enable = util.AsBool(o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Enable, nil) } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source = &Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSource{} - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Misc != nil { - entry.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSource"] = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Misc + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source != nil { + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source = &Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSource{} + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Misc != nil { + entry.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSource"] = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Misc } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Dhcpv6 != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Dhcpv6 = &Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceDhcpv6{} - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Dhcpv6.Misc != nil { - entry.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceDhcpv6"] = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Dhcpv6.Misc - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Dhcpv6.PrefixPool != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Dhcpv6.PrefixPool = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Dhcpv6.PrefixPool + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Dhcpv6 != nil { + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Dhcpv6 = &Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceDhcpv6{} + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Dhcpv6.Misc != nil { + entry.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceDhcpv6"] = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Dhcpv6.Misc } } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Manual != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Manual = &Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManual{} - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Manual.Misc != nil { - entry.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManual"] = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Manual.Misc + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Manual != nil { + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Manual = &Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManual{} + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Manual.Misc != nil { + entry.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManual"] = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Manual.Misc } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Manual.Suffix != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Manual.Suffix = []Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix{} - for _, oLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix := range o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Manual.Suffix { - nestedLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix := Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix{} - if oLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Misc != nil { - entry.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix"] = oLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Misc + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Manual.Suffix != nil { + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Manual.Suffix = []Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix{} + for _, oLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix := range o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Manual.Suffix { + nestedLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix := Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix{} + if oLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix.Misc != nil { + entry.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix"] = oLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix.Misc } - if oLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Lifetime != nil { - nestedLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Lifetime = oLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Lifetime + if oLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix.Lifetime != nil { + nestedLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix.Lifetime = oLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix.Lifetime } - if oLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Name != "" { - nestedLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Name = oLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Name + if oLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix.Name != "" { + nestedLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix.Name = oLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix.Name } - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Manual.Suffix = append(nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Manual.Suffix, nestedLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix) + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Manual.Suffix = append(nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Manual.Suffix, nestedLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix) } } } } } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.NsInterval != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.NsInterval = o.Layer3.Ipv6.Inherited.NeighborDiscovery.NsInterval + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.EnableDad != nil { + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.EnableDad = util.AsBool(o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.EnableDad, nil) } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement = &Layer3Ipv6InheritedNeighborDiscoveryRouterAdvertisement{} - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Misc != nil { - entry.Misc["Layer3Ipv6InheritedNeighborDiscoveryRouterAdvertisement"] = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Misc - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.HopLimit != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.HopLimit = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.HopLimit - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.LinkMtu != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.LinkMtu = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.LinkMtu + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.EnableNdpMonitor != nil { + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.EnableNdpMonitor = util.AsBool(o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.EnableNdpMonitor, nil) + } + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.Neighbor != nil { + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.Neighbor = []Layer3Ipv6DhcpClientNeighborDiscoveryNeighbor{} + for _, oLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor := range o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.Neighbor { + nestedLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor := Layer3Ipv6DhcpClientNeighborDiscoveryNeighbor{} + if oLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.Misc != nil { + entry.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryNeighbor"] = oLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.Misc + } + if oLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.HwAddress != nil { + nestedLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.HwAddress = oLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.HwAddress + } + if oLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.Name != "" { + nestedLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.Name = oLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.Name + } + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.Neighbor = append(nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.Neighbor, nestedLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor) } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.MinInterval != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.MinInterval = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.MinInterval + } + } + if o.Layer3.Ipv6.DhcpClient.Preference != nil { + nestedLayer3.Ipv6.DhcpClient.Preference = o.Layer3.Ipv6.DhcpClient.Preference + } + } + if o.Layer3.Ipv6.Inherited != nil { + nestedLayer3.Ipv6.Inherited = &Layer3Ipv6Inherited{} + if o.Layer3.Ipv6.Inherited.Misc != nil { + entry.Misc["Layer3Ipv6Inherited"] = o.Layer3.Ipv6.Inherited.Misc + } + if o.Layer3.Ipv6.Inherited.AssignAddr != nil { + nestedLayer3.Ipv6.Inherited.AssignAddr = []Layer3Ipv6InheritedAssignAddr{} + for _, oLayer3Ipv6InheritedAssignAddr := range o.Layer3.Ipv6.Inherited.AssignAddr { + nestedLayer3Ipv6InheritedAssignAddr := Layer3Ipv6InheritedAssignAddr{} + if oLayer3Ipv6InheritedAssignAddr.Misc != nil { + entry.Misc["Layer3Ipv6InheritedAssignAddr"] = oLayer3Ipv6InheritedAssignAddr.Misc + } + if oLayer3Ipv6InheritedAssignAddr.Type != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type = &Layer3Ipv6InheritedAssignAddrType{} + if oLayer3Ipv6InheritedAssignAddr.Type.Misc != nil { + entry.Misc["Layer3Ipv6InheritedAssignAddrType"] = oLayer3Ipv6InheritedAssignAddr.Type.Misc + } + if oLayer3Ipv6InheritedAssignAddr.Type.Gua != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Gua = &Layer3Ipv6InheritedAssignAddrTypeGua{} + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.Misc != nil { + entry.Misc["Layer3Ipv6InheritedAssignAddrTypeGua"] = oLayer3Ipv6InheritedAssignAddr.Type.Gua.Misc + } + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.EnableOnInterface != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.EnableOnInterface = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Gua.EnableOnInterface, nil) + } + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PrefixPool != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.PrefixPool = oLayer3Ipv6InheritedAssignAddr.Type.Gua.PrefixPool + } + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType = &Layer3Ipv6InheritedAssignAddrTypeGuaPoolType{} + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.Misc != nil { + entry.Misc["Layer3Ipv6InheritedAssignAddrTypeGuaPoolType"] = oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.Misc + } + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.Dynamic != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.Dynamic = &Layer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamic{} + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.Dynamic.Misc != nil { + entry.Misc["Layer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamic"] = oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.Dynamic.Misc + } + } + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId = &Layer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamicId{} + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId.Misc != nil { + entry.Misc["Layer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamicId"] = oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId.Misc + } + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId.Identifier != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId.Identifier = oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId.Identifier + } + } + } + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise = &Layer3Ipv6InheritedAssignAddrTypeGuaAdvertise{} + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.Misc != nil { + entry.Misc["Layer3Ipv6InheritedAssignAddrTypeGuaAdvertise"] = oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.Misc + } + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.Enable != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.Enable = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.Enable, nil) + } + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.OnlinkFlag != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.OnlinkFlag = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.OnlinkFlag, nil) + } + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.AutoConfigFlag != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.AutoConfigFlag = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.AutoConfigFlag, nil) + } + } + } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula = &Layer3Ipv6InheritedAssignAddrTypeUla{} + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Misc != nil { + entry.Misc["Layer3Ipv6InheritedAssignAddrTypeUla"] = oLayer3Ipv6InheritedAssignAddr.Type.Ula.Misc + } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.EnableOnInterface != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.EnableOnInterface = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Ula.EnableOnInterface, nil) + } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Address != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Address = oLayer3Ipv6InheritedAssignAddr.Type.Ula.Address + } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Prefix != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Prefix = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Ula.Prefix, nil) + } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Anycast != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Anycast = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Ula.Anycast, nil) + } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise = &Layer3Ipv6InheritedAssignAddrTypeUlaAdvertise{} + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.Misc != nil { + entry.Misc["Layer3Ipv6InheritedAssignAddrTypeUlaAdvertise"] = oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.Misc + } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.AutoConfigFlag != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.AutoConfigFlag = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.AutoConfigFlag, nil) + } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.Enable != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.Enable = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.Enable, nil) + } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.ValidLifetime != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.ValidLifetime = oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.ValidLifetime + } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.PreferredLifetime != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.PreferredLifetime = oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.PreferredLifetime + } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.OnlinkFlag != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.OnlinkFlag = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.OnlinkFlag, nil) + } + } + } + } + if oLayer3Ipv6InheritedAssignAddr.Name != "" { + nestedLayer3Ipv6InheritedAssignAddr.Name = oLayer3Ipv6InheritedAssignAddr.Name + } + nestedLayer3.Ipv6.Inherited.AssignAddr = append(nestedLayer3.Ipv6.Inherited.AssignAddr, nestedLayer3Ipv6InheritedAssignAddr) + } + } + if o.Layer3.Ipv6.Inherited.Enable != nil { + nestedLayer3.Ipv6.Inherited.Enable = util.AsBool(o.Layer3.Ipv6.Inherited.Enable, nil) + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery = &Layer3Ipv6InheritedNeighborDiscovery{} + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.Misc != nil { + entry.Misc["Layer3Ipv6InheritedNeighborDiscovery"] = o.Layer3.Ipv6.Inherited.NeighborDiscovery.Misc + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.NsInterval != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.NsInterval = o.Layer3.Ipv6.Inherited.NeighborDiscovery.NsInterval + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement = &Layer3Ipv6InheritedNeighborDiscoveryRouterAdvertisement{} + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Misc != nil { + entry.Misc["Layer3Ipv6InheritedNeighborDiscoveryRouterAdvertisement"] = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Misc + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.MaxInterval != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.MaxInterval = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.MaxInterval + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.OtherFlag != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.OtherFlag = util.AsBool(o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.OtherFlag, nil) } if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RouterPreference != nil { nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RouterPreference = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RouterPreference @@ -4501,17 +4706,14 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck != nil { nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck = util.AsBool(o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck, nil) } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Lifetime != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Lifetime = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Lifetime + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.HopLimit != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.HopLimit = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.HopLimit } if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.ManagedFlag != nil { nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.ManagedFlag = util.AsBool(o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.ManagedFlag, nil) } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.MaxInterval != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.MaxInterval = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.MaxInterval - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.OtherFlag != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.OtherFlag = util.AsBool(o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.OtherFlag, nil) + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.MinInterval != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.MinInterval = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.MinInterval } if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.ReachableTime != nil { nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.ReachableTime = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.ReachableTime @@ -4522,13 +4724,114 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Enable != nil { nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Enable = util.AsBool(o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Enable, nil) } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Lifetime != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Lifetime = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Lifetime + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.LinkMtu != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.LinkMtu = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.LinkMtu + } } if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DadAttempts != nil { nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DadAttempts = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DadAttempts } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix = &Layer3Ipv6InheritedNeighborDiscoveryDnsSuffix{} + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Misc != nil { + entry.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsSuffix"] = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Misc + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Enable != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Enable = util.AsBool(o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Enable, nil) + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source = &Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSource{} + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Misc != nil { + entry.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSource"] = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Misc + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Dhcpv6 != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Dhcpv6 = &Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceDhcpv6{} + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Dhcpv6.Misc != nil { + entry.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceDhcpv6"] = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Dhcpv6.Misc + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Dhcpv6.PrefixPool != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Dhcpv6.PrefixPool = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Dhcpv6.PrefixPool + } + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Manual != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Manual = &Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManual{} + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Manual.Misc != nil { + entry.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManual"] = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Manual.Misc + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Manual.Suffix != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Manual.Suffix = []Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix{} + for _, oLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix := range o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Manual.Suffix { + nestedLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix := Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix{} + if oLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Misc != nil { + entry.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix"] = oLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Misc + } + if oLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Lifetime != nil { + nestedLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Lifetime = oLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Lifetime + } + if oLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Name != "" { + nestedLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Name = oLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Name + } + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Manual.Suffix = append(nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Manual.Suffix, nestedLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix) + } + } + } + } + } if o.Layer3.Ipv6.Inherited.NeighborDiscovery.EnableDad != nil { nestedLayer3.Ipv6.Inherited.NeighborDiscovery.EnableDad = util.AsBool(o.Layer3.Ipv6.Inherited.NeighborDiscovery.EnableDad, nil) } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.ReachableTime != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.ReachableTime = o.Layer3.Ipv6.Inherited.NeighborDiscovery.ReachableTime + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsServer = &Layer3Ipv6InheritedNeighborDiscoveryDnsServer{} + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Misc != nil { + entry.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsServer"] = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Misc + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Enable != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Enable = util.AsBool(o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Enable, nil) + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source = &Layer3Ipv6InheritedNeighborDiscoveryDnsServerSource{} + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Misc != nil { + entry.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsServerSource"] = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Misc + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6 != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6 = &Layer3Ipv6InheritedNeighborDiscoveryDnsServerSourceDhcpv6{} + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6.Misc != nil { + entry.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsServerSourceDhcpv6"] = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6.Misc + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6.PrefixPool != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6.PrefixPool = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6.PrefixPool + } + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual = &Layer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManual{} + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual.Misc != nil { + entry.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManual"] = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual.Misc + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual.Server != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual.Server = []Layer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer{} + for _, oLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer := range o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual.Server { + nestedLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer := Layer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer{} + if oLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Misc != nil { + entry.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer"] = oLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Misc + } + if oLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Lifetime != nil { + nestedLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Lifetime = oLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Lifetime + } + if oLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Name != "" { + nestedLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Name = oLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Name + } + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual.Server = append(nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual.Server, nestedLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer) + } + } + } + } + } if o.Layer3.Ipv6.Inherited.NeighborDiscovery.EnableNdpMonitor != nil { nestedLayer3.Ipv6.Inherited.NeighborDiscovery.EnableNdpMonitor = util.AsBool(o.Layer3.Ipv6.Inherited.NeighborDiscovery.EnableNdpMonitor, nil) } @@ -4548,9 +4851,6 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { nestedLayer3.Ipv6.Inherited.NeighborDiscovery.Neighbor = append(nestedLayer3.Ipv6.Inherited.NeighborDiscovery.Neighbor, nestedLayer3Ipv6InheritedNeighborDiscoveryNeighbor) } } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.ReachableTime != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.ReachableTime = o.Layer3.Ipv6.Inherited.NeighborDiscovery.ReachableTime - } } } if o.Layer3.Ipv6.Address != nil { @@ -4560,26 +4860,14 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oLayer3Ipv6Address.Misc != nil { entry.Misc["Layer3Ipv6Address"] = oLayer3Ipv6Address.Misc } - if oLayer3Ipv6Address.EnableOnInterface != nil { - nestedLayer3Ipv6Address.EnableOnInterface = util.AsBool(oLayer3Ipv6Address.EnableOnInterface, nil) - } - if oLayer3Ipv6Address.Prefix != nil { - nestedLayer3Ipv6Address.Prefix = &Layer3Ipv6AddressPrefix{} - if oLayer3Ipv6Address.Prefix.Misc != nil { - entry.Misc["Layer3Ipv6AddressPrefix"] = oLayer3Ipv6Address.Prefix.Misc - } - } - if oLayer3Ipv6Address.Anycast != nil { - nestedLayer3Ipv6Address.Anycast = &Layer3Ipv6AddressAnycast{} - if oLayer3Ipv6Address.Anycast.Misc != nil { - entry.Misc["Layer3Ipv6AddressAnycast"] = oLayer3Ipv6Address.Anycast.Misc - } - } if oLayer3Ipv6Address.Advertise != nil { nestedLayer3Ipv6Address.Advertise = &Layer3Ipv6AddressAdvertise{} if oLayer3Ipv6Address.Advertise.Misc != nil { entry.Misc["Layer3Ipv6AddressAdvertise"] = oLayer3Ipv6Address.Advertise.Misc } + if oLayer3Ipv6Address.Advertise.OnlinkFlag != nil { + nestedLayer3Ipv6Address.Advertise.OnlinkFlag = util.AsBool(oLayer3Ipv6Address.Advertise.OnlinkFlag, nil) + } if oLayer3Ipv6Address.Advertise.AutoConfigFlag != nil { nestedLayer3Ipv6Address.Advertise.AutoConfigFlag = util.AsBool(oLayer3Ipv6Address.Advertise.AutoConfigFlag, nil) } @@ -4592,13 +4880,25 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oLayer3Ipv6Address.Advertise.PreferredLifetime != nil { nestedLayer3Ipv6Address.Advertise.PreferredLifetime = oLayer3Ipv6Address.Advertise.PreferredLifetime } - if oLayer3Ipv6Address.Advertise.OnlinkFlag != nil { - nestedLayer3Ipv6Address.Advertise.OnlinkFlag = util.AsBool(oLayer3Ipv6Address.Advertise.OnlinkFlag, nil) - } } if oLayer3Ipv6Address.Name != "" { nestedLayer3Ipv6Address.Name = oLayer3Ipv6Address.Name } + if oLayer3Ipv6Address.EnableOnInterface != nil { + nestedLayer3Ipv6Address.EnableOnInterface = util.AsBool(oLayer3Ipv6Address.EnableOnInterface, nil) + } + if oLayer3Ipv6Address.Prefix != nil { + nestedLayer3Ipv6Address.Prefix = &Layer3Ipv6AddressPrefix{} + if oLayer3Ipv6Address.Prefix.Misc != nil { + entry.Misc["Layer3Ipv6AddressPrefix"] = oLayer3Ipv6Address.Prefix.Misc + } + } + if oLayer3Ipv6Address.Anycast != nil { + nestedLayer3Ipv6Address.Anycast = &Layer3Ipv6AddressAnycast{} + if oLayer3Ipv6Address.Anycast.Misc != nil { + entry.Misc["Layer3Ipv6AddressAnycast"] = oLayer3Ipv6Address.Anycast.Misc + } + } nestedLayer3.Ipv6.Address = append(nestedLayer3.Ipv6.Address, nestedLayer3Ipv6Address) } } @@ -4613,6 +4913,22 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Layer3.Ipv6.NeighborDiscovery.Misc != nil { entry.Misc["Layer3Ipv6NeighborDiscovery"] = o.Layer3.Ipv6.NeighborDiscovery.Misc } + if o.Layer3.Ipv6.NeighborDiscovery.Neighbor != nil { + nestedLayer3.Ipv6.NeighborDiscovery.Neighbor = []Layer3Ipv6NeighborDiscoveryNeighbor{} + for _, oLayer3Ipv6NeighborDiscoveryNeighbor := range o.Layer3.Ipv6.NeighborDiscovery.Neighbor { + nestedLayer3Ipv6NeighborDiscoveryNeighbor := Layer3Ipv6NeighborDiscoveryNeighbor{} + if oLayer3Ipv6NeighborDiscoveryNeighbor.Misc != nil { + entry.Misc["Layer3Ipv6NeighborDiscoveryNeighbor"] = oLayer3Ipv6NeighborDiscoveryNeighbor.Misc + } + if oLayer3Ipv6NeighborDiscoveryNeighbor.HwAddress != nil { + nestedLayer3Ipv6NeighborDiscoveryNeighbor.HwAddress = oLayer3Ipv6NeighborDiscoveryNeighbor.HwAddress + } + if oLayer3Ipv6NeighborDiscoveryNeighbor.Name != "" { + nestedLayer3Ipv6NeighborDiscoveryNeighbor.Name = oLayer3Ipv6NeighborDiscoveryNeighbor.Name + } + nestedLayer3.Ipv6.NeighborDiscovery.Neighbor = append(nestedLayer3.Ipv6.NeighborDiscovery.Neighbor, nestedLayer3Ipv6NeighborDiscoveryNeighbor) + } + } if o.Layer3.Ipv6.NeighborDiscovery.NsInterval != nil { nestedLayer3.Ipv6.NeighborDiscovery.NsInterval = o.Layer3.Ipv6.NeighborDiscovery.NsInterval } @@ -4624,24 +4940,6 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Misc != nil { entry.Misc["Layer3Ipv6NeighborDiscoveryRouterAdvertisement"] = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Misc } - if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Enable != nil { - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Enable = util.AsBool(o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Enable, nil) - } - if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.ManagedFlag != nil { - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.ManagedFlag = util.AsBool(o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.ManagedFlag, nil) - } - if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MinInterval != nil { - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MinInterval = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MinInterval - } - if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.LinkMtu != nil { - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.LinkMtu = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.LinkMtu - } - if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MaxInterval != nil { - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MaxInterval = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MaxInterval - } - if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.OtherFlag != nil { - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.OtherFlag = util.AsBool(o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.OtherFlag, nil) - } if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.ReachableTime != nil { nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.ReachableTime = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.ReachableTime } @@ -4686,14 +4984,32 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { } } } + if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Enable != nil { + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Enable = util.AsBool(o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Enable, nil) + } + if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Lifetime != nil { + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Lifetime = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Lifetime + } + if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.ManagedFlag != nil { + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.ManagedFlag = util.AsBool(o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.ManagedFlag, nil) + } + if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MaxInterval != nil { + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MaxInterval = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MaxInterval + } + if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MinInterval != nil { + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MinInterval = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MinInterval + } + if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.OtherFlag != nil { + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.OtherFlag = util.AsBool(o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.OtherFlag, nil) + } if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck != nil { nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck = util.AsBool(o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck, nil) } if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.HopLimit != nil { nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.HopLimit = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.HopLimit } - if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Lifetime != nil { - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Lifetime = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Lifetime + if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.LinkMtu != nil { + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.LinkMtu = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.LinkMtu } if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer != nil { nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer @@ -4711,374 +5027,128 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Layer3.Ipv6.NeighborDiscovery.EnableNdpMonitor != nil { nestedLayer3.Ipv6.NeighborDiscovery.EnableNdpMonitor = util.AsBool(o.Layer3.Ipv6.NeighborDiscovery.EnableNdpMonitor, nil) } - if o.Layer3.Ipv6.NeighborDiscovery.Neighbor != nil { - nestedLayer3.Ipv6.NeighborDiscovery.Neighbor = []Layer3Ipv6NeighborDiscoveryNeighbor{} - for _, oLayer3Ipv6NeighborDiscoveryNeighbor := range o.Layer3.Ipv6.NeighborDiscovery.Neighbor { - nestedLayer3Ipv6NeighborDiscoveryNeighbor := Layer3Ipv6NeighborDiscoveryNeighbor{} - if oLayer3Ipv6NeighborDiscoveryNeighbor.Misc != nil { - entry.Misc["Layer3Ipv6NeighborDiscoveryNeighbor"] = oLayer3Ipv6NeighborDiscoveryNeighbor.Misc - } - if oLayer3Ipv6NeighborDiscoveryNeighbor.HwAddress != nil { - nestedLayer3Ipv6NeighborDiscoveryNeighbor.HwAddress = oLayer3Ipv6NeighborDiscoveryNeighbor.HwAddress - } - if oLayer3Ipv6NeighborDiscoveryNeighbor.Name != "" { - nestedLayer3Ipv6NeighborDiscoveryNeighbor.Name = oLayer3Ipv6NeighborDiscoveryNeighbor.Name - } - nestedLayer3.Ipv6.NeighborDiscovery.Neighbor = append(nestedLayer3.Ipv6.NeighborDiscovery.Neighbor, nestedLayer3Ipv6NeighborDiscoveryNeighbor) - } - } } - if o.Layer3.Ipv6.DhcpClient != nil { - nestedLayer3.Ipv6.DhcpClient = &Layer3Ipv6DhcpClient{} - if o.Layer3.Ipv6.DhcpClient.Misc != nil { - entry.Misc["Layer3Ipv6DhcpClient"] = o.Layer3.Ipv6.DhcpClient.Misc + } + if o.Layer3.SdwanLinkSettings != nil { + nestedLayer3.SdwanLinkSettings = &Layer3SdwanLinkSettings{} + if o.Layer3.SdwanLinkSettings.Misc != nil { + entry.Misc["Layer3SdwanLinkSettings"] = o.Layer3.SdwanLinkSettings.Misc + } + if o.Layer3.SdwanLinkSettings.Enable != nil { + nestedLayer3.SdwanLinkSettings.Enable = util.AsBool(o.Layer3.SdwanLinkSettings.Enable, nil) + } + if o.Layer3.SdwanLinkSettings.SdwanInterfaceProfile != nil { + nestedLayer3.SdwanLinkSettings.SdwanInterfaceProfile = o.Layer3.SdwanLinkSettings.SdwanInterfaceProfile + } + if o.Layer3.SdwanLinkSettings.UpstreamNat != nil { + nestedLayer3.SdwanLinkSettings.UpstreamNat = &Layer3SdwanLinkSettingsUpstreamNat{} + if o.Layer3.SdwanLinkSettings.UpstreamNat.Misc != nil { + entry.Misc["Layer3SdwanLinkSettingsUpstreamNat"] = o.Layer3.SdwanLinkSettings.UpstreamNat.Misc } - if o.Layer3.Ipv6.DhcpClient.PrefixDelegation != nil { - nestedLayer3.Ipv6.DhcpClient.PrefixDelegation = &Layer3Ipv6DhcpClientPrefixDelegation{} - if o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Misc != nil { - entry.Misc["Layer3Ipv6DhcpClientPrefixDelegation"] = o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Misc - } - if o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable != nil { - nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Enable = &Layer3Ipv6DhcpClientPrefixDelegationEnable{} - if o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Misc != nil { - entry.Misc["Layer3Ipv6DhcpClientPrefixDelegationEnable"] = o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Misc - } - if o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.No != nil { - nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Enable.No = &Layer3Ipv6DhcpClientPrefixDelegationEnableNo{} - if o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.No.Misc != nil { - entry.Misc["Layer3Ipv6DhcpClientPrefixDelegationEnableNo"] = o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.No.Misc - } - } - if o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes != nil { - nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes = &Layer3Ipv6DhcpClientPrefixDelegationEnableYes{} - if o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.Misc != nil { - entry.Misc["Layer3Ipv6DhcpClientPrefixDelegationEnableYes"] = o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.Misc - } - if o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PfxPoolName != nil { - nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PfxPoolName = o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PfxPoolName - } - if o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLen != nil { - nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLen = o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLen - } - if o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLenHint != nil { - nestedLayer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLenHint = util.AsBool(o.Layer3.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLenHint, nil) - } - } - } + if o.Layer3.SdwanLinkSettings.UpstreamNat.Enable != nil { + nestedLayer3.SdwanLinkSettings.UpstreamNat.Enable = util.AsBool(o.Layer3.SdwanLinkSettings.UpstreamNat.Enable, nil) } - if o.Layer3.Ipv6.DhcpClient.V6Options != nil { - nestedLayer3.Ipv6.DhcpClient.V6Options = &Layer3Ipv6DhcpClientV6Options{} - if o.Layer3.Ipv6.DhcpClient.V6Options.Misc != nil { - entry.Misc["Layer3Ipv6DhcpClientV6Options"] = o.Layer3.Ipv6.DhcpClient.V6Options.Misc - } - if o.Layer3.Ipv6.DhcpClient.V6Options.DuidType != nil { - nestedLayer3.Ipv6.DhcpClient.V6Options.DuidType = o.Layer3.Ipv6.DhcpClient.V6Options.DuidType + if o.Layer3.SdwanLinkSettings.UpstreamNat.StaticIp != nil { + nestedLayer3.SdwanLinkSettings.UpstreamNat.StaticIp = &Layer3SdwanLinkSettingsUpstreamNatStaticIp{} + if o.Layer3.SdwanLinkSettings.UpstreamNat.StaticIp.Misc != nil { + entry.Misc["Layer3SdwanLinkSettingsUpstreamNatStaticIp"] = o.Layer3.SdwanLinkSettings.UpstreamNat.StaticIp.Misc } - if o.Layer3.Ipv6.DhcpClient.V6Options.Enable != nil { - nestedLayer3.Ipv6.DhcpClient.V6Options.Enable = &Layer3Ipv6DhcpClientV6OptionsEnable{} - if o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Misc != nil { - entry.Misc["Layer3Ipv6DhcpClientV6OptionsEnable"] = o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Misc - } - if o.Layer3.Ipv6.DhcpClient.V6Options.Enable.No != nil { - nestedLayer3.Ipv6.DhcpClient.V6Options.Enable.No = &Layer3Ipv6DhcpClientV6OptionsEnableNo{} - if o.Layer3.Ipv6.DhcpClient.V6Options.Enable.No.Misc != nil { - entry.Misc["Layer3Ipv6DhcpClientV6OptionsEnableNo"] = o.Layer3.Ipv6.DhcpClient.V6Options.Enable.No.Misc - } - } - if o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes != nil { - nestedLayer3.Ipv6.DhcpClient.V6Options.Enable.Yes = &Layer3Ipv6DhcpClientV6OptionsEnableYes{} - if o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes.Misc != nil { - entry.Misc["Layer3Ipv6DhcpClientV6OptionsEnableYes"] = o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes.Misc - } - if o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes.NonTempAddr != nil { - nestedLayer3.Ipv6.DhcpClient.V6Options.Enable.Yes.NonTempAddr = util.AsBool(o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes.NonTempAddr, nil) - } - if o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes.TempAddr != nil { - nestedLayer3.Ipv6.DhcpClient.V6Options.Enable.Yes.TempAddr = util.AsBool(o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes.TempAddr, nil) - } - } + if o.Layer3.SdwanLinkSettings.UpstreamNat.StaticIp.Fqdn != nil { + nestedLayer3.SdwanLinkSettings.UpstreamNat.StaticIp.Fqdn = o.Layer3.SdwanLinkSettings.UpstreamNat.StaticIp.Fqdn } - if o.Layer3.Ipv6.DhcpClient.V6Options.RapidCommit != nil { - nestedLayer3.Ipv6.DhcpClient.V6Options.RapidCommit = util.AsBool(o.Layer3.Ipv6.DhcpClient.V6Options.RapidCommit, nil) + if o.Layer3.SdwanLinkSettings.UpstreamNat.StaticIp.IpAddress != nil { + nestedLayer3.SdwanLinkSettings.UpstreamNat.StaticIp.IpAddress = o.Layer3.SdwanLinkSettings.UpstreamNat.StaticIp.IpAddress } - if o.Layer3.Ipv6.DhcpClient.V6Options.SupportSrvrReconfig != nil { - nestedLayer3.Ipv6.DhcpClient.V6Options.SupportSrvrReconfig = util.AsBool(o.Layer3.Ipv6.DhcpClient.V6Options.SupportSrvrReconfig, nil) + } + if o.Layer3.SdwanLinkSettings.UpstreamNat.Ddns != nil { + nestedLayer3.SdwanLinkSettings.UpstreamNat.Ddns = &Layer3SdwanLinkSettingsUpstreamNatDdns{} + if o.Layer3.SdwanLinkSettings.UpstreamNat.Ddns.Misc != nil { + entry.Misc["Layer3SdwanLinkSettingsUpstreamNatDdns"] = o.Layer3.SdwanLinkSettings.UpstreamNat.Ddns.Misc } } - if o.Layer3.Ipv6.DhcpClient.AcceptRaRoute != nil { - nestedLayer3.Ipv6.DhcpClient.AcceptRaRoute = util.AsBool(o.Layer3.Ipv6.DhcpClient.AcceptRaRoute, nil) + } + } + if o.Layer3.Arp != nil { + nestedLayer3.Arp = []Layer3Arp{} + for _, oLayer3Arp := range o.Layer3.Arp { + nestedLayer3Arp := Layer3Arp{} + if oLayer3Arp.Misc != nil { + entry.Misc["Layer3Arp"] = oLayer3Arp.Misc } - if o.Layer3.Ipv6.DhcpClient.DefaultRouteMetric != nil { - nestedLayer3.Ipv6.DhcpClient.DefaultRouteMetric = o.Layer3.Ipv6.DhcpClient.DefaultRouteMetric + if oLayer3Arp.HwAddress != nil { + nestedLayer3Arp.HwAddress = oLayer3Arp.HwAddress } - if o.Layer3.Ipv6.DhcpClient.Enable != nil { - nestedLayer3.Ipv6.DhcpClient.Enable = util.AsBool(o.Layer3.Ipv6.DhcpClient.Enable, nil) + if oLayer3Arp.Name != "" { + nestedLayer3Arp.Name = oLayer3Arp.Name } - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery != nil { - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery = &Layer3Ipv6DhcpClientNeighborDiscovery{} - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.Misc != nil { - entry.Misc["Layer3Ipv6DhcpClientNeighborDiscovery"] = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.Misc + nestedLayer3.Arp = append(nestedLayer3.Arp, nestedLayer3Arp) + } + } + if o.Layer3.DdnsConfig != nil { + nestedLayer3.DdnsConfig = &Layer3DdnsConfig{} + if o.Layer3.DdnsConfig.Misc != nil { + entry.Misc["Layer3DdnsConfig"] = o.Layer3.DdnsConfig.Misc + } + if o.Layer3.DdnsConfig.DdnsHostname != nil { + nestedLayer3.DdnsConfig.DdnsHostname = o.Layer3.DdnsConfig.DdnsHostname + } + if o.Layer3.DdnsConfig.DdnsIp != nil { + nestedLayer3.DdnsConfig.DdnsIp = util.MemToStr(o.Layer3.DdnsConfig.DdnsIp) + } + if o.Layer3.DdnsConfig.DdnsIpv6 != nil { + nestedLayer3.DdnsConfig.DdnsIpv6 = util.MemToStr(o.Layer3.DdnsConfig.DdnsIpv6) + } + if o.Layer3.DdnsConfig.DdnsUpdateInterval != nil { + nestedLayer3.DdnsConfig.DdnsUpdateInterval = o.Layer3.DdnsConfig.DdnsUpdateInterval + } + if o.Layer3.DdnsConfig.DdnsVendor != nil { + nestedLayer3.DdnsConfig.DdnsVendor = o.Layer3.DdnsConfig.DdnsVendor + } + if o.Layer3.DdnsConfig.DdnsVendorConfig != nil { + nestedLayer3.DdnsConfig.DdnsVendorConfig = []Layer3DdnsConfigDdnsVendorConfig{} + for _, oLayer3DdnsConfigDdnsVendorConfig := range o.Layer3.DdnsConfig.DdnsVendorConfig { + nestedLayer3DdnsConfigDdnsVendorConfig := Layer3DdnsConfigDdnsVendorConfig{} + if oLayer3DdnsConfigDdnsVendorConfig.Misc != nil { + entry.Misc["Layer3DdnsConfigDdnsVendorConfig"] = oLayer3DdnsConfigDdnsVendorConfig.Misc } - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer != nil { - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer = &Layer3Ipv6DhcpClientNeighborDiscoveryDnsServer{} - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Misc != nil { - entry.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsServer"] = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Misc - } - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Enable != nil { - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Enable = util.AsBool(o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Enable, nil) - } - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source != nil { - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source = &Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSource{} - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Misc != nil { - entry.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSource"] = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Misc - } - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Dhcpv6 != nil { - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Dhcpv6 = &Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceDhcpv6{} - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Dhcpv6.Misc != nil { - entry.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceDhcpv6"] = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Dhcpv6.Misc - } - } - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual != nil { - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual = &Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManual{} - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual.Misc != nil { - entry.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManual"] = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual.Misc - } - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual.Server != nil { - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual.Server = []Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer{} - for _, oLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer := range o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual.Server { - nestedLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer := Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer{} - if oLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Misc != nil { - entry.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer"] = oLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Misc - } - if oLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Lifetime != nil { - nestedLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Lifetime = oLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Lifetime - } - if oLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Name != "" { - nestedLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Name = oLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Name - } - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual.Server = append(nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual.Server, nestedLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer) - } - } - } - } - } - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix != nil { - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix = &Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffix{} - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Misc != nil { - entry.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffix"] = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Misc - } - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Enable != nil { - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Enable = util.AsBool(o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Enable, nil) - } - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source != nil { - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source = &Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSource{} - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Misc != nil { - entry.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSource"] = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Misc - } - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Dhcpv6 != nil { - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Dhcpv6 = &Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceDhcpv6{} - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Dhcpv6.Misc != nil { - entry.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceDhcpv6"] = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Dhcpv6.Misc - } - } - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Manual != nil { - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Manual = &Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManual{} - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Manual.Misc != nil { - entry.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManual"] = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Manual.Misc - } - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Manual.Suffix != nil { - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Manual.Suffix = []Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix{} - for _, oLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix := range o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Manual.Suffix { - nestedLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix := Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix{} - if oLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix.Misc != nil { - entry.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix"] = oLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix.Misc - } - if oLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix.Name != "" { - nestedLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix.Name = oLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix.Name - } - if oLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix.Lifetime != nil { - nestedLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix.Lifetime = oLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix.Lifetime - } - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Manual.Suffix = append(nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Manual.Suffix, nestedLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix) - } - } - } - } - } - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.EnableDad != nil { - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.EnableDad = util.AsBool(o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.EnableDad, nil) - } - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.EnableNdpMonitor != nil { - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.EnableNdpMonitor = util.AsBool(o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.EnableNdpMonitor, nil) - } - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.Neighbor != nil { - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.Neighbor = []Layer3Ipv6DhcpClientNeighborDiscoveryNeighbor{} - for _, oLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor := range o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.Neighbor { - nestedLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor := Layer3Ipv6DhcpClientNeighborDiscoveryNeighbor{} - if oLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.Misc != nil { - entry.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryNeighbor"] = oLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.Misc - } - if oLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.HwAddress != nil { - nestedLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.HwAddress = oLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.HwAddress - } - if oLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.Name != "" { - nestedLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.Name = oLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor.Name - } - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.Neighbor = append(nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.Neighbor, nestedLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor) - } - } - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.NsInterval != nil { - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.NsInterval = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.NsInterval - } - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.ReachableTime != nil { - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.ReachableTime = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.ReachableTime - } - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DadAttempts != nil { - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DadAttempts = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DadAttempts - } - } - if o.Layer3.Ipv6.DhcpClient.Preference != nil { - nestedLayer3.Ipv6.DhcpClient.Preference = o.Layer3.Ipv6.DhcpClient.Preference - } - } - } - if o.Layer3.Lldp != nil { - nestedLayer3.Lldp = &Layer3Lldp{} - if o.Layer3.Lldp.Misc != nil { - entry.Misc["Layer3Lldp"] = o.Layer3.Lldp.Misc - } - if o.Layer3.Lldp.Enable != nil { - nestedLayer3.Lldp.Enable = util.AsBool(o.Layer3.Lldp.Enable, nil) - } - if o.Layer3.Lldp.HighAvailability != nil { - nestedLayer3.Lldp.HighAvailability = &Layer3LldpHighAvailability{} - if o.Layer3.Lldp.HighAvailability.Misc != nil { - entry.Misc["Layer3LldpHighAvailability"] = o.Layer3.Lldp.HighAvailability.Misc - } - if o.Layer3.Lldp.HighAvailability.PassivePreNegotiation != nil { - nestedLayer3.Lldp.HighAvailability.PassivePreNegotiation = util.AsBool(o.Layer3.Lldp.HighAvailability.PassivePreNegotiation, nil) - } - } - if o.Layer3.Lldp.Profile != nil { - nestedLayer3.Lldp.Profile = o.Layer3.Lldp.Profile - } - } - if o.Layer3.SdwanLinkSettings != nil { - nestedLayer3.SdwanLinkSettings = &Layer3SdwanLinkSettings{} - if o.Layer3.SdwanLinkSettings.Misc != nil { - entry.Misc["Layer3SdwanLinkSettings"] = o.Layer3.SdwanLinkSettings.Misc - } - if o.Layer3.SdwanLinkSettings.Enable != nil { - nestedLayer3.SdwanLinkSettings.Enable = util.AsBool(o.Layer3.SdwanLinkSettings.Enable, nil) - } - if o.Layer3.SdwanLinkSettings.SdwanInterfaceProfile != nil { - nestedLayer3.SdwanLinkSettings.SdwanInterfaceProfile = o.Layer3.SdwanLinkSettings.SdwanInterfaceProfile - } - if o.Layer3.SdwanLinkSettings.UpstreamNat != nil { - nestedLayer3.SdwanLinkSettings.UpstreamNat = &Layer3SdwanLinkSettingsUpstreamNat{} - if o.Layer3.SdwanLinkSettings.UpstreamNat.Misc != nil { - entry.Misc["Layer3SdwanLinkSettingsUpstreamNat"] = o.Layer3.SdwanLinkSettings.UpstreamNat.Misc - } - if o.Layer3.SdwanLinkSettings.UpstreamNat.Enable != nil { - nestedLayer3.SdwanLinkSettings.UpstreamNat.Enable = util.AsBool(o.Layer3.SdwanLinkSettings.UpstreamNat.Enable, nil) - } - if o.Layer3.SdwanLinkSettings.UpstreamNat.Ddns != nil { - nestedLayer3.SdwanLinkSettings.UpstreamNat.Ddns = &Layer3SdwanLinkSettingsUpstreamNatDdns{} - if o.Layer3.SdwanLinkSettings.UpstreamNat.Ddns.Misc != nil { - entry.Misc["Layer3SdwanLinkSettingsUpstreamNatDdns"] = o.Layer3.SdwanLinkSettings.UpstreamNat.Ddns.Misc - } - } - if o.Layer3.SdwanLinkSettings.UpstreamNat.StaticIp != nil { - nestedLayer3.SdwanLinkSettings.UpstreamNat.StaticIp = &Layer3SdwanLinkSettingsUpstreamNatStaticIp{} - if o.Layer3.SdwanLinkSettings.UpstreamNat.StaticIp.Misc != nil { - entry.Misc["Layer3SdwanLinkSettingsUpstreamNatStaticIp"] = o.Layer3.SdwanLinkSettings.UpstreamNat.StaticIp.Misc - } - if o.Layer3.SdwanLinkSettings.UpstreamNat.StaticIp.Fqdn != nil { - nestedLayer3.SdwanLinkSettings.UpstreamNat.StaticIp.Fqdn = o.Layer3.SdwanLinkSettings.UpstreamNat.StaticIp.Fqdn - } - if o.Layer3.SdwanLinkSettings.UpstreamNat.StaticIp.IpAddress != nil { - nestedLayer3.SdwanLinkSettings.UpstreamNat.StaticIp.IpAddress = o.Layer3.SdwanLinkSettings.UpstreamNat.StaticIp.IpAddress - } - } - } - } - if o.Layer3.UntaggedSubInterface != nil { - nestedLayer3.UntaggedSubInterface = util.AsBool(o.Layer3.UntaggedSubInterface, nil) - } - if o.Layer3.Bonjour != nil { - nestedLayer3.Bonjour = &Layer3Bonjour{} - if o.Layer3.Bonjour.Misc != nil { - entry.Misc["Layer3Bonjour"] = o.Layer3.Bonjour.Misc - } - if o.Layer3.Bonjour.Enable != nil { - nestedLayer3.Bonjour.Enable = util.AsBool(o.Layer3.Bonjour.Enable, nil) - } - if o.Layer3.Bonjour.GroupId != nil { - nestedLayer3.Bonjour.GroupId = o.Layer3.Bonjour.GroupId - } - if o.Layer3.Bonjour.TtlCheck != nil { - nestedLayer3.Bonjour.TtlCheck = util.AsBool(o.Layer3.Bonjour.TtlCheck, nil) - } - } - if o.Layer3.DdnsConfig != nil { - nestedLayer3.DdnsConfig = &Layer3DdnsConfig{} - if o.Layer3.DdnsConfig.Misc != nil { - entry.Misc["Layer3DdnsConfig"] = o.Layer3.DdnsConfig.Misc - } - if o.Layer3.DdnsConfig.DdnsEnabled != nil { - nestedLayer3.DdnsConfig.DdnsEnabled = util.AsBool(o.Layer3.DdnsConfig.DdnsEnabled, nil) - } - if o.Layer3.DdnsConfig.DdnsHostname != nil { - nestedLayer3.DdnsConfig.DdnsHostname = o.Layer3.DdnsConfig.DdnsHostname - } - if o.Layer3.DdnsConfig.DdnsIp != nil { - nestedLayer3.DdnsConfig.DdnsIp = util.MemToStr(o.Layer3.DdnsConfig.DdnsIp) - } - if o.Layer3.DdnsConfig.DdnsIpv6 != nil { - nestedLayer3.DdnsConfig.DdnsIpv6 = util.MemToStr(o.Layer3.DdnsConfig.DdnsIpv6) - } - if o.Layer3.DdnsConfig.DdnsUpdateInterval != nil { - nestedLayer3.DdnsConfig.DdnsUpdateInterval = o.Layer3.DdnsConfig.DdnsUpdateInterval - } - if o.Layer3.DdnsConfig.DdnsVendor != nil { - nestedLayer3.DdnsConfig.DdnsVendor = o.Layer3.DdnsConfig.DdnsVendor - } - if o.Layer3.DdnsConfig.DdnsVendorConfig != nil { - nestedLayer3.DdnsConfig.DdnsVendorConfig = []Layer3DdnsConfigDdnsVendorConfig{} - for _, oLayer3DdnsConfigDdnsVendorConfig := range o.Layer3.DdnsConfig.DdnsVendorConfig { - nestedLayer3DdnsConfigDdnsVendorConfig := Layer3DdnsConfigDdnsVendorConfig{} - if oLayer3DdnsConfigDdnsVendorConfig.Misc != nil { - entry.Misc["Layer3DdnsConfigDdnsVendorConfig"] = oLayer3DdnsConfigDdnsVendorConfig.Misc + if oLayer3DdnsConfigDdnsVendorConfig.Name != "" { + nestedLayer3DdnsConfigDdnsVendorConfig.Name = oLayer3DdnsConfigDdnsVendorConfig.Name } if oLayer3DdnsConfigDdnsVendorConfig.Value != nil { nestedLayer3DdnsConfigDdnsVendorConfig.Value = oLayer3DdnsConfigDdnsVendorConfig.Value } - if oLayer3DdnsConfigDdnsVendorConfig.Name != "" { - nestedLayer3DdnsConfigDdnsVendorConfig.Name = oLayer3DdnsConfigDdnsVendorConfig.Name - } nestedLayer3.DdnsConfig.DdnsVendorConfig = append(nestedLayer3.DdnsConfig.DdnsVendorConfig, nestedLayer3DdnsConfigDdnsVendorConfig) } } if o.Layer3.DdnsConfig.DdnsCertProfile != nil { nestedLayer3.DdnsConfig.DdnsCertProfile = o.Layer3.DdnsConfig.DdnsCertProfile } - } - if o.Layer3.DfIgnore != nil { - nestedLayer3.DfIgnore = util.AsBool(o.Layer3.DfIgnore, nil) + if o.Layer3.DdnsConfig.DdnsEnabled != nil { + nestedLayer3.DdnsConfig.DdnsEnabled = util.AsBool(o.Layer3.DdnsConfig.DdnsEnabled, nil) + } } if o.Layer3.Pppoe != nil { nestedLayer3.Pppoe = &Layer3Pppoe{} if o.Layer3.Pppoe.Misc != nil { entry.Misc["Layer3Pppoe"] = o.Layer3.Pppoe.Misc } + if o.Layer3.Pppoe.CreateDefaultRoute != nil { + nestedLayer3.Pppoe.CreateDefaultRoute = util.AsBool(o.Layer3.Pppoe.CreateDefaultRoute, nil) + } if o.Layer3.Pppoe.DefaultRouteMetric != nil { nestedLayer3.Pppoe.DefaultRouteMetric = o.Layer3.Pppoe.DefaultRouteMetric } if o.Layer3.Pppoe.Enable != nil { nestedLayer3.Pppoe.Enable = util.AsBool(o.Layer3.Pppoe.Enable, nil) } - if o.Layer3.Pppoe.Password != nil { - nestedLayer3.Pppoe.Password = o.Layer3.Pppoe.Password + if o.Layer3.Pppoe.Service != nil { + nestedLayer3.Pppoe.Service = o.Layer3.Pppoe.Service + } + if o.Layer3.Pppoe.AccessConcentrator != nil { + nestedLayer3.Pppoe.AccessConcentrator = o.Layer3.Pppoe.AccessConcentrator + } + if o.Layer3.Pppoe.Authentication != nil { + nestedLayer3.Pppoe.Authentication = o.Layer3.Pppoe.Authentication } if o.Layer3.Pppoe.StaticAddress != nil { nestedLayer3.Pppoe.StaticAddress = &Layer3PppoeStaticAddress{} @@ -5089,21 +5159,9 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { nestedLayer3.Pppoe.StaticAddress.Ip = o.Layer3.Pppoe.StaticAddress.Ip } } - if o.Layer3.Pppoe.AccessConcentrator != nil { - nestedLayer3.Pppoe.AccessConcentrator = o.Layer3.Pppoe.AccessConcentrator - } - if o.Layer3.Pppoe.CreateDefaultRoute != nil { - nestedLayer3.Pppoe.CreateDefaultRoute = util.AsBool(o.Layer3.Pppoe.CreateDefaultRoute, nil) - } - if o.Layer3.Pppoe.Service != nil { - nestedLayer3.Pppoe.Service = o.Layer3.Pppoe.Service - } if o.Layer3.Pppoe.Username != nil { nestedLayer3.Pppoe.Username = o.Layer3.Pppoe.Username } - if o.Layer3.Pppoe.Authentication != nil { - nestedLayer3.Pppoe.Authentication = o.Layer3.Pppoe.Authentication - } if o.Layer3.Pppoe.Passive != nil { nestedLayer3.Pppoe.Passive = &Layer3PppoePassive{} if o.Layer3.Pppoe.Passive.Misc != nil { @@ -5113,67 +5171,9 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { nestedLayer3.Pppoe.Passive.Enable = util.AsBool(o.Layer3.Pppoe.Passive.Enable, nil) } } - } - if o.Layer3.DecryptForward != nil { - nestedLayer3.DecryptForward = util.AsBool(o.Layer3.DecryptForward, nil) - } - if o.Layer3.DhcpClient != nil { - nestedLayer3.DhcpClient = &Layer3DhcpClient{} - if o.Layer3.DhcpClient.Misc != nil { - entry.Misc["Layer3DhcpClient"] = o.Layer3.DhcpClient.Misc - } - if o.Layer3.DhcpClient.SendHostname != nil { - nestedLayer3.DhcpClient.SendHostname = &Layer3DhcpClientSendHostname{} - if o.Layer3.DhcpClient.SendHostname.Misc != nil { - entry.Misc["Layer3DhcpClientSendHostname"] = o.Layer3.DhcpClient.SendHostname.Misc - } - if o.Layer3.DhcpClient.SendHostname.Enable != nil { - nestedLayer3.DhcpClient.SendHostname.Enable = util.AsBool(o.Layer3.DhcpClient.SendHostname.Enable, nil) - } - if o.Layer3.DhcpClient.SendHostname.Hostname != nil { - nestedLayer3.DhcpClient.SendHostname.Hostname = o.Layer3.DhcpClient.SendHostname.Hostname - } - } - if o.Layer3.DhcpClient.CreateDefaultRoute != nil { - nestedLayer3.DhcpClient.CreateDefaultRoute = util.AsBool(o.Layer3.DhcpClient.CreateDefaultRoute, nil) - } - if o.Layer3.DhcpClient.DefaultRouteMetric != nil { - nestedLayer3.DhcpClient.DefaultRouteMetric = o.Layer3.DhcpClient.DefaultRouteMetric - } - if o.Layer3.DhcpClient.Enable != nil { - nestedLayer3.DhcpClient.Enable = util.AsBool(o.Layer3.DhcpClient.Enable, nil) - } - } - if o.Layer3.NdpProxy != nil { - nestedLayer3.NdpProxy = &Layer3NdpProxy{} - if o.Layer3.NdpProxy.Misc != nil { - entry.Misc["Layer3NdpProxy"] = o.Layer3.NdpProxy.Misc - } - if o.Layer3.NdpProxy.Address != nil { - nestedLayer3.NdpProxy.Address = []Layer3NdpProxyAddress{} - for _, oLayer3NdpProxyAddress := range o.Layer3.NdpProxy.Address { - nestedLayer3NdpProxyAddress := Layer3NdpProxyAddress{} - if oLayer3NdpProxyAddress.Misc != nil { - entry.Misc["Layer3NdpProxyAddress"] = oLayer3NdpProxyAddress.Misc - } - if oLayer3NdpProxyAddress.Negate != nil { - nestedLayer3NdpProxyAddress.Negate = util.AsBool(oLayer3NdpProxyAddress.Negate, nil) - } - if oLayer3NdpProxyAddress.Name != "" { - nestedLayer3NdpProxyAddress.Name = oLayer3NdpProxyAddress.Name - } - nestedLayer3.NdpProxy.Address = append(nestedLayer3.NdpProxy.Address, nestedLayer3NdpProxyAddress) - } - } - if o.Layer3.NdpProxy.Enabled != nil { - nestedLayer3.NdpProxy.Enabled = util.AsBool(o.Layer3.NdpProxy.Enabled, nil) - } - } - if o.Layer3.NetflowProfile != nil { - nestedLayer3.NetflowProfile = o.Layer3.NetflowProfile - } - if o.Layer3.ClusterInterconnect != nil { - nestedLayer3.ClusterInterconnect = util.AsBool(o.Layer3.ClusterInterconnect, nil) + if o.Layer3.Pppoe.Password != nil { + nestedLayer3.Pppoe.Password = o.Layer3.Pppoe.Password + } } } entry.Layer3 = nestedLayer3 @@ -5184,6 +5184,9 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.LogCard.Misc != nil { entry.Misc["LogCard"] = o.LogCard.Misc } + if o.LogCard.Ipv6DefaultGateway != nil { + nestedLogCard.Ipv6DefaultGateway = o.LogCard.Ipv6DefaultGateway + } if o.LogCard.Netmask != nil { nestedLogCard.Netmask = o.LogCard.Netmask } @@ -5196,9 +5199,6 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.LogCard.Ipv6Address != nil { nestedLogCard.Ipv6Address = o.LogCard.Ipv6Address } - if o.LogCard.Ipv6DefaultGateway != nil { - nestedLogCard.Ipv6DefaultGateway = o.LogCard.Ipv6DefaultGateway - } } entry.LogCard = nestedLogCard @@ -5365,308 +5365,153 @@ func (c *entryXmlContainer_11_0_2) Normalize() ([]*Entry, error) { if o.Layer3.Misc != nil { entry.Misc["Layer3"] = o.Layer3.Misc } - if o.Layer3.Arp != nil { - nestedLayer3.Arp = []Layer3Arp{} - for _, oLayer3Arp := range o.Layer3.Arp { - nestedLayer3Arp := Layer3Arp{} - if oLayer3Arp.Misc != nil { - entry.Misc["Layer3Arp"] = oLayer3Arp.Misc - } - if oLayer3Arp.HwAddress != nil { - nestedLayer3Arp.HwAddress = oLayer3Arp.HwAddress - } - if oLayer3Arp.Name != "" { - nestedLayer3Arp.Name = oLayer3Arp.Name - } - nestedLayer3.Arp = append(nestedLayer3.Arp, nestedLayer3Arp) + if o.Layer3.Lldp != nil { + nestedLayer3.Lldp = &Layer3Lldp{} + if o.Layer3.Lldp.Misc != nil { + entry.Misc["Layer3Lldp"] = o.Layer3.Lldp.Misc } - } - if o.Layer3.Ip != nil { - nestedLayer3.Ip = []Layer3Ip{} - for _, oLayer3Ip := range o.Layer3.Ip { - nestedLayer3Ip := Layer3Ip{} - if oLayer3Ip.Misc != nil { - entry.Misc["Layer3Ip"] = oLayer3Ip.Misc - } - if oLayer3Ip.SdwanGateway != nil { - nestedLayer3Ip.SdwanGateway = oLayer3Ip.SdwanGateway + if o.Layer3.Lldp.HighAvailability != nil { + nestedLayer3.Lldp.HighAvailability = &Layer3LldpHighAvailability{} + if o.Layer3.Lldp.HighAvailability.Misc != nil { + entry.Misc["Layer3LldpHighAvailability"] = o.Layer3.Lldp.HighAvailability.Misc } - if oLayer3Ip.Name != "" { - nestedLayer3Ip.Name = oLayer3Ip.Name + if o.Layer3.Lldp.HighAvailability.PassivePreNegotiation != nil { + nestedLayer3.Lldp.HighAvailability.PassivePreNegotiation = util.AsBool(o.Layer3.Lldp.HighAvailability.PassivePreNegotiation, nil) } - nestedLayer3.Ip = append(nestedLayer3.Ip, nestedLayer3Ip) + } + if o.Layer3.Lldp.Profile != nil { + nestedLayer3.Lldp.Profile = o.Layer3.Lldp.Profile + } + if o.Layer3.Lldp.Enable != nil { + nestedLayer3.Lldp.Enable = util.AsBool(o.Layer3.Lldp.Enable, nil) } } if o.Layer3.Mtu != nil { nestedLayer3.Mtu = o.Layer3.Mtu } - if o.Layer3.TrafficInterconnect != nil { - nestedLayer3.TrafficInterconnect = util.AsBool(o.Layer3.TrafficInterconnect, nil) - } - if o.Layer3.AdjustTcpMss != nil { - nestedLayer3.AdjustTcpMss = &Layer3AdjustTcpMss{} - if o.Layer3.AdjustTcpMss.Misc != nil { - entry.Misc["Layer3AdjustTcpMss"] = o.Layer3.AdjustTcpMss.Misc - } - if o.Layer3.AdjustTcpMss.Enable != nil { - nestedLayer3.AdjustTcpMss.Enable = util.AsBool(o.Layer3.AdjustTcpMss.Enable, nil) + if o.Layer3.NdpProxy != nil { + nestedLayer3.NdpProxy = &Layer3NdpProxy{} + if o.Layer3.NdpProxy.Misc != nil { + entry.Misc["Layer3NdpProxy"] = o.Layer3.NdpProxy.Misc } - if o.Layer3.AdjustTcpMss.Ipv4MssAdjustment != nil { - nestedLayer3.AdjustTcpMss.Ipv4MssAdjustment = o.Layer3.AdjustTcpMss.Ipv4MssAdjustment + if o.Layer3.NdpProxy.Address != nil { + nestedLayer3.NdpProxy.Address = []Layer3NdpProxyAddress{} + for _, oLayer3NdpProxyAddress := range o.Layer3.NdpProxy.Address { + nestedLayer3NdpProxyAddress := Layer3NdpProxyAddress{} + if oLayer3NdpProxyAddress.Misc != nil { + entry.Misc["Layer3NdpProxyAddress"] = oLayer3NdpProxyAddress.Misc + } + if oLayer3NdpProxyAddress.Negate != nil { + nestedLayer3NdpProxyAddress.Negate = util.AsBool(oLayer3NdpProxyAddress.Negate, nil) + } + if oLayer3NdpProxyAddress.Name != "" { + nestedLayer3NdpProxyAddress.Name = oLayer3NdpProxyAddress.Name + } + nestedLayer3.NdpProxy.Address = append(nestedLayer3.NdpProxy.Address, nestedLayer3NdpProxyAddress) + } } - if o.Layer3.AdjustTcpMss.Ipv6MssAdjustment != nil { - nestedLayer3.AdjustTcpMss.Ipv6MssAdjustment = o.Layer3.AdjustTcpMss.Ipv6MssAdjustment + if o.Layer3.NdpProxy.Enabled != nil { + nestedLayer3.NdpProxy.Enabled = util.AsBool(o.Layer3.NdpProxy.Enabled, nil) } } + if o.Layer3.UntaggedSubInterface != nil { + nestedLayer3.UntaggedSubInterface = util.AsBool(o.Layer3.UntaggedSubInterface, nil) + } if o.Layer3.InterfaceManagementProfile != nil { nestedLayer3.InterfaceManagementProfile = o.Layer3.InterfaceManagementProfile } + if o.Layer3.DecryptForward != nil { + nestedLayer3.DecryptForward = util.AsBool(o.Layer3.DecryptForward, nil) + } + if o.Layer3.DhcpClient != nil { + nestedLayer3.DhcpClient = &Layer3DhcpClient{} + if o.Layer3.DhcpClient.Misc != nil { + entry.Misc["Layer3DhcpClient"] = o.Layer3.DhcpClient.Misc + } + if o.Layer3.DhcpClient.CreateDefaultRoute != nil { + nestedLayer3.DhcpClient.CreateDefaultRoute = util.AsBool(o.Layer3.DhcpClient.CreateDefaultRoute, nil) + } + if o.Layer3.DhcpClient.DefaultRouteMetric != nil { + nestedLayer3.DhcpClient.DefaultRouteMetric = o.Layer3.DhcpClient.DefaultRouteMetric + } + if o.Layer3.DhcpClient.Enable != nil { + nestedLayer3.DhcpClient.Enable = util.AsBool(o.Layer3.DhcpClient.Enable, nil) + } + if o.Layer3.DhcpClient.SendHostname != nil { + nestedLayer3.DhcpClient.SendHostname = &Layer3DhcpClientSendHostname{} + if o.Layer3.DhcpClient.SendHostname.Misc != nil { + entry.Misc["Layer3DhcpClientSendHostname"] = o.Layer3.DhcpClient.SendHostname.Misc + } + if o.Layer3.DhcpClient.SendHostname.Enable != nil { + nestedLayer3.DhcpClient.SendHostname.Enable = util.AsBool(o.Layer3.DhcpClient.SendHostname.Enable, nil) + } + if o.Layer3.DhcpClient.SendHostname.Hostname != nil { + nestedLayer3.DhcpClient.SendHostname.Hostname = o.Layer3.DhcpClient.SendHostname.Hostname + } + } + } if o.Layer3.Ipv6 != nil { nestedLayer3.Ipv6 = &Layer3Ipv6{} if o.Layer3.Ipv6.Misc != nil { entry.Misc["Layer3Ipv6"] = o.Layer3.Ipv6.Misc } - if o.Layer3.Ipv6.Address != nil { - nestedLayer3.Ipv6.Address = []Layer3Ipv6Address{} - for _, oLayer3Ipv6Address := range o.Layer3.Ipv6.Address { - nestedLayer3Ipv6Address := Layer3Ipv6Address{} - if oLayer3Ipv6Address.Misc != nil { - entry.Misc["Layer3Ipv6Address"] = oLayer3Ipv6Address.Misc - } - if oLayer3Ipv6Address.Name != "" { - nestedLayer3Ipv6Address.Name = oLayer3Ipv6Address.Name - } - if oLayer3Ipv6Address.EnableOnInterface != nil { - nestedLayer3Ipv6Address.EnableOnInterface = util.AsBool(oLayer3Ipv6Address.EnableOnInterface, nil) + if o.Layer3.Ipv6.DhcpClient != nil { + nestedLayer3.Ipv6.DhcpClient = &Layer3Ipv6DhcpClient{} + if o.Layer3.Ipv6.DhcpClient.Misc != nil { + entry.Misc["Layer3Ipv6DhcpClient"] = o.Layer3.Ipv6.DhcpClient.Misc + } + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery != nil { + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery = &Layer3Ipv6DhcpClientNeighborDiscovery{} + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.Misc != nil { + entry.Misc["Layer3Ipv6DhcpClientNeighborDiscovery"] = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.Misc } - if oLayer3Ipv6Address.Prefix != nil { - nestedLayer3Ipv6Address.Prefix = &Layer3Ipv6AddressPrefix{} - if oLayer3Ipv6Address.Prefix.Misc != nil { - entry.Misc["Layer3Ipv6AddressPrefix"] = oLayer3Ipv6Address.Prefix.Misc + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer != nil { + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer = &Layer3Ipv6DhcpClientNeighborDiscoveryDnsServer{} + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Misc != nil { + entry.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsServer"] = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Misc } - } - if oLayer3Ipv6Address.Anycast != nil { - nestedLayer3Ipv6Address.Anycast = &Layer3Ipv6AddressAnycast{} - if oLayer3Ipv6Address.Anycast.Misc != nil { - entry.Misc["Layer3Ipv6AddressAnycast"] = oLayer3Ipv6Address.Anycast.Misc + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Enable != nil { + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Enable = util.AsBool(o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Enable, nil) } - } - if oLayer3Ipv6Address.Advertise != nil { - nestedLayer3Ipv6Address.Advertise = &Layer3Ipv6AddressAdvertise{} - if oLayer3Ipv6Address.Advertise.Misc != nil { - entry.Misc["Layer3Ipv6AddressAdvertise"] = oLayer3Ipv6Address.Advertise.Misc + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source != nil { + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source = &Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSource{} + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Misc != nil { + entry.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSource"] = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Misc + } + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Dhcpv6 != nil { + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Dhcpv6 = &Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceDhcpv6{} + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Dhcpv6.Misc != nil { + entry.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceDhcpv6"] = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Dhcpv6.Misc + } + } + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual != nil { + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual = &Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManual{} + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual.Misc != nil { + entry.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManual"] = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual.Misc + } + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual.Server != nil { + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual.Server = []Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer{} + for _, oLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer := range o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual.Server { + nestedLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer := Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer{} + if oLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Misc != nil { + entry.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer"] = oLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Misc + } + if oLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Lifetime != nil { + nestedLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Lifetime = oLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Lifetime + } + if oLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Name != "" { + nestedLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Name = oLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Name + } + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual.Server = append(nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual.Server, nestedLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer) + } + } + } } - if oLayer3Ipv6Address.Advertise.Enable != nil { - nestedLayer3Ipv6Address.Advertise.Enable = util.AsBool(oLayer3Ipv6Address.Advertise.Enable, nil) - } - if oLayer3Ipv6Address.Advertise.ValidLifetime != nil { - nestedLayer3Ipv6Address.Advertise.ValidLifetime = oLayer3Ipv6Address.Advertise.ValidLifetime - } - if oLayer3Ipv6Address.Advertise.PreferredLifetime != nil { - nestedLayer3Ipv6Address.Advertise.PreferredLifetime = oLayer3Ipv6Address.Advertise.PreferredLifetime - } - if oLayer3Ipv6Address.Advertise.OnlinkFlag != nil { - nestedLayer3Ipv6Address.Advertise.OnlinkFlag = util.AsBool(oLayer3Ipv6Address.Advertise.OnlinkFlag, nil) - } - if oLayer3Ipv6Address.Advertise.AutoConfigFlag != nil { - nestedLayer3Ipv6Address.Advertise.AutoConfigFlag = util.AsBool(oLayer3Ipv6Address.Advertise.AutoConfigFlag, nil) - } - } - nestedLayer3.Ipv6.Address = append(nestedLayer3.Ipv6.Address, nestedLayer3Ipv6Address) - } - } - if o.Layer3.Ipv6.Enabled != nil { - nestedLayer3.Ipv6.Enabled = util.AsBool(o.Layer3.Ipv6.Enabled, nil) - } - if o.Layer3.Ipv6.InterfaceId != nil { - nestedLayer3.Ipv6.InterfaceId = o.Layer3.Ipv6.InterfaceId - } - if o.Layer3.Ipv6.NeighborDiscovery != nil { - nestedLayer3.Ipv6.NeighborDiscovery = &Layer3Ipv6NeighborDiscovery{} - if o.Layer3.Ipv6.NeighborDiscovery.Misc != nil { - entry.Misc["Layer3Ipv6NeighborDiscovery"] = o.Layer3.Ipv6.NeighborDiscovery.Misc - } - if o.Layer3.Ipv6.NeighborDiscovery.ReachableTime != nil { - nestedLayer3.Ipv6.NeighborDiscovery.ReachableTime = o.Layer3.Ipv6.NeighborDiscovery.ReachableTime - } - if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement != nil { - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement = &Layer3Ipv6NeighborDiscoveryRouterAdvertisement{} - if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Misc != nil { - entry.Misc["Layer3Ipv6NeighborDiscoveryRouterAdvertisement"] = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Misc - } - if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Enable != nil { - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Enable = util.AsBool(o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Enable, nil) - } - if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.ManagedFlag != nil { - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.ManagedFlag = util.AsBool(o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.ManagedFlag, nil) - } - if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MinInterval != nil { - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MinInterval = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MinInterval - } - if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport != nil { - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport = &Layer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupport{} - if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Misc != nil { - entry.Misc["Layer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupport"] = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Misc - } - if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Enable != nil { - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Enable = util.AsBool(o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Enable, nil) - } - if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Server != nil { - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Server = []Layer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportServer{} - for _, oLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportServer := range o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Server { - nestedLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportServer := Layer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportServer{} - if oLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportServer.Misc != nil { - entry.Misc["Layer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportServer"] = oLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportServer.Misc - } - if oLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportServer.Lifetime != nil { - nestedLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportServer.Lifetime = oLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportServer.Lifetime - } - if oLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportServer.Name != "" { - nestedLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportServer.Name = oLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportServer.Name - } - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Server = append(nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Server, nestedLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportServer) - } - } - if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Suffix != nil { - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Suffix = []Layer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix{} - for _, oLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix := range o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Suffix { - nestedLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix := Layer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix{} - if oLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix.Misc != nil { - entry.Misc["Layer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix"] = oLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix.Misc - } - if oLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix.Lifetime != nil { - nestedLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix.Lifetime = oLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix.Lifetime - } - if oLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix.Name != "" { - nestedLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix.Name = oLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix.Name - } - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Suffix = append(nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Suffix, nestedLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix) - } - } - } - if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck != nil { - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck = util.AsBool(o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck, nil) - } - if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.HopLimit != nil { - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.HopLimit = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.HopLimit - } - if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Lifetime != nil { - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Lifetime = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Lifetime - } - if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.LinkMtu != nil { - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.LinkMtu = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.LinkMtu - } - if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MaxInterval != nil { - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MaxInterval = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MaxInterval - } - if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.OtherFlag != nil { - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.OtherFlag = util.AsBool(o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.OtherFlag, nil) - } - if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.ReachableTime != nil { - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.ReachableTime = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.ReachableTime - } - if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer != nil { - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer - } - if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.RouterPreference != nil { - nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.RouterPreference = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.RouterPreference - } - } - if o.Layer3.Ipv6.NeighborDiscovery.DadAttempts != nil { - nestedLayer3.Ipv6.NeighborDiscovery.DadAttempts = o.Layer3.Ipv6.NeighborDiscovery.DadAttempts - } - if o.Layer3.Ipv6.NeighborDiscovery.EnableDad != nil { - nestedLayer3.Ipv6.NeighborDiscovery.EnableDad = util.AsBool(o.Layer3.Ipv6.NeighborDiscovery.EnableDad, nil) - } - if o.Layer3.Ipv6.NeighborDiscovery.EnableNdpMonitor != nil { - nestedLayer3.Ipv6.NeighborDiscovery.EnableNdpMonitor = util.AsBool(o.Layer3.Ipv6.NeighborDiscovery.EnableNdpMonitor, nil) - } - if o.Layer3.Ipv6.NeighborDiscovery.Neighbor != nil { - nestedLayer3.Ipv6.NeighborDiscovery.Neighbor = []Layer3Ipv6NeighborDiscoveryNeighbor{} - for _, oLayer3Ipv6NeighborDiscoveryNeighbor := range o.Layer3.Ipv6.NeighborDiscovery.Neighbor { - nestedLayer3Ipv6NeighborDiscoveryNeighbor := Layer3Ipv6NeighborDiscoveryNeighbor{} - if oLayer3Ipv6NeighborDiscoveryNeighbor.Misc != nil { - entry.Misc["Layer3Ipv6NeighborDiscoveryNeighbor"] = oLayer3Ipv6NeighborDiscoveryNeighbor.Misc - } - if oLayer3Ipv6NeighborDiscoveryNeighbor.HwAddress != nil { - nestedLayer3Ipv6NeighborDiscoveryNeighbor.HwAddress = oLayer3Ipv6NeighborDiscoveryNeighbor.HwAddress - } - if oLayer3Ipv6NeighborDiscoveryNeighbor.Name != "" { - nestedLayer3Ipv6NeighborDiscoveryNeighbor.Name = oLayer3Ipv6NeighborDiscoveryNeighbor.Name - } - nestedLayer3.Ipv6.NeighborDiscovery.Neighbor = append(nestedLayer3.Ipv6.NeighborDiscovery.Neighbor, nestedLayer3Ipv6NeighborDiscoveryNeighbor) - } - } - if o.Layer3.Ipv6.NeighborDiscovery.NsInterval != nil { - nestedLayer3.Ipv6.NeighborDiscovery.NsInterval = o.Layer3.Ipv6.NeighborDiscovery.NsInterval - } - } - if o.Layer3.Ipv6.DhcpClient != nil { - nestedLayer3.Ipv6.DhcpClient = &Layer3Ipv6DhcpClient{} - if o.Layer3.Ipv6.DhcpClient.Misc != nil { - entry.Misc["Layer3Ipv6DhcpClient"] = o.Layer3.Ipv6.DhcpClient.Misc - } - if o.Layer3.Ipv6.DhcpClient.Enable != nil { - nestedLayer3.Ipv6.DhcpClient.Enable = util.AsBool(o.Layer3.Ipv6.DhcpClient.Enable, nil) - } - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery != nil { - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery = &Layer3Ipv6DhcpClientNeighborDiscovery{} - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.Misc != nil { - entry.Misc["Layer3Ipv6DhcpClientNeighborDiscovery"] = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.Misc - } - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.ReachableTime != nil { - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.ReachableTime = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.ReachableTime - } - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DadAttempts != nil { - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DadAttempts = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DadAttempts - } - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer != nil { - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer = &Layer3Ipv6DhcpClientNeighborDiscoveryDnsServer{} - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Misc != nil { - entry.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsServer"] = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Misc - } - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Enable != nil { - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Enable = util.AsBool(o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Enable, nil) - } - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source != nil { - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source = &Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSource{} - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Misc != nil { - entry.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSource"] = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Misc - } - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Dhcpv6 != nil { - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Dhcpv6 = &Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceDhcpv6{} - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Dhcpv6.Misc != nil { - entry.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceDhcpv6"] = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Dhcpv6.Misc - } - } - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual != nil { - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual = &Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManual{} - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual.Misc != nil { - entry.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManual"] = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual.Misc - } - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual.Server != nil { - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual.Server = []Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer{} - for _, oLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer := range o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual.Server { - nestedLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer := Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer{} - if oLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Misc != nil { - entry.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer"] = oLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Misc - } - if oLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Lifetime != nil { - nestedLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Lifetime = oLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Lifetime - } - if oLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Name != "" { - nestedLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Name = oLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Name - } - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual.Server = append(nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual.Server, nestedLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer) - } - } - } - } - } - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix != nil { - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix = &Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffix{} - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Misc != nil { - entry.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffix"] = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Misc + } + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix != nil { + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix = &Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffix{} + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Misc != nil { + entry.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffix"] = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Misc } if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Enable != nil { nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Enable = util.AsBool(o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Enable, nil) @@ -5676,12 +5521,6 @@ func (c *entryXmlContainer_11_0_2) Normalize() ([]*Entry, error) { if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Misc != nil { entry.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSource"] = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Misc } - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Dhcpv6 != nil { - nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Dhcpv6 = &Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceDhcpv6{} - if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Dhcpv6.Misc != nil { - entry.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceDhcpv6"] = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Dhcpv6.Misc - } - } if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Manual != nil { nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Manual = &Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManual{} if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Manual.Misc != nil { @@ -5704,6 +5543,12 @@ func (c *entryXmlContainer_11_0_2) Normalize() ([]*Entry, error) { } } } + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Dhcpv6 != nil { + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Dhcpv6 = &Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceDhcpv6{} + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Dhcpv6.Misc != nil { + entry.Misc["Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceDhcpv6"] = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Dhcpv6.Misc + } + } } } if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.EnableDad != nil { @@ -5731,6 +5576,12 @@ func (c *entryXmlContainer_11_0_2) Normalize() ([]*Entry, error) { if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.NsInterval != nil { nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.NsInterval = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.NsInterval } + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.ReachableTime != nil { + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.ReachableTime = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.ReachableTime + } + if o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DadAttempts != nil { + nestedLayer3.Ipv6.DhcpClient.NeighborDiscovery.DadAttempts = o.Layer3.Ipv6.DhcpClient.NeighborDiscovery.DadAttempts + } } if o.Layer3.Ipv6.DhcpClient.Preference != nil { nestedLayer3.Ipv6.DhcpClient.Preference = o.Layer3.Ipv6.DhcpClient.Preference @@ -5792,12 +5643,12 @@ func (c *entryXmlContainer_11_0_2) Normalize() ([]*Entry, error) { if o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes.Misc != nil { entry.Misc["Layer3Ipv6DhcpClientV6OptionsEnableYes"] = o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes.Misc } - if o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes.NonTempAddr != nil { - nestedLayer3.Ipv6.DhcpClient.V6Options.Enable.Yes.NonTempAddr = util.AsBool(o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes.NonTempAddr, nil) - } if o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes.TempAddr != nil { nestedLayer3.Ipv6.DhcpClient.V6Options.Enable.Yes.TempAddr = util.AsBool(o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes.TempAddr, nil) } + if o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes.NonTempAddr != nil { + nestedLayer3.Ipv6.DhcpClient.V6Options.Enable.Yes.NonTempAddr = util.AsBool(o.Layer3.Ipv6.DhcpClient.V6Options.Enable.Yes.NonTempAddr, nil) + } } } if o.Layer3.Ipv6.DhcpClient.V6Options.RapidCommit != nil { @@ -5813,30 +5664,145 @@ func (c *entryXmlContainer_11_0_2) Normalize() ([]*Entry, error) { if o.Layer3.Ipv6.DhcpClient.DefaultRouteMetric != nil { nestedLayer3.Ipv6.DhcpClient.DefaultRouteMetric = o.Layer3.Ipv6.DhcpClient.DefaultRouteMetric } + if o.Layer3.Ipv6.DhcpClient.Enable != nil { + nestedLayer3.Ipv6.DhcpClient.Enable = util.AsBool(o.Layer3.Ipv6.DhcpClient.Enable, nil) + } } if o.Layer3.Ipv6.Inherited != nil { nestedLayer3.Ipv6.Inherited = &Layer3Ipv6Inherited{} if o.Layer3.Ipv6.Inherited.Misc != nil { entry.Misc["Layer3Ipv6Inherited"] = o.Layer3.Ipv6.Inherited.Misc } - if o.Layer3.Ipv6.Inherited.Enable != nil { - nestedLayer3.Ipv6.Inherited.Enable = util.AsBool(o.Layer3.Ipv6.Inherited.Enable, nil) - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery = &Layer3Ipv6InheritedNeighborDiscovery{} - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.Misc != nil { - entry.Misc["Layer3Ipv6InheritedNeighborDiscovery"] = o.Layer3.Ipv6.Inherited.NeighborDiscovery.Misc - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement = &Layer3Ipv6InheritedNeighborDiscoveryRouterAdvertisement{} - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Misc != nil { - entry.Misc["Layer3Ipv6InheritedNeighborDiscoveryRouterAdvertisement"] = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Misc + if o.Layer3.Ipv6.Inherited.AssignAddr != nil { + nestedLayer3.Ipv6.Inherited.AssignAddr = []Layer3Ipv6InheritedAssignAddr{} + for _, oLayer3Ipv6InheritedAssignAddr := range o.Layer3.Ipv6.Inherited.AssignAddr { + nestedLayer3Ipv6InheritedAssignAddr := Layer3Ipv6InheritedAssignAddr{} + if oLayer3Ipv6InheritedAssignAddr.Misc != nil { + entry.Misc["Layer3Ipv6InheritedAssignAddr"] = oLayer3Ipv6InheritedAssignAddr.Misc } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck = util.AsBool(o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck, nil) + if oLayer3Ipv6InheritedAssignAddr.Type != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type = &Layer3Ipv6InheritedAssignAddrType{} + if oLayer3Ipv6InheritedAssignAddr.Type.Misc != nil { + entry.Misc["Layer3Ipv6InheritedAssignAddrType"] = oLayer3Ipv6InheritedAssignAddr.Type.Misc + } + if oLayer3Ipv6InheritedAssignAddr.Type.Gua != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Gua = &Layer3Ipv6InheritedAssignAddrTypeGua{} + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.Misc != nil { + entry.Misc["Layer3Ipv6InheritedAssignAddrTypeGua"] = oLayer3Ipv6InheritedAssignAddr.Type.Gua.Misc + } + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.EnableOnInterface != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.EnableOnInterface = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Gua.EnableOnInterface, nil) + } + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PrefixPool != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.PrefixPool = oLayer3Ipv6InheritedAssignAddr.Type.Gua.PrefixPool + } + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType = &Layer3Ipv6InheritedAssignAddrTypeGuaPoolType{} + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.Misc != nil { + entry.Misc["Layer3Ipv6InheritedAssignAddrTypeGuaPoolType"] = oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.Misc + } + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.Dynamic != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.Dynamic = &Layer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamic{} + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.Dynamic.Misc != nil { + entry.Misc["Layer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamic"] = oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.Dynamic.Misc + } + } + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId = &Layer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamicId{} + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId.Misc != nil { + entry.Misc["Layer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamicId"] = oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId.Misc + } + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId.Identifier != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId.Identifier = oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId.Identifier + } + } + } + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise = &Layer3Ipv6InheritedAssignAddrTypeGuaAdvertise{} + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.Misc != nil { + entry.Misc["Layer3Ipv6InheritedAssignAddrTypeGuaAdvertise"] = oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.Misc + } + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.OnlinkFlag != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.OnlinkFlag = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.OnlinkFlag, nil) + } + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.AutoConfigFlag != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.AutoConfigFlag = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.AutoConfigFlag, nil) + } + if oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.Enable != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.Enable = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.Enable, nil) + } + } + } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula = &Layer3Ipv6InheritedAssignAddrTypeUla{} + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Misc != nil { + entry.Misc["Layer3Ipv6InheritedAssignAddrTypeUla"] = oLayer3Ipv6InheritedAssignAddr.Type.Ula.Misc + } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.EnableOnInterface != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.EnableOnInterface = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Ula.EnableOnInterface, nil) + } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Address != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Address = oLayer3Ipv6InheritedAssignAddr.Type.Ula.Address + } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Prefix != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Prefix = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Ula.Prefix, nil) + } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Anycast != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Anycast = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Ula.Anycast, nil) + } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise = &Layer3Ipv6InheritedAssignAddrTypeUlaAdvertise{} + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.Misc != nil { + entry.Misc["Layer3Ipv6InheritedAssignAddrTypeUlaAdvertise"] = oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.Misc + } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.Enable != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.Enable = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.Enable, nil) + } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.ValidLifetime != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.ValidLifetime = oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.ValidLifetime + } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.PreferredLifetime != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.PreferredLifetime = oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.PreferredLifetime + } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.OnlinkFlag != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.OnlinkFlag = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.OnlinkFlag, nil) + } + if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.AutoConfigFlag != nil { + nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.AutoConfigFlag = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.AutoConfigFlag, nil) + } + } + } } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.HopLimit != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.HopLimit = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.HopLimit + if oLayer3Ipv6InheritedAssignAddr.Name != "" { + nestedLayer3Ipv6InheritedAssignAddr.Name = oLayer3Ipv6InheritedAssignAddr.Name + } + nestedLayer3.Ipv6.Inherited.AssignAddr = append(nestedLayer3.Ipv6.Inherited.AssignAddr, nestedLayer3Ipv6InheritedAssignAddr) + } + } + if o.Layer3.Ipv6.Inherited.Enable != nil { + nestedLayer3.Ipv6.Inherited.Enable = util.AsBool(o.Layer3.Ipv6.Inherited.Enable, nil) + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery = &Layer3Ipv6InheritedNeighborDiscovery{} + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.Misc != nil { + entry.Misc["Layer3Ipv6InheritedNeighborDiscovery"] = o.Layer3.Ipv6.Inherited.NeighborDiscovery.Misc + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.EnableDad != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.EnableDad = util.AsBool(o.Layer3.Ipv6.Inherited.NeighborDiscovery.EnableDad, nil) + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.NsInterval != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.NsInterval = o.Layer3.Ipv6.Inherited.NeighborDiscovery.NsInterval + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement = &Layer3Ipv6InheritedNeighborDiscoveryRouterAdvertisement{} + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Misc != nil { + entry.Misc["Layer3Ipv6InheritedNeighborDiscoveryRouterAdvertisement"] = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Misc + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Enable != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Enable = util.AsBool(o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Enable, nil) + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Lifetime != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Lifetime = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Lifetime } if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.LinkMtu != nil { nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.LinkMtu = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.LinkMtu @@ -5844,20 +5810,17 @@ func (c *entryXmlContainer_11_0_2) Normalize() ([]*Entry, error) { if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.MinInterval != nil { nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.MinInterval = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.MinInterval } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RouterPreference != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RouterPreference = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RouterPreference - } if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.ReachableTime != nil { nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.ReachableTime = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.ReachableTime } if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer != nil { nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Enable != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Enable = util.AsBool(o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Enable, nil) + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck = util.AsBool(o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck, nil) } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Lifetime != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Lifetime = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Lifetime + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.HopLimit != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.HopLimit = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.HopLimit } if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.ManagedFlag != nil { nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.ManagedFlag = util.AsBool(o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.ManagedFlag, nil) @@ -5868,53 +5831,13 @@ func (c *entryXmlContainer_11_0_2) Normalize() ([]*Entry, error) { if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.OtherFlag != nil { nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.OtherFlag = util.AsBool(o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.OtherFlag, nil) } - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsServer = &Layer3Ipv6InheritedNeighborDiscoveryDnsServer{} - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Misc != nil { - entry.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsServer"] = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Misc - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Enable != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Enable = util.AsBool(o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Enable, nil) - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source = &Layer3Ipv6InheritedNeighborDiscoveryDnsServerSource{} - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Misc != nil { - entry.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsServerSource"] = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Misc - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6 != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6 = &Layer3Ipv6InheritedNeighborDiscoveryDnsServerSourceDhcpv6{} - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6.Misc != nil { - entry.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsServerSourceDhcpv6"] = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6.Misc - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6.PrefixPool != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6.PrefixPool = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6.PrefixPool - } - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual = &Layer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManual{} - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual.Misc != nil { - entry.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManual"] = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual.Misc - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual.Server != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual.Server = []Layer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer{} - for _, oLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer := range o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual.Server { - nestedLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer := Layer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer{} - if oLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Misc != nil { - entry.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer"] = oLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Misc - } - if oLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Lifetime != nil { - nestedLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Lifetime = oLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Lifetime - } - if oLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Name != "" { - nestedLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Name = oLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Name - } - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual.Server = append(nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual.Server, nestedLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer) - } - } - } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RouterPreference != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RouterPreference = o.Layer3.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RouterPreference } } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DadAttempts != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DadAttempts = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DadAttempts + } if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix != nil { nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix = &Layer3Ipv6InheritedNeighborDiscoveryDnsSuffix{} if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsSuffix.Misc != nil { @@ -5961,9 +5884,6 @@ func (c *entryXmlContainer_11_0_2) Normalize() ([]*Entry, error) { } } } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.NsInterval != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.NsInterval = o.Layer3.Ipv6.Inherited.NeighborDiscovery.NsInterval - } if o.Layer3.Ipv6.Inherited.NeighborDiscovery.Neighbor != nil { nestedLayer3.Ipv6.Inherited.NeighborDiscovery.Neighbor = []Layer3Ipv6InheritedNeighborDiscoveryNeighbor{} for _, oLayer3Ipv6InheritedNeighborDiscoveryNeighbor := range o.Layer3.Ipv6.Inherited.NeighborDiscovery.Neighbor { @@ -5971,154 +5891,242 @@ func (c *entryXmlContainer_11_0_2) Normalize() ([]*Entry, error) { if oLayer3Ipv6InheritedNeighborDiscoveryNeighbor.Misc != nil { entry.Misc["Layer3Ipv6InheritedNeighborDiscoveryNeighbor"] = oLayer3Ipv6InheritedNeighborDiscoveryNeighbor.Misc } - if oLayer3Ipv6InheritedNeighborDiscoveryNeighbor.Name != "" { - nestedLayer3Ipv6InheritedNeighborDiscoveryNeighbor.Name = oLayer3Ipv6InheritedNeighborDiscoveryNeighbor.Name - } if oLayer3Ipv6InheritedNeighborDiscoveryNeighbor.HwAddress != nil { nestedLayer3Ipv6InheritedNeighborDiscoveryNeighbor.HwAddress = oLayer3Ipv6InheritedNeighborDiscoveryNeighbor.HwAddress } + if oLayer3Ipv6InheritedNeighborDiscoveryNeighbor.Name != "" { + nestedLayer3Ipv6InheritedNeighborDiscoveryNeighbor.Name = oLayer3Ipv6InheritedNeighborDiscoveryNeighbor.Name + } nestedLayer3.Ipv6.Inherited.NeighborDiscovery.Neighbor = append(nestedLayer3.Ipv6.Inherited.NeighborDiscovery.Neighbor, nestedLayer3Ipv6InheritedNeighborDiscoveryNeighbor) } } if o.Layer3.Ipv6.Inherited.NeighborDiscovery.ReachableTime != nil { nestedLayer3.Ipv6.Inherited.NeighborDiscovery.ReachableTime = o.Layer3.Ipv6.Inherited.NeighborDiscovery.ReachableTime } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DadAttempts != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DadAttempts = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DadAttempts - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.EnableDad != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.EnableDad = util.AsBool(o.Layer3.Ipv6.Inherited.NeighborDiscovery.EnableDad, nil) - } - if o.Layer3.Ipv6.Inherited.NeighborDiscovery.EnableNdpMonitor != nil { - nestedLayer3.Ipv6.Inherited.NeighborDiscovery.EnableNdpMonitor = util.AsBool(o.Layer3.Ipv6.Inherited.NeighborDiscovery.EnableNdpMonitor, nil) - } - } - if o.Layer3.Ipv6.Inherited.AssignAddr != nil { - nestedLayer3.Ipv6.Inherited.AssignAddr = []Layer3Ipv6InheritedAssignAddr{} - for _, oLayer3Ipv6InheritedAssignAddr := range o.Layer3.Ipv6.Inherited.AssignAddr { - nestedLayer3Ipv6InheritedAssignAddr := Layer3Ipv6InheritedAssignAddr{} - if oLayer3Ipv6InheritedAssignAddr.Misc != nil { - entry.Misc["Layer3Ipv6InheritedAssignAddr"] = oLayer3Ipv6InheritedAssignAddr.Misc + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsServer = &Layer3Ipv6InheritedNeighborDiscoveryDnsServer{} + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Misc != nil { + entry.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsServer"] = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Misc } - if oLayer3Ipv6InheritedAssignAddr.Type != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type = &Layer3Ipv6InheritedAssignAddrType{} - if oLayer3Ipv6InheritedAssignAddr.Type.Misc != nil { - entry.Misc["Layer3Ipv6InheritedAssignAddrType"] = oLayer3Ipv6InheritedAssignAddr.Type.Misc + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Enable != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Enable = util.AsBool(o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Enable, nil) + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source = &Layer3Ipv6InheritedNeighborDiscoveryDnsServerSource{} + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Misc != nil { + entry.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsServerSource"] = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Misc } - if oLayer3Ipv6InheritedAssignAddr.Type.Gua != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Gua = &Layer3Ipv6InheritedAssignAddrTypeGua{} - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.Misc != nil { - entry.Misc["Layer3Ipv6InheritedAssignAddrTypeGua"] = oLayer3Ipv6InheritedAssignAddr.Type.Gua.Misc + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6 != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6 = &Layer3Ipv6InheritedNeighborDiscoveryDnsServerSourceDhcpv6{} + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6.Misc != nil { + entry.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsServerSourceDhcpv6"] = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6.Misc } - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.EnableOnInterface != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.EnableOnInterface = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Gua.EnableOnInterface, nil) + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6.PrefixPool != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6.PrefixPool = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6.PrefixPool } - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PrefixPool != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.PrefixPool = oLayer3Ipv6InheritedAssignAddr.Type.Gua.PrefixPool + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual = &Layer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManual{} + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual.Misc != nil { + entry.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManual"] = o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual.Misc } - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType = &Layer3Ipv6InheritedAssignAddrTypeGuaPoolType{} - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.Misc != nil { - entry.Misc["Layer3Ipv6InheritedAssignAddrTypeGuaPoolType"] = oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.Misc - } - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.Dynamic != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.Dynamic = &Layer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamic{} - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.Dynamic.Misc != nil { - entry.Misc["Layer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamic"] = oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.Dynamic.Misc + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual.Server != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual.Server = []Layer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer{} + for _, oLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer := range o.Layer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual.Server { + nestedLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer := Layer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer{} + if oLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Misc != nil { + entry.Misc["Layer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer"] = oLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Misc } - } - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId = &Layer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamicId{} - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId.Misc != nil { - entry.Misc["Layer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamicId"] = oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId.Misc + if oLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Lifetime != nil { + nestedLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Lifetime = oLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Lifetime } - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId.Identifier != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId.Identifier = oLayer3Ipv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId.Identifier + if oLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Name != "" { + nestedLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Name = oLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Name } - } - } - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise = &Layer3Ipv6InheritedAssignAddrTypeGuaAdvertise{} - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.Misc != nil { - entry.Misc["Layer3Ipv6InheritedAssignAddrTypeGuaAdvertise"] = oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.Misc - } - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.Enable != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.Enable = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.Enable, nil) - } - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.OnlinkFlag != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.OnlinkFlag = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.OnlinkFlag, nil) - } - if oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.AutoConfigFlag != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.AutoConfigFlag = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Gua.Advertise.AutoConfigFlag, nil) + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual.Server = append(nestedLayer3.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual.Server, nestedLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer) } } } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula = &Layer3Ipv6InheritedAssignAddrTypeUla{} - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Misc != nil { - entry.Misc["Layer3Ipv6InheritedAssignAddrTypeUla"] = oLayer3Ipv6InheritedAssignAddr.Type.Ula.Misc + } + } + if o.Layer3.Ipv6.Inherited.NeighborDiscovery.EnableNdpMonitor != nil { + nestedLayer3.Ipv6.Inherited.NeighborDiscovery.EnableNdpMonitor = util.AsBool(o.Layer3.Ipv6.Inherited.NeighborDiscovery.EnableNdpMonitor, nil) + } + } + } + if o.Layer3.Ipv6.Address != nil { + nestedLayer3.Ipv6.Address = []Layer3Ipv6Address{} + for _, oLayer3Ipv6Address := range o.Layer3.Ipv6.Address { + nestedLayer3Ipv6Address := Layer3Ipv6Address{} + if oLayer3Ipv6Address.Misc != nil { + entry.Misc["Layer3Ipv6Address"] = oLayer3Ipv6Address.Misc + } + if oLayer3Ipv6Address.EnableOnInterface != nil { + nestedLayer3Ipv6Address.EnableOnInterface = util.AsBool(oLayer3Ipv6Address.EnableOnInterface, nil) + } + if oLayer3Ipv6Address.Prefix != nil { + nestedLayer3Ipv6Address.Prefix = &Layer3Ipv6AddressPrefix{} + if oLayer3Ipv6Address.Prefix.Misc != nil { + entry.Misc["Layer3Ipv6AddressPrefix"] = oLayer3Ipv6Address.Prefix.Misc + } + } + if oLayer3Ipv6Address.Anycast != nil { + nestedLayer3Ipv6Address.Anycast = &Layer3Ipv6AddressAnycast{} + if oLayer3Ipv6Address.Anycast.Misc != nil { + entry.Misc["Layer3Ipv6AddressAnycast"] = oLayer3Ipv6Address.Anycast.Misc + } + } + if oLayer3Ipv6Address.Advertise != nil { + nestedLayer3Ipv6Address.Advertise = &Layer3Ipv6AddressAdvertise{} + if oLayer3Ipv6Address.Advertise.Misc != nil { + entry.Misc["Layer3Ipv6AddressAdvertise"] = oLayer3Ipv6Address.Advertise.Misc + } + if oLayer3Ipv6Address.Advertise.Enable != nil { + nestedLayer3Ipv6Address.Advertise.Enable = util.AsBool(oLayer3Ipv6Address.Advertise.Enable, nil) + } + if oLayer3Ipv6Address.Advertise.ValidLifetime != nil { + nestedLayer3Ipv6Address.Advertise.ValidLifetime = oLayer3Ipv6Address.Advertise.ValidLifetime + } + if oLayer3Ipv6Address.Advertise.PreferredLifetime != nil { + nestedLayer3Ipv6Address.Advertise.PreferredLifetime = oLayer3Ipv6Address.Advertise.PreferredLifetime + } + if oLayer3Ipv6Address.Advertise.OnlinkFlag != nil { + nestedLayer3Ipv6Address.Advertise.OnlinkFlag = util.AsBool(oLayer3Ipv6Address.Advertise.OnlinkFlag, nil) + } + if oLayer3Ipv6Address.Advertise.AutoConfigFlag != nil { + nestedLayer3Ipv6Address.Advertise.AutoConfigFlag = util.AsBool(oLayer3Ipv6Address.Advertise.AutoConfigFlag, nil) + } + } + if oLayer3Ipv6Address.Name != "" { + nestedLayer3Ipv6Address.Name = oLayer3Ipv6Address.Name + } + nestedLayer3.Ipv6.Address = append(nestedLayer3.Ipv6.Address, nestedLayer3Ipv6Address) + } + } + if o.Layer3.Ipv6.Enabled != nil { + nestedLayer3.Ipv6.Enabled = util.AsBool(o.Layer3.Ipv6.Enabled, nil) + } + if o.Layer3.Ipv6.InterfaceId != nil { + nestedLayer3.Ipv6.InterfaceId = o.Layer3.Ipv6.InterfaceId + } + if o.Layer3.Ipv6.NeighborDiscovery != nil { + nestedLayer3.Ipv6.NeighborDiscovery = &Layer3Ipv6NeighborDiscovery{} + if o.Layer3.Ipv6.NeighborDiscovery.Misc != nil { + entry.Misc["Layer3Ipv6NeighborDiscovery"] = o.Layer3.Ipv6.NeighborDiscovery.Misc + } + if o.Layer3.Ipv6.NeighborDiscovery.DadAttempts != nil { + nestedLayer3.Ipv6.NeighborDiscovery.DadAttempts = o.Layer3.Ipv6.NeighborDiscovery.DadAttempts + } + if o.Layer3.Ipv6.NeighborDiscovery.EnableDad != nil { + nestedLayer3.Ipv6.NeighborDiscovery.EnableDad = util.AsBool(o.Layer3.Ipv6.NeighborDiscovery.EnableDad, nil) + } + if o.Layer3.Ipv6.NeighborDiscovery.EnableNdpMonitor != nil { + nestedLayer3.Ipv6.NeighborDiscovery.EnableNdpMonitor = util.AsBool(o.Layer3.Ipv6.NeighborDiscovery.EnableNdpMonitor, nil) + } + if o.Layer3.Ipv6.NeighborDiscovery.Neighbor != nil { + nestedLayer3.Ipv6.NeighborDiscovery.Neighbor = []Layer3Ipv6NeighborDiscoveryNeighbor{} + for _, oLayer3Ipv6NeighborDiscoveryNeighbor := range o.Layer3.Ipv6.NeighborDiscovery.Neighbor { + nestedLayer3Ipv6NeighborDiscoveryNeighbor := Layer3Ipv6NeighborDiscoveryNeighbor{} + if oLayer3Ipv6NeighborDiscoveryNeighbor.Misc != nil { + entry.Misc["Layer3Ipv6NeighborDiscoveryNeighbor"] = oLayer3Ipv6NeighborDiscoveryNeighbor.Misc + } + if oLayer3Ipv6NeighborDiscoveryNeighbor.HwAddress != nil { + nestedLayer3Ipv6NeighborDiscoveryNeighbor.HwAddress = oLayer3Ipv6NeighborDiscoveryNeighbor.HwAddress + } + if oLayer3Ipv6NeighborDiscoveryNeighbor.Name != "" { + nestedLayer3Ipv6NeighborDiscoveryNeighbor.Name = oLayer3Ipv6NeighborDiscoveryNeighbor.Name + } + nestedLayer3.Ipv6.NeighborDiscovery.Neighbor = append(nestedLayer3.Ipv6.NeighborDiscovery.Neighbor, nestedLayer3Ipv6NeighborDiscoveryNeighbor) + } + } + if o.Layer3.Ipv6.NeighborDiscovery.NsInterval != nil { + nestedLayer3.Ipv6.NeighborDiscovery.NsInterval = o.Layer3.Ipv6.NeighborDiscovery.NsInterval + } + if o.Layer3.Ipv6.NeighborDiscovery.ReachableTime != nil { + nestedLayer3.Ipv6.NeighborDiscovery.ReachableTime = o.Layer3.Ipv6.NeighborDiscovery.ReachableTime + } + if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement != nil { + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement = &Layer3Ipv6NeighborDiscoveryRouterAdvertisement{} + if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Misc != nil { + entry.Misc["Layer3Ipv6NeighborDiscoveryRouterAdvertisement"] = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Misc + } + if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck != nil { + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck = util.AsBool(o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck, nil) + } + if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.HopLimit != nil { + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.HopLimit = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.HopLimit + } + if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.LinkMtu != nil { + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.LinkMtu = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.LinkMtu + } + if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer != nil { + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer + } + if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.RouterPreference != nil { + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.RouterPreference = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.RouterPreference + } + if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport != nil { + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport = &Layer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupport{} + if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Misc != nil { + entry.Misc["Layer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupport"] = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Misc + } + if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Enable != nil { + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Enable = util.AsBool(o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Enable, nil) + } + if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Server != nil { + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Server = []Layer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportServer{} + for _, oLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportServer := range o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Server { + nestedLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportServer := Layer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportServer{} + if oLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportServer.Misc != nil { + entry.Misc["Layer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportServer"] = oLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportServer.Misc } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.EnableOnInterface != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.EnableOnInterface = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Ula.EnableOnInterface, nil) + if oLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportServer.Lifetime != nil { + nestedLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportServer.Lifetime = oLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportServer.Lifetime } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Address != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Address = oLayer3Ipv6InheritedAssignAddr.Type.Ula.Address + if oLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportServer.Name != "" { + nestedLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportServer.Name = oLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportServer.Name } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Prefix != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Prefix = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Ula.Prefix, nil) + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Server = append(nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Server, nestedLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportServer) + } + } + if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Suffix != nil { + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Suffix = []Layer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix{} + for _, oLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix := range o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Suffix { + nestedLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix := Layer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix{} + if oLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix.Misc != nil { + entry.Misc["Layer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix"] = oLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix.Misc } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Anycast != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Anycast = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Ula.Anycast, nil) + if oLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix.Lifetime != nil { + nestedLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix.Lifetime = oLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix.Lifetime } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise = &Layer3Ipv6InheritedAssignAddrTypeUlaAdvertise{} - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.Misc != nil { - entry.Misc["Layer3Ipv6InheritedAssignAddrTypeUlaAdvertise"] = oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.Misc - } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.Enable != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.Enable = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.Enable, nil) - } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.ValidLifetime != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.ValidLifetime = oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.ValidLifetime - } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.PreferredLifetime != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.PreferredLifetime = oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.PreferredLifetime - } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.OnlinkFlag != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.OnlinkFlag = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.OnlinkFlag, nil) - } - if oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.AutoConfigFlag != nil { - nestedLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.AutoConfigFlag = util.AsBool(oLayer3Ipv6InheritedAssignAddr.Type.Ula.Advertise.AutoConfigFlag, nil) - } + if oLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix.Name != "" { + nestedLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix.Name = oLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix.Name } + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Suffix = append(nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Suffix, nestedLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix) } } - if oLayer3Ipv6InheritedAssignAddr.Name != "" { - nestedLayer3Ipv6InheritedAssignAddr.Name = oLayer3Ipv6InheritedAssignAddr.Name - } - nestedLayer3.Ipv6.Inherited.AssignAddr = append(nestedLayer3.Ipv6.Inherited.AssignAddr, nestedLayer3Ipv6InheritedAssignAddr) } - } - } - } - if o.Layer3.Lldp != nil { - nestedLayer3.Lldp = &Layer3Lldp{} - if o.Layer3.Lldp.Misc != nil { - entry.Misc["Layer3Lldp"] = o.Layer3.Lldp.Misc - } - if o.Layer3.Lldp.Profile != nil { - nestedLayer3.Lldp.Profile = o.Layer3.Lldp.Profile - } - if o.Layer3.Lldp.Enable != nil { - nestedLayer3.Lldp.Enable = util.AsBool(o.Layer3.Lldp.Enable, nil) - } - if o.Layer3.Lldp.HighAvailability != nil { - nestedLayer3.Lldp.HighAvailability = &Layer3LldpHighAvailability{} - if o.Layer3.Lldp.HighAvailability.Misc != nil { - entry.Misc["Layer3LldpHighAvailability"] = o.Layer3.Lldp.HighAvailability.Misc - } - if o.Layer3.Lldp.HighAvailability.PassivePreNegotiation != nil { - nestedLayer3.Lldp.HighAvailability.PassivePreNegotiation = util.AsBool(o.Layer3.Lldp.HighAvailability.PassivePreNegotiation, nil) + if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Enable != nil { + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Enable = util.AsBool(o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Enable, nil) + } + if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Lifetime != nil { + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Lifetime = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.Lifetime + } + if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.ManagedFlag != nil { + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.ManagedFlag = util.AsBool(o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.ManagedFlag, nil) + } + if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MaxInterval != nil { + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MaxInterval = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MaxInterval + } + if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MinInterval != nil { + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MinInterval = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.MinInterval + } + if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.OtherFlag != nil { + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.OtherFlag = util.AsBool(o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.OtherFlag, nil) + } + if o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.ReachableTime != nil { + nestedLayer3.Ipv6.NeighborDiscovery.RouterAdvertisement.ReachableTime = o.Layer3.Ipv6.NeighborDiscovery.RouterAdvertisement.ReachableTime + } } } } @@ -6141,6 +6149,12 @@ func (c *entryXmlContainer_11_0_2) Normalize() ([]*Entry, error) { if o.Layer3.SdwanLinkSettings.UpstreamNat.Enable != nil { nestedLayer3.SdwanLinkSettings.UpstreamNat.Enable = util.AsBool(o.Layer3.SdwanLinkSettings.UpstreamNat.Enable, nil) } + if o.Layer3.SdwanLinkSettings.UpstreamNat.Ddns != nil { + nestedLayer3.SdwanLinkSettings.UpstreamNat.Ddns = &Layer3SdwanLinkSettingsUpstreamNatDdns{} + if o.Layer3.SdwanLinkSettings.UpstreamNat.Ddns.Misc != nil { + entry.Misc["Layer3SdwanLinkSettingsUpstreamNatDdns"] = o.Layer3.SdwanLinkSettings.UpstreamNat.Ddns.Misc + } + } if o.Layer3.SdwanLinkSettings.UpstreamNat.StaticIp != nil { nestedLayer3.SdwanLinkSettings.UpstreamNat.StaticIp = &Layer3SdwanLinkSettingsUpstreamNatStaticIp{} if o.Layer3.SdwanLinkSettings.UpstreamNat.StaticIp.Misc != nil { @@ -6153,30 +6167,21 @@ func (c *entryXmlContainer_11_0_2) Normalize() ([]*Entry, error) { nestedLayer3.SdwanLinkSettings.UpstreamNat.StaticIp.IpAddress = o.Layer3.SdwanLinkSettings.UpstreamNat.StaticIp.IpAddress } } - if o.Layer3.SdwanLinkSettings.UpstreamNat.Ddns != nil { - nestedLayer3.SdwanLinkSettings.UpstreamNat.Ddns = &Layer3SdwanLinkSettingsUpstreamNatDdns{} - if o.Layer3.SdwanLinkSettings.UpstreamNat.Ddns.Misc != nil { - entry.Misc["Layer3SdwanLinkSettingsUpstreamNatDdns"] = o.Layer3.SdwanLinkSettings.UpstreamNat.Ddns.Misc - } - } } } - if o.Layer3.UntaggedSubInterface != nil { - nestedLayer3.UntaggedSubInterface = util.AsBool(o.Layer3.UntaggedSubInterface, nil) - } - if o.Layer3.Bonjour != nil { - nestedLayer3.Bonjour = &Layer3Bonjour{} - if o.Layer3.Bonjour.Misc != nil { - entry.Misc["Layer3Bonjour"] = o.Layer3.Bonjour.Misc + if o.Layer3.AdjustTcpMss != nil { + nestedLayer3.AdjustTcpMss = &Layer3AdjustTcpMss{} + if o.Layer3.AdjustTcpMss.Misc != nil { + entry.Misc["Layer3AdjustTcpMss"] = o.Layer3.AdjustTcpMss.Misc } - if o.Layer3.Bonjour.Enable != nil { - nestedLayer3.Bonjour.Enable = util.AsBool(o.Layer3.Bonjour.Enable, nil) + if o.Layer3.AdjustTcpMss.Enable != nil { + nestedLayer3.AdjustTcpMss.Enable = util.AsBool(o.Layer3.AdjustTcpMss.Enable, nil) } - if o.Layer3.Bonjour.GroupId != nil { - nestedLayer3.Bonjour.GroupId = o.Layer3.Bonjour.GroupId + if o.Layer3.AdjustTcpMss.Ipv4MssAdjustment != nil { + nestedLayer3.AdjustTcpMss.Ipv4MssAdjustment = o.Layer3.AdjustTcpMss.Ipv4MssAdjustment } - if o.Layer3.Bonjour.TtlCheck != nil { - nestedLayer3.Bonjour.TtlCheck = util.AsBool(o.Layer3.Bonjour.TtlCheck, nil) + if o.Layer3.AdjustTcpMss.Ipv6MssAdjustment != nil { + nestedLayer3.AdjustTcpMss.Ipv6MssAdjustment = o.Layer3.AdjustTcpMss.Ipv6MssAdjustment } } if o.Layer3.DdnsConfig != nil { @@ -6184,6 +6189,18 @@ func (c *entryXmlContainer_11_0_2) Normalize() ([]*Entry, error) { if o.Layer3.DdnsConfig.Misc != nil { entry.Misc["Layer3DdnsConfig"] = o.Layer3.DdnsConfig.Misc } + if o.Layer3.DdnsConfig.DdnsCertProfile != nil { + nestedLayer3.DdnsConfig.DdnsCertProfile = o.Layer3.DdnsConfig.DdnsCertProfile + } + if o.Layer3.DdnsConfig.DdnsEnabled != nil { + nestedLayer3.DdnsConfig.DdnsEnabled = util.AsBool(o.Layer3.DdnsConfig.DdnsEnabled, nil) + } + if o.Layer3.DdnsConfig.DdnsHostname != nil { + nestedLayer3.DdnsConfig.DdnsHostname = o.Layer3.DdnsConfig.DdnsHostname + } + if o.Layer3.DdnsConfig.DdnsIp != nil { + nestedLayer3.DdnsConfig.DdnsIp = util.MemToStr(o.Layer3.DdnsConfig.DdnsIp) + } if o.Layer3.DdnsConfig.DdnsIpv6 != nil { nestedLayer3.DdnsConfig.DdnsIpv6 = util.MemToStr(o.Layer3.DdnsConfig.DdnsIpv6) } @@ -6209,33 +6226,12 @@ func (c *entryXmlContainer_11_0_2) Normalize() ([]*Entry, error) { nestedLayer3.DdnsConfig.DdnsVendorConfig = append(nestedLayer3.DdnsConfig.DdnsVendorConfig, nestedLayer3DdnsConfigDdnsVendorConfig) } } - if o.Layer3.DdnsConfig.DdnsCertProfile != nil { - nestedLayer3.DdnsConfig.DdnsCertProfile = o.Layer3.DdnsConfig.DdnsCertProfile - } - if o.Layer3.DdnsConfig.DdnsEnabled != nil { - nestedLayer3.DdnsConfig.DdnsEnabled = util.AsBool(o.Layer3.DdnsConfig.DdnsEnabled, nil) - } - if o.Layer3.DdnsConfig.DdnsHostname != nil { - nestedLayer3.DdnsConfig.DdnsHostname = o.Layer3.DdnsConfig.DdnsHostname - } - if o.Layer3.DdnsConfig.DdnsIp != nil { - nestedLayer3.DdnsConfig.DdnsIp = util.MemToStr(o.Layer3.DdnsConfig.DdnsIp) - } - } - if o.Layer3.DfIgnore != nil { - nestedLayer3.DfIgnore = util.AsBool(o.Layer3.DfIgnore, nil) } if o.Layer3.Pppoe != nil { nestedLayer3.Pppoe = &Layer3Pppoe{} if o.Layer3.Pppoe.Misc != nil { entry.Misc["Layer3Pppoe"] = o.Layer3.Pppoe.Misc } - if o.Layer3.Pppoe.DefaultRouteMetric != nil { - nestedLayer3.Pppoe.DefaultRouteMetric = o.Layer3.Pppoe.DefaultRouteMetric - } - if o.Layer3.Pppoe.Enable != nil { - nestedLayer3.Pppoe.Enable = util.AsBool(o.Layer3.Pppoe.Enable, nil) - } if o.Layer3.Pppoe.Password != nil { nestedLayer3.Pppoe.Password = o.Layer3.Pppoe.Password } @@ -6248,21 +6244,9 @@ func (c *entryXmlContainer_11_0_2) Normalize() ([]*Entry, error) { nestedLayer3.Pppoe.StaticAddress.Ip = o.Layer3.Pppoe.StaticAddress.Ip } } - if o.Layer3.Pppoe.AccessConcentrator != nil { - nestedLayer3.Pppoe.AccessConcentrator = o.Layer3.Pppoe.AccessConcentrator - } - if o.Layer3.Pppoe.CreateDefaultRoute != nil { - nestedLayer3.Pppoe.CreateDefaultRoute = util.AsBool(o.Layer3.Pppoe.CreateDefaultRoute, nil) - } - if o.Layer3.Pppoe.Service != nil { - nestedLayer3.Pppoe.Service = o.Layer3.Pppoe.Service - } if o.Layer3.Pppoe.Username != nil { nestedLayer3.Pppoe.Username = o.Layer3.Pppoe.Username } - if o.Layer3.Pppoe.Authentication != nil { - nestedLayer3.Pppoe.Authentication = o.Layer3.Pppoe.Authentication - } if o.Layer3.Pppoe.Passive != nil { nestedLayer3.Pppoe.Passive = &Layer3PppoePassive{} if o.Layer3.Pppoe.Passive.Misc != nil { @@ -6272,60 +6256,58 @@ func (c *entryXmlContainer_11_0_2) Normalize() ([]*Entry, error) { nestedLayer3.Pppoe.Passive.Enable = util.AsBool(o.Layer3.Pppoe.Passive.Enable, nil) } } - } - if o.Layer3.DecryptForward != nil { - nestedLayer3.DecryptForward = util.AsBool(o.Layer3.DecryptForward, nil) - } - if o.Layer3.DhcpClient != nil { - nestedLayer3.DhcpClient = &Layer3DhcpClient{} - if o.Layer3.DhcpClient.Misc != nil { - entry.Misc["Layer3DhcpClient"] = o.Layer3.DhcpClient.Misc + if o.Layer3.Pppoe.Authentication != nil { + nestedLayer3.Pppoe.Authentication = o.Layer3.Pppoe.Authentication } - if o.Layer3.DhcpClient.CreateDefaultRoute != nil { - nestedLayer3.DhcpClient.CreateDefaultRoute = util.AsBool(o.Layer3.DhcpClient.CreateDefaultRoute, nil) + if o.Layer3.Pppoe.CreateDefaultRoute != nil { + nestedLayer3.Pppoe.CreateDefaultRoute = util.AsBool(o.Layer3.Pppoe.CreateDefaultRoute, nil) } - if o.Layer3.DhcpClient.DefaultRouteMetric != nil { - nestedLayer3.DhcpClient.DefaultRouteMetric = o.Layer3.DhcpClient.DefaultRouteMetric + if o.Layer3.Pppoe.DefaultRouteMetric != nil { + nestedLayer3.Pppoe.DefaultRouteMetric = o.Layer3.Pppoe.DefaultRouteMetric } - if o.Layer3.DhcpClient.Enable != nil { - nestedLayer3.DhcpClient.Enable = util.AsBool(o.Layer3.DhcpClient.Enable, nil) + if o.Layer3.Pppoe.Enable != nil { + nestedLayer3.Pppoe.Enable = util.AsBool(o.Layer3.Pppoe.Enable, nil) } - if o.Layer3.DhcpClient.SendHostname != nil { - nestedLayer3.DhcpClient.SendHostname = &Layer3DhcpClientSendHostname{} - if o.Layer3.DhcpClient.SendHostname.Misc != nil { - entry.Misc["Layer3DhcpClientSendHostname"] = o.Layer3.DhcpClient.SendHostname.Misc + if o.Layer3.Pppoe.Service != nil { + nestedLayer3.Pppoe.Service = o.Layer3.Pppoe.Service + } + if o.Layer3.Pppoe.AccessConcentrator != nil { + nestedLayer3.Pppoe.AccessConcentrator = o.Layer3.Pppoe.AccessConcentrator + } + } + if o.Layer3.Arp != nil { + nestedLayer3.Arp = []Layer3Arp{} + for _, oLayer3Arp := range o.Layer3.Arp { + nestedLayer3Arp := Layer3Arp{} + if oLayer3Arp.Misc != nil { + entry.Misc["Layer3Arp"] = oLayer3Arp.Misc } - if o.Layer3.DhcpClient.SendHostname.Enable != nil { - nestedLayer3.DhcpClient.SendHostname.Enable = util.AsBool(o.Layer3.DhcpClient.SendHostname.Enable, nil) + if oLayer3Arp.HwAddress != nil { + nestedLayer3Arp.HwAddress = oLayer3Arp.HwAddress } - if o.Layer3.DhcpClient.SendHostname.Hostname != nil { - nestedLayer3.DhcpClient.SendHostname.Hostname = o.Layer3.DhcpClient.SendHostname.Hostname + if oLayer3Arp.Name != "" { + nestedLayer3Arp.Name = oLayer3Arp.Name } + nestedLayer3.Arp = append(nestedLayer3.Arp, nestedLayer3Arp) } } - if o.Layer3.NdpProxy != nil { - nestedLayer3.NdpProxy = &Layer3NdpProxy{} - if o.Layer3.NdpProxy.Misc != nil { - entry.Misc["Layer3NdpProxy"] = o.Layer3.NdpProxy.Misc - } - if o.Layer3.NdpProxy.Address != nil { - nestedLayer3.NdpProxy.Address = []Layer3NdpProxyAddress{} - for _, oLayer3NdpProxyAddress := range o.Layer3.NdpProxy.Address { - nestedLayer3NdpProxyAddress := Layer3NdpProxyAddress{} - if oLayer3NdpProxyAddress.Misc != nil { - entry.Misc["Layer3NdpProxyAddress"] = oLayer3NdpProxyAddress.Misc - } - if oLayer3NdpProxyAddress.Negate != nil { - nestedLayer3NdpProxyAddress.Negate = util.AsBool(oLayer3NdpProxyAddress.Negate, nil) - } - if oLayer3NdpProxyAddress.Name != "" { - nestedLayer3NdpProxyAddress.Name = oLayer3NdpProxyAddress.Name - } - nestedLayer3.NdpProxy.Address = append(nestedLayer3.NdpProxy.Address, nestedLayer3NdpProxyAddress) + if o.Layer3.DfIgnore != nil { + nestedLayer3.DfIgnore = util.AsBool(o.Layer3.DfIgnore, nil) + } + if o.Layer3.Ip != nil { + nestedLayer3.Ip = []Layer3Ip{} + for _, oLayer3Ip := range o.Layer3.Ip { + nestedLayer3Ip := Layer3Ip{} + if oLayer3Ip.Misc != nil { + entry.Misc["Layer3Ip"] = oLayer3Ip.Misc } - } - if o.Layer3.NdpProxy.Enabled != nil { - nestedLayer3.NdpProxy.Enabled = util.AsBool(o.Layer3.NdpProxy.Enabled, nil) + if oLayer3Ip.SdwanGateway != nil { + nestedLayer3Ip.SdwanGateway = oLayer3Ip.SdwanGateway + } + if oLayer3Ip.Name != "" { + nestedLayer3Ip.Name = oLayer3Ip.Name + } + nestedLayer3.Ip = append(nestedLayer3.Ip, nestedLayer3Ip) } } if o.Layer3.NetflowProfile != nil { @@ -6334,6 +6316,24 @@ func (c *entryXmlContainer_11_0_2) Normalize() ([]*Entry, error) { if o.Layer3.ClusterInterconnect != nil { nestedLayer3.ClusterInterconnect = util.AsBool(o.Layer3.ClusterInterconnect, nil) } + if o.Layer3.TrafficInterconnect != nil { + nestedLayer3.TrafficInterconnect = util.AsBool(o.Layer3.TrafficInterconnect, nil) + } + if o.Layer3.Bonjour != nil { + nestedLayer3.Bonjour = &Layer3Bonjour{} + if o.Layer3.Bonjour.Misc != nil { + entry.Misc["Layer3Bonjour"] = o.Layer3.Bonjour.Misc + } + if o.Layer3.Bonjour.TtlCheck != nil { + nestedLayer3.Bonjour.TtlCheck = util.AsBool(o.Layer3.Bonjour.TtlCheck, nil) + } + if o.Layer3.Bonjour.Enable != nil { + nestedLayer3.Bonjour.Enable = util.AsBool(o.Layer3.Bonjour.Enable, nil) + } + if o.Layer3.Bonjour.GroupId != nil { + nestedLayer3.Bonjour.GroupId = o.Layer3.Bonjour.GroupId + } + } } entry.Layer3 = nestedLayer3 @@ -6379,29 +6379,11 @@ func (c *entryXmlContainer_11_0_2) Normalize() ([]*Entry, error) { if o.VirtualWire.Misc != nil { entry.Misc["VirtualWire"] = o.VirtualWire.Misc } - if o.VirtualWire.Lacp != nil { - nestedVirtualWire.Lacp = &VirtualWireLacp{} - if o.VirtualWire.Lacp.Misc != nil { - entry.Misc["VirtualWireLacp"] = o.VirtualWire.Lacp.Misc - } - if o.VirtualWire.Lacp.HighAvailability != nil { - nestedVirtualWire.Lacp.HighAvailability = &VirtualWireLacpHighAvailability{} - if o.VirtualWire.Lacp.HighAvailability.Misc != nil { - entry.Misc["VirtualWireLacpHighAvailability"] = o.VirtualWire.Lacp.HighAvailability.Misc - } - if o.VirtualWire.Lacp.HighAvailability.PassivePreNegotiation != nil { - nestedVirtualWire.Lacp.HighAvailability.PassivePreNegotiation = util.AsBool(o.VirtualWire.Lacp.HighAvailability.PassivePreNegotiation, nil) - } - } - } if o.VirtualWire.Lldp != nil { nestedVirtualWire.Lldp = &VirtualWireLldp{} if o.VirtualWire.Lldp.Misc != nil { entry.Misc["VirtualWireLldp"] = o.VirtualWire.Lldp.Misc } - if o.VirtualWire.Lldp.Profile != nil { - nestedVirtualWire.Lldp.Profile = o.VirtualWire.Lldp.Profile - } if o.VirtualWire.Lldp.Enable != nil { nestedVirtualWire.Lldp.Enable = util.AsBool(o.VirtualWire.Lldp.Enable, nil) } @@ -6414,10 +6396,28 @@ func (c *entryXmlContainer_11_0_2) Normalize() ([]*Entry, error) { nestedVirtualWire.Lldp.HighAvailability.PassivePreNegotiation = util.AsBool(o.VirtualWire.Lldp.HighAvailability.PassivePreNegotiation, nil) } } + if o.VirtualWire.Lldp.Profile != nil { + nestedVirtualWire.Lldp.Profile = o.VirtualWire.Lldp.Profile + } + } + if o.VirtualWire.NetflowProfile != nil { + nestedVirtualWire.NetflowProfile = o.VirtualWire.NetflowProfile + } + if o.VirtualWire.Lacp != nil { + nestedVirtualWire.Lacp = &VirtualWireLacp{} + if o.VirtualWire.Lacp.Misc != nil { + entry.Misc["VirtualWireLacp"] = o.VirtualWire.Lacp.Misc + } + if o.VirtualWire.Lacp.HighAvailability != nil { + nestedVirtualWire.Lacp.HighAvailability = &VirtualWireLacpHighAvailability{} + if o.VirtualWire.Lacp.HighAvailability.Misc != nil { + entry.Misc["VirtualWireLacpHighAvailability"] = o.VirtualWire.Lacp.HighAvailability.Misc + } + if o.VirtualWire.Lacp.HighAvailability.PassivePreNegotiation != nil { + nestedVirtualWire.Lacp.HighAvailability.PassivePreNegotiation = util.AsBool(o.VirtualWire.Lacp.HighAvailability.PassivePreNegotiation, nil) + } + } } - if o.VirtualWire.NetflowProfile != nil { - nestedVirtualWire.NetflowProfile = o.VirtualWire.NetflowProfile - } } entry.VirtualWire = nestedVirtualWire @@ -6508,6 +6508,14 @@ func matchPoe(a *Poe, b *Poe) bool { } return true } +func matchDecryptMirror(a *DecryptMirror, b *DecryptMirror) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + return true +} func matchHa(a *Ha, b *Ha) bool { if a == nil && b != nil || a != nil && b == nil { return false @@ -6575,6 +6583,40 @@ func matchLayer3AdjustTcpMss(a *Layer3AdjustTcpMss, b *Layer3AdjustTcpMss) bool } return true } +func matchLayer3DhcpClientSendHostname(a *Layer3DhcpClientSendHostname, b *Layer3DhcpClientSendHostname) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + if !util.BoolsMatch(a.Enable, b.Enable) { + return false + } + if !util.StringsMatch(a.Hostname, b.Hostname) { + return false + } + return true +} +func matchLayer3DhcpClient(a *Layer3DhcpClient, b *Layer3DhcpClient) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + if !util.Ints64Match(a.DefaultRouteMetric, b.DefaultRouteMetric) { + return false + } + if !util.BoolsMatch(a.Enable, b.Enable) { + return false + } + if !matchLayer3DhcpClientSendHostname(a.SendHostname, b.SendHostname) { + return false + } + if !util.BoolsMatch(a.CreateDefaultRoute, b.CreateDefaultRoute) { + return false + } + return true +} func matchLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportServer(a []Layer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportServer, b []Layer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportServer) bool { if a == nil && b != nil || a != nil && b == nil { return false @@ -6617,15 +6659,15 @@ func matchLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupport(a *Layer3Ipv6 } else if a == nil && b == nil { return true } - if !util.BoolsMatch(a.Enable, b.Enable) { - return false - } if !matchLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportServer(a.Server, b.Server) { return false } if !matchLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix(a.Suffix, b.Suffix) { return false } + if !util.BoolsMatch(a.Enable, b.Enable) { + return false + } return true } func matchLayer3Ipv6NeighborDiscoveryRouterAdvertisement(a *Layer3Ipv6NeighborDiscoveryRouterAdvertisement, b *Layer3Ipv6NeighborDiscoveryRouterAdvertisement) bool { @@ -6634,7 +6676,7 @@ func matchLayer3Ipv6NeighborDiscoveryRouterAdvertisement(a *Layer3Ipv6NeighborDi } else if a == nil && b == nil { return true } - if !util.Ints64Match(a.MaxInterval, b.MaxInterval) { + if !util.Ints64Match(a.MinInterval, b.MinInterval) { return false } if !util.BoolsMatch(a.OtherFlag, b.OtherFlag) { @@ -6646,31 +6688,31 @@ func matchLayer3Ipv6NeighborDiscoveryRouterAdvertisement(a *Layer3Ipv6NeighborDi if !matchLayer3Ipv6NeighborDiscoveryRouterAdvertisementDnsSupport(a.DnsSupport, b.DnsSupport) { return false } - if !util.BoolsMatch(a.EnableConsistencyCheck, b.EnableConsistencyCheck) { + if !util.BoolsMatch(a.Enable, b.Enable) { return false } - if !util.StringsMatch(a.HopLimit, b.HopLimit) { + if !util.Ints64Match(a.Lifetime, b.Lifetime) { return false } - if !util.Ints64Match(a.Lifetime, b.Lifetime) { + if !util.BoolsMatch(a.ManagedFlag, b.ManagedFlag) { return false } - if !util.StringsMatch(a.LinkMtu, b.LinkMtu) { + if !util.Ints64Match(a.MaxInterval, b.MaxInterval) { return false } - if !util.StringsMatch(a.RetransmissionTimer, b.RetransmissionTimer) { + if !util.BoolsMatch(a.EnableConsistencyCheck, b.EnableConsistencyCheck) { return false } - if !util.StringsMatch(a.RouterPreference, b.RouterPreference) { + if !util.StringsMatch(a.HopLimit, b.HopLimit) { return false } - if !util.BoolsMatch(a.Enable, b.Enable) { + if !util.StringsMatch(a.LinkMtu, b.LinkMtu) { return false } - if !util.BoolsMatch(a.ManagedFlag, b.ManagedFlag) { + if !util.StringsMatch(a.RetransmissionTimer, b.RetransmissionTimer) { return false } - if !util.Ints64Match(a.MinInterval, b.MinInterval) { + if !util.StringsMatch(a.RouterPreference, b.RouterPreference) { return false } return true @@ -6699,12 +6741,6 @@ func matchLayer3Ipv6NeighborDiscovery(a *Layer3Ipv6NeighborDiscovery, b *Layer3I } else if a == nil && b == nil { return true } - if !util.BoolsMatch(a.EnableNdpMonitor, b.EnableNdpMonitor) { - return false - } - if !matchLayer3Ipv6NeighborDiscoveryNeighbor(a.Neighbor, b.Neighbor) { - return false - } if !util.Ints64Match(a.NsInterval, b.NsInterval) { return false } @@ -6720,6 +6756,30 @@ func matchLayer3Ipv6NeighborDiscovery(a *Layer3Ipv6NeighborDiscovery, b *Layer3I if !util.BoolsMatch(a.EnableDad, b.EnableDad) { return false } + if !util.BoolsMatch(a.EnableNdpMonitor, b.EnableNdpMonitor) { + return false + } + if !matchLayer3Ipv6NeighborDiscoveryNeighbor(a.Neighbor, b.Neighbor) { + return false + } + return true +} +func matchLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor(a []Layer3Ipv6DhcpClientNeighborDiscoveryNeighbor, b []Layer3Ipv6DhcpClientNeighborDiscoveryNeighbor) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + for _, a := range a { + for _, b := range b { + if !util.StringsMatch(a.HwAddress, b.HwAddress) { + return false + } + if !util.StringsEqual(a.Name, b.Name) { + return false + } + } + } return true } func matchLayer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceDhcpv6(a *Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceDhcpv6, b *Layer3Ipv6DhcpClientNeighborDiscoveryDnsServerSourceDhcpv6) bool { @@ -6787,14 +6847,6 @@ func matchLayer3Ipv6DhcpClientNeighborDiscoveryDnsServer(a *Layer3Ipv6DhcpClient } return true } -func matchLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceDhcpv6(a *Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceDhcpv6, b *Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceDhcpv6) bool { - if a == nil && b != nil || a != nil && b == nil { - return false - } else if a == nil && b == nil { - return true - } - return true -} func matchLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix(a []Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix, b []Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix) bool { if a == nil && b != nil || a != nil && b == nil { return false @@ -6824,6 +6876,14 @@ func matchLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManual(a *Layer3Ip } return true } +func matchLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceDhcpv6(a *Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceDhcpv6, b *Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceDhcpv6) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + return true +} func matchLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSource(a *Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSource, b *Layer3Ipv6DhcpClientNeighborDiscoveryDnsSuffixSource) bool { if a == nil && b != nil || a != nil && b == nil { return false @@ -6852,52 +6912,34 @@ func matchLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffix(a *Layer3Ipv6DhcpClient } return true } -func matchLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor(a []Layer3Ipv6DhcpClientNeighborDiscoveryNeighbor, b []Layer3Ipv6DhcpClientNeighborDiscoveryNeighbor) bool { - if a == nil && b != nil || a != nil && b == nil { - return false - } else if a == nil && b == nil { - return true - } - for _, a := range a { - for _, b := range b { - if !util.StringsMatch(a.HwAddress, b.HwAddress) { - return false - } - if !util.StringsEqual(a.Name, b.Name) { - return false - } - } - } - return true -} func matchLayer3Ipv6DhcpClientNeighborDiscovery(a *Layer3Ipv6DhcpClientNeighborDiscovery, b *Layer3Ipv6DhcpClientNeighborDiscovery) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.Ints64Match(a.NsInterval, b.NsInterval) { + if !matchLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffix(a.DnsSuffix, b.DnsSuffix) { return false } - if !util.Ints64Match(a.ReachableTime, b.ReachableTime) { + if !util.BoolsMatch(a.EnableDad, b.EnableDad) { return false } - if !util.Ints64Match(a.DadAttempts, b.DadAttempts) { + if !util.BoolsMatch(a.EnableNdpMonitor, b.EnableNdpMonitor) { return false } - if !matchLayer3Ipv6DhcpClientNeighborDiscoveryDnsServer(a.DnsServer, b.DnsServer) { + if !matchLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor(a.Neighbor, b.Neighbor) { return false } - if !matchLayer3Ipv6DhcpClientNeighborDiscoveryDnsSuffix(a.DnsSuffix, b.DnsSuffix) { + if !util.Ints64Match(a.NsInterval, b.NsInterval) { return false } - if !util.BoolsMatch(a.EnableDad, b.EnableDad) { + if !util.Ints64Match(a.ReachableTime, b.ReachableTime) { return false } - if !util.BoolsMatch(a.EnableNdpMonitor, b.EnableNdpMonitor) { + if !util.Ints64Match(a.DadAttempts, b.DadAttempts) { return false } - if !matchLayer3Ipv6DhcpClientNeighborDiscoveryNeighbor(a.Neighbor, b.Neighbor) { + if !matchLayer3Ipv6DhcpClientNeighborDiscoveryDnsServer(a.DnsServer, b.DnsServer) { return false } return true @@ -6966,160 +7008,222 @@ func matchLayer3Ipv6DhcpClientV6OptionsEnableYes(a *Layer3Ipv6DhcpClientV6Option } else if a == nil && b == nil { return true } - if !util.BoolsMatch(a.TempAddr, b.TempAddr) { - return false - } - if !util.BoolsMatch(a.NonTempAddr, b.NonTempAddr) { + if !util.BoolsMatch(a.TempAddr, b.TempAddr) { + return false + } + if !util.BoolsMatch(a.NonTempAddr, b.NonTempAddr) { + return false + } + return true +} +func matchLayer3Ipv6DhcpClientV6OptionsEnable(a *Layer3Ipv6DhcpClientV6OptionsEnable, b *Layer3Ipv6DhcpClientV6OptionsEnable) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + if !matchLayer3Ipv6DhcpClientV6OptionsEnableYes(a.Yes, b.Yes) { + return false + } + if !matchLayer3Ipv6DhcpClientV6OptionsEnableNo(a.No, b.No) { + return false + } + return true +} +func matchLayer3Ipv6DhcpClientV6Options(a *Layer3Ipv6DhcpClientV6Options, b *Layer3Ipv6DhcpClientV6Options) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + if !util.StringsMatch(a.DuidType, b.DuidType) { + return false + } + if !matchLayer3Ipv6DhcpClientV6OptionsEnable(a.Enable, b.Enable) { + return false + } + if !util.BoolsMatch(a.RapidCommit, b.RapidCommit) { + return false + } + if !util.BoolsMatch(a.SupportSrvrReconfig, b.SupportSrvrReconfig) { + return false + } + return true +} +func matchLayer3Ipv6DhcpClient(a *Layer3Ipv6DhcpClient, b *Layer3Ipv6DhcpClient) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + if !util.BoolsMatch(a.AcceptRaRoute, b.AcceptRaRoute) { + return false + } + if !util.Ints64Match(a.DefaultRouteMetric, b.DefaultRouteMetric) { + return false + } + if !util.BoolsMatch(a.Enable, b.Enable) { + return false + } + if !matchLayer3Ipv6DhcpClientNeighborDiscovery(a.NeighborDiscovery, b.NeighborDiscovery) { + return false + } + if !util.StringsMatch(a.Preference, b.Preference) { + return false + } + if !matchLayer3Ipv6DhcpClientPrefixDelegation(a.PrefixDelegation, b.PrefixDelegation) { + return false + } + if !matchLayer3Ipv6DhcpClientV6Options(a.V6Options, b.V6Options) { + return false + } + return true +} +func matchLayer3Ipv6InheritedAssignAddrTypeGuaAdvertise(a *Layer3Ipv6InheritedAssignAddrTypeGuaAdvertise, b *Layer3Ipv6InheritedAssignAddrTypeGuaAdvertise) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + if !util.BoolsMatch(a.Enable, b.Enable) { + return false + } + if !util.BoolsMatch(a.OnlinkFlag, b.OnlinkFlag) { + return false + } + if !util.BoolsMatch(a.AutoConfigFlag, b.AutoConfigFlag) { + return false + } + return true +} +func matchLayer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamic(a *Layer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamic, b *Layer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamic) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + return true +} +func matchLayer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamicId(a *Layer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamicId, b *Layer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamicId) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + if !util.Ints64Match(a.Identifier, b.Identifier) { return false } return true } -func matchLayer3Ipv6DhcpClientV6OptionsEnable(a *Layer3Ipv6DhcpClientV6OptionsEnable, b *Layer3Ipv6DhcpClientV6OptionsEnable) bool { +func matchLayer3Ipv6InheritedAssignAddrTypeGuaPoolType(a *Layer3Ipv6InheritedAssignAddrTypeGuaPoolType, b *Layer3Ipv6InheritedAssignAddrTypeGuaPoolType) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchLayer3Ipv6DhcpClientV6OptionsEnableYes(a.Yes, b.Yes) { + if !matchLayer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamic(a.Dynamic, b.Dynamic) { return false } - if !matchLayer3Ipv6DhcpClientV6OptionsEnableNo(a.No, b.No) { + if !matchLayer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamicId(a.DynamicId, b.DynamicId) { return false } return true } -func matchLayer3Ipv6DhcpClientV6Options(a *Layer3Ipv6DhcpClientV6Options, b *Layer3Ipv6DhcpClientV6Options) bool { +func matchLayer3Ipv6InheritedAssignAddrTypeGua(a *Layer3Ipv6InheritedAssignAddrTypeGua, b *Layer3Ipv6InheritedAssignAddrTypeGua) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.DuidType, b.DuidType) { + if !util.StringsMatch(a.PrefixPool, b.PrefixPool) { return false } - if !matchLayer3Ipv6DhcpClientV6OptionsEnable(a.Enable, b.Enable) { + if !matchLayer3Ipv6InheritedAssignAddrTypeGuaPoolType(a.PoolType, b.PoolType) { return false } - if !util.BoolsMatch(a.RapidCommit, b.RapidCommit) { + if !matchLayer3Ipv6InheritedAssignAddrTypeGuaAdvertise(a.Advertise, b.Advertise) { return false } - if !util.BoolsMatch(a.SupportSrvrReconfig, b.SupportSrvrReconfig) { + if !util.BoolsMatch(a.EnableOnInterface, b.EnableOnInterface) { return false } return true } -func matchLayer3Ipv6DhcpClient(a *Layer3Ipv6DhcpClient, b *Layer3Ipv6DhcpClient) bool { +func matchLayer3Ipv6InheritedAssignAddrTypeUlaAdvertise(a *Layer3Ipv6InheritedAssignAddrTypeUlaAdvertise, b *Layer3Ipv6InheritedAssignAddrTypeUlaAdvertise) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchLayer3Ipv6DhcpClientPrefixDelegation(a.PrefixDelegation, b.PrefixDelegation) { - return false - } - if !matchLayer3Ipv6DhcpClientV6Options(a.V6Options, b.V6Options) { - return false - } - if !util.BoolsMatch(a.AcceptRaRoute, b.AcceptRaRoute) { + if !util.BoolsMatch(a.Enable, b.Enable) { return false } - if !util.Ints64Match(a.DefaultRouteMetric, b.DefaultRouteMetric) { + if !util.StringsMatch(a.ValidLifetime, b.ValidLifetime) { return false } - if !util.BoolsMatch(a.Enable, b.Enable) { + if !util.StringsMatch(a.PreferredLifetime, b.PreferredLifetime) { return false } - if !matchLayer3Ipv6DhcpClientNeighborDiscovery(a.NeighborDiscovery, b.NeighborDiscovery) { + if !util.BoolsMatch(a.OnlinkFlag, b.OnlinkFlag) { return false } - if !util.StringsMatch(a.Preference, b.Preference) { + if !util.BoolsMatch(a.AutoConfigFlag, b.AutoConfigFlag) { return false } return true } -func matchLayer3Ipv6InheritedNeighborDiscoveryNeighbor(a []Layer3Ipv6InheritedNeighborDiscoveryNeighbor, b []Layer3Ipv6InheritedNeighborDiscoveryNeighbor) bool { +func matchLayer3Ipv6InheritedAssignAddrTypeUla(a *Layer3Ipv6InheritedAssignAddrTypeUla, b *Layer3Ipv6InheritedAssignAddrTypeUla) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - for _, a := range a { - for _, b := range b { - if !util.StringsEqual(a.Name, b.Name) { - return false - } - if !util.StringsMatch(a.HwAddress, b.HwAddress) { - return false - } - } - } - return true -} -func matchLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceDhcpv6(a *Layer3Ipv6InheritedNeighborDiscoveryDnsServerSourceDhcpv6, b *Layer3Ipv6InheritedNeighborDiscoveryDnsServerSourceDhcpv6) bool { - if a == nil && b != nil || a != nil && b == nil { + if !util.StringsMatch(a.Address, b.Address) { return false - } else if a == nil && b == nil { - return true } - if !util.StringsMatch(a.PrefixPool, b.PrefixPool) { + if !util.BoolsMatch(a.Prefix, b.Prefix) { return false } - return true -} -func matchLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer(a []Layer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer, b []Layer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer) bool { - if a == nil && b != nil || a != nil && b == nil { + if !util.BoolsMatch(a.Anycast, b.Anycast) { return false - } else if a == nil && b == nil { - return true - } - for _, a := range a { - for _, b := range b { - if !util.Ints64Match(a.Lifetime, b.Lifetime) { - return false - } - if !util.StringsEqual(a.Name, b.Name) { - return false - } - } } - return true -} -func matchLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManual(a *Layer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManual, b *Layer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManual) bool { - if a == nil && b != nil || a != nil && b == nil { + if !matchLayer3Ipv6InheritedAssignAddrTypeUlaAdvertise(a.Advertise, b.Advertise) { return false - } else if a == nil && b == nil { - return true } - if !matchLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer(a.Server, b.Server) { + if !util.BoolsMatch(a.EnableOnInterface, b.EnableOnInterface) { return false } return true } -func matchLayer3Ipv6InheritedNeighborDiscoveryDnsServerSource(a *Layer3Ipv6InheritedNeighborDiscoveryDnsServerSource, b *Layer3Ipv6InheritedNeighborDiscoveryDnsServerSource) bool { +func matchLayer3Ipv6InheritedAssignAddrType(a *Layer3Ipv6InheritedAssignAddrType, b *Layer3Ipv6InheritedAssignAddrType) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceDhcpv6(a.Dhcpv6, b.Dhcpv6) { + if !matchLayer3Ipv6InheritedAssignAddrTypeGua(a.Gua, b.Gua) { return false } - if !matchLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManual(a.Manual, b.Manual) { + if !matchLayer3Ipv6InheritedAssignAddrTypeUla(a.Ula, b.Ula) { return false } return true } -func matchLayer3Ipv6InheritedNeighborDiscoveryDnsServer(a *Layer3Ipv6InheritedNeighborDiscoveryDnsServer, b *Layer3Ipv6InheritedNeighborDiscoveryDnsServer) bool { +func matchLayer3Ipv6InheritedAssignAddr(a []Layer3Ipv6InheritedAssignAddr, b []Layer3Ipv6InheritedAssignAddr) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.BoolsMatch(a.Enable, b.Enable) { - return false - } - if !matchLayer3Ipv6InheritedNeighborDiscoveryDnsServerSource(a.Source, b.Source) { - return false + for _, a := range a { + for _, b := range b { + if !util.StringsEqual(a.Name, b.Name) { + return false + } + if !matchLayer3Ipv6InheritedAssignAddrType(a.Type, b.Type) { + return false + } + } } return true } @@ -7183,10 +7287,10 @@ func matchLayer3Ipv6InheritedNeighborDiscoveryDnsSuffix(a *Layer3Ipv6InheritedNe } else if a == nil && b == nil { return true } - if !util.BoolsMatch(a.Enable, b.Enable) { + if !matchLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSource(a.Source, b.Source) { return false } - if !matchLayer3Ipv6InheritedNeighborDiscoveryDnsSuffixSource(a.Source, b.Source) { + if !util.BoolsMatch(a.Enable, b.Enable) { return false } return true @@ -7197,21 +7301,9 @@ func matchLayer3Ipv6InheritedNeighborDiscoveryRouterAdvertisement(a *Layer3Ipv6I } else if a == nil && b == nil { return true } - if !util.BoolsMatch(a.EnableConsistencyCheck, b.EnableConsistencyCheck) { - return false - } - if !util.StringsMatch(a.HopLimit, b.HopLimit) { - return false - } - if !util.StringsMatch(a.LinkMtu, b.LinkMtu) { - return false - } if !util.Ints64Match(a.MinInterval, b.MinInterval) { return false } - if !util.StringsMatch(a.RouterPreference, b.RouterPreference) { - return false - } if !util.StringsMatch(a.ReachableTime, b.ReachableTime) { return false } @@ -7224,7 +7316,7 @@ func matchLayer3Ipv6InheritedNeighborDiscoveryRouterAdvertisement(a *Layer3Ipv6I if !util.Ints64Match(a.Lifetime, b.Lifetime) { return false } - if !util.BoolsMatch(a.ManagedFlag, b.ManagedFlag) { + if !util.StringsMatch(a.LinkMtu, b.LinkMtu) { return false } if !util.Ints64Match(a.MaxInterval, b.MaxInterval) { @@ -7233,188 +7325,138 @@ func matchLayer3Ipv6InheritedNeighborDiscoveryRouterAdvertisement(a *Layer3Ipv6I if !util.BoolsMatch(a.OtherFlag, b.OtherFlag) { return false } - return true -} -func matchLayer3Ipv6InheritedNeighborDiscovery(a *Layer3Ipv6InheritedNeighborDiscovery, b *Layer3Ipv6InheritedNeighborDiscovery) bool { - if a == nil && b != nil || a != nil && b == nil { - return false - } else if a == nil && b == nil { - return true - } - if !util.Ints64Match(a.DadAttempts, b.DadAttempts) { - return false - } - if !util.BoolsMatch(a.EnableDad, b.EnableDad) { - return false - } - if !util.BoolsMatch(a.EnableNdpMonitor, b.EnableNdpMonitor) { - return false - } - if !matchLayer3Ipv6InheritedNeighborDiscoveryNeighbor(a.Neighbor, b.Neighbor) { - return false - } - if !util.Ints64Match(a.ReachableTime, b.ReachableTime) { - return false - } - if !matchLayer3Ipv6InheritedNeighborDiscoveryDnsServer(a.DnsServer, b.DnsServer) { + if !util.StringsMatch(a.RouterPreference, b.RouterPreference) { return false } - if !matchLayer3Ipv6InheritedNeighborDiscoveryDnsSuffix(a.DnsSuffix, b.DnsSuffix) { + if !util.BoolsMatch(a.EnableConsistencyCheck, b.EnableConsistencyCheck) { return false } - if !util.Ints64Match(a.NsInterval, b.NsInterval) { + if !util.StringsMatch(a.HopLimit, b.HopLimit) { return false } - if !matchLayer3Ipv6InheritedNeighborDiscoveryRouterAdvertisement(a.RouterAdvertisement, b.RouterAdvertisement) { + if !util.BoolsMatch(a.ManagedFlag, b.ManagedFlag) { return false } return true } -func matchLayer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamic(a *Layer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamic, b *Layer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamic) bool { +func matchLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceDhcpv6(a *Layer3Ipv6InheritedNeighborDiscoveryDnsServerSourceDhcpv6, b *Layer3Ipv6InheritedNeighborDiscoveryDnsServerSourceDhcpv6) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } + if !util.StringsMatch(a.PrefixPool, b.PrefixPool) { + return false + } return true } -func matchLayer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamicId(a *Layer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamicId, b *Layer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamicId) bool { +func matchLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer(a []Layer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer, b []Layer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.Ints64Match(a.Identifier, b.Identifier) { - return false + for _, a := range a { + for _, b := range b { + if !util.Ints64Match(a.Lifetime, b.Lifetime) { + return false + } + if !util.StringsEqual(a.Name, b.Name) { + return false + } + } } return true } -func matchLayer3Ipv6InheritedAssignAddrTypeGuaPoolType(a *Layer3Ipv6InheritedAssignAddrTypeGuaPoolType, b *Layer3Ipv6InheritedAssignAddrTypeGuaPoolType) bool { +func matchLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManual(a *Layer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManual, b *Layer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManual) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchLayer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamicId(a.DynamicId, b.DynamicId) { - return false - } - if !matchLayer3Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamic(a.Dynamic, b.Dynamic) { + if !matchLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer(a.Server, b.Server) { return false } return true } -func matchLayer3Ipv6InheritedAssignAddrTypeGuaAdvertise(a *Layer3Ipv6InheritedAssignAddrTypeGuaAdvertise, b *Layer3Ipv6InheritedAssignAddrTypeGuaAdvertise) bool { +func matchLayer3Ipv6InheritedNeighborDiscoveryDnsServerSource(a *Layer3Ipv6InheritedNeighborDiscoveryDnsServerSource, b *Layer3Ipv6InheritedNeighborDiscoveryDnsServerSource) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.BoolsMatch(a.Enable, b.Enable) { - return false - } - if !util.BoolsMatch(a.OnlinkFlag, b.OnlinkFlag) { + if !matchLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceDhcpv6(a.Dhcpv6, b.Dhcpv6) { return false } - if !util.BoolsMatch(a.AutoConfigFlag, b.AutoConfigFlag) { + if !matchLayer3Ipv6InheritedNeighborDiscoveryDnsServerSourceManual(a.Manual, b.Manual) { return false } return true } -func matchLayer3Ipv6InheritedAssignAddrTypeGua(a *Layer3Ipv6InheritedAssignAddrTypeGua, b *Layer3Ipv6InheritedAssignAddrTypeGua) bool { +func matchLayer3Ipv6InheritedNeighborDiscoveryDnsServer(a *Layer3Ipv6InheritedNeighborDiscoveryDnsServer, b *Layer3Ipv6InheritedNeighborDiscoveryDnsServer) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.BoolsMatch(a.EnableOnInterface, b.EnableOnInterface) { - return false - } - if !util.StringsMatch(a.PrefixPool, b.PrefixPool) { - return false - } - if !matchLayer3Ipv6InheritedAssignAddrTypeGuaPoolType(a.PoolType, b.PoolType) { + if !util.BoolsMatch(a.Enable, b.Enable) { return false } - if !matchLayer3Ipv6InheritedAssignAddrTypeGuaAdvertise(a.Advertise, b.Advertise) { + if !matchLayer3Ipv6InheritedNeighborDiscoveryDnsServerSource(a.Source, b.Source) { return false } return true } -func matchLayer3Ipv6InheritedAssignAddrTypeUlaAdvertise(a *Layer3Ipv6InheritedAssignAddrTypeUlaAdvertise, b *Layer3Ipv6InheritedAssignAddrTypeUlaAdvertise) bool { +func matchLayer3Ipv6InheritedNeighborDiscoveryNeighbor(a []Layer3Ipv6InheritedNeighborDiscoveryNeighbor, b []Layer3Ipv6InheritedNeighborDiscoveryNeighbor) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.BoolsMatch(a.Enable, b.Enable) { - return false - } - if !util.StringsMatch(a.ValidLifetime, b.ValidLifetime) { - return false - } - if !util.StringsMatch(a.PreferredLifetime, b.PreferredLifetime) { - return false - } - if !util.BoolsMatch(a.OnlinkFlag, b.OnlinkFlag) { - return false - } - if !util.BoolsMatch(a.AutoConfigFlag, b.AutoConfigFlag) { - return false + for _, a := range a { + for _, b := range b { + if !util.StringsMatch(a.HwAddress, b.HwAddress) { + return false + } + if !util.StringsEqual(a.Name, b.Name) { + return false + } + } } return true } -func matchLayer3Ipv6InheritedAssignAddrTypeUla(a *Layer3Ipv6InheritedAssignAddrTypeUla, b *Layer3Ipv6InheritedAssignAddrTypeUla) bool { +func matchLayer3Ipv6InheritedNeighborDiscovery(a *Layer3Ipv6InheritedNeighborDiscovery, b *Layer3Ipv6InheritedNeighborDiscovery) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.BoolsMatch(a.EnableOnInterface, b.EnableOnInterface) { - return false - } - if !util.StringsMatch(a.Address, b.Address) { + if !util.Ints64Match(a.ReachableTime, b.ReachableTime) { return false } - if !util.BoolsMatch(a.Prefix, b.Prefix) { + if !matchLayer3Ipv6InheritedNeighborDiscoveryDnsServer(a.DnsServer, b.DnsServer) { return false } - if !util.BoolsMatch(a.Anycast, b.Anycast) { + if !util.BoolsMatch(a.EnableNdpMonitor, b.EnableNdpMonitor) { return false } - if !matchLayer3Ipv6InheritedAssignAddrTypeUlaAdvertise(a.Advertise, b.Advertise) { + if !matchLayer3Ipv6InheritedNeighborDiscoveryNeighbor(a.Neighbor, b.Neighbor) { return false } - return true -} -func matchLayer3Ipv6InheritedAssignAddrType(a *Layer3Ipv6InheritedAssignAddrType, b *Layer3Ipv6InheritedAssignAddrType) bool { - if a == nil && b != nil || a != nil && b == nil { + if !util.Ints64Match(a.NsInterval, b.NsInterval) { return false - } else if a == nil && b == nil { - return true } - if !matchLayer3Ipv6InheritedAssignAddrTypeGua(a.Gua, b.Gua) { + if !matchLayer3Ipv6InheritedNeighborDiscoveryRouterAdvertisement(a.RouterAdvertisement, b.RouterAdvertisement) { return false } - if !matchLayer3Ipv6InheritedAssignAddrTypeUla(a.Ula, b.Ula) { + if !util.Ints64Match(a.DadAttempts, b.DadAttempts) { return false } - return true -} -func matchLayer3Ipv6InheritedAssignAddr(a []Layer3Ipv6InheritedAssignAddr, b []Layer3Ipv6InheritedAssignAddr) bool { - if a == nil && b != nil || a != nil && b == nil { + if !matchLayer3Ipv6InheritedNeighborDiscoveryDnsSuffix(a.DnsSuffix, b.DnsSuffix) { return false - } else if a == nil && b == nil { - return true } - for _, a := range a { - for _, b := range b { - if !matchLayer3Ipv6InheritedAssignAddrType(a.Type, b.Type) { - return false - } - if !util.StringsEqual(a.Name, b.Name) { - return false - } - } + if !util.BoolsMatch(a.EnableDad, b.EnableDad) { + return false } return true } @@ -7457,19 +7499,19 @@ func matchLayer3Ipv6AddressAdvertise(a *Layer3Ipv6AddressAdvertise, b *Layer3Ipv } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.ValidLifetime, b.ValidLifetime) { + if !util.BoolsMatch(a.OnlinkFlag, b.OnlinkFlag) { return false } - if !util.StringsMatch(a.PreferredLifetime, b.PreferredLifetime) { + if !util.BoolsMatch(a.AutoConfigFlag, b.AutoConfigFlag) { return false } - if !util.BoolsMatch(a.OnlinkFlag, b.OnlinkFlag) { + if !util.BoolsMatch(a.Enable, b.Enable) { return false } - if !util.BoolsMatch(a.AutoConfigFlag, b.AutoConfigFlag) { + if !util.StringsMatch(a.ValidLifetime, b.ValidLifetime) { return false } - if !util.BoolsMatch(a.Enable, b.Enable) { + if !util.StringsMatch(a.PreferredLifetime, b.PreferredLifetime) { return false } return true @@ -7482,6 +7524,9 @@ func matchLayer3Ipv6Address(a []Layer3Ipv6Address, b []Layer3Ipv6Address) bool { } for _, a := range a { for _, b := range b { + if !util.BoolsMatch(a.EnableOnInterface, b.EnableOnInterface) { + return false + } if !matchLayer3Ipv6AddressPrefix(a.Prefix, b.Prefix) { return false } @@ -7494,9 +7539,6 @@ func matchLayer3Ipv6Address(a []Layer3Ipv6Address, b []Layer3Ipv6Address) bool { if !util.StringsEqual(a.Name, b.Name) { return false } - if !util.BoolsMatch(a.EnableOnInterface, b.EnableOnInterface) { - return false - } } } return true @@ -7507,6 +7549,9 @@ func matchLayer3Ipv6(a *Layer3Ipv6, b *Layer3Ipv6) bool { } else if a == nil && b == nil { return true } + if !matchLayer3Ipv6Address(a.Address, b.Address) { + return false + } if !util.BoolsMatch(a.Enabled, b.Enabled) { return false } @@ -7522,37 +7567,6 @@ func matchLayer3Ipv6(a *Layer3Ipv6, b *Layer3Ipv6) bool { if !matchLayer3Ipv6Inherited(a.Inherited, b.Inherited) { return false } - if !matchLayer3Ipv6Address(a.Address, b.Address) { - return false - } - return true -} -func matchLayer3LldpHighAvailability(a *Layer3LldpHighAvailability, b *Layer3LldpHighAvailability) bool { - if a == nil && b != nil || a != nil && b == nil { - return false - } else if a == nil && b == nil { - return true - } - if !util.BoolsMatch(a.PassivePreNegotiation, b.PassivePreNegotiation) { - return false - } - return true -} -func matchLayer3Lldp(a *Layer3Lldp, b *Layer3Lldp) bool { - if a == nil && b != nil || a != nil && b == nil { - return false - } else if a == nil && b == nil { - return true - } - if !util.BoolsMatch(a.Enable, b.Enable) { - return false - } - if !matchLayer3LldpHighAvailability(a.HighAvailability, b.HighAvailability) { - return false - } - if !util.StringsMatch(a.Profile, b.Profile) { - return false - } return true } func matchLayer3SdwanLinkSettingsUpstreamNatDdns(a *Layer3SdwanLinkSettingsUpstreamNatDdns, b *Layer3SdwanLinkSettingsUpstreamNatDdns) bool { @@ -7611,20 +7625,21 @@ func matchLayer3SdwanLinkSettings(a *Layer3SdwanLinkSettings, b *Layer3SdwanLink } return true } -func matchLayer3Bonjour(a *Layer3Bonjour, b *Layer3Bonjour) bool { +func matchLayer3Arp(a []Layer3Arp, b []Layer3Arp) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.Ints64Match(a.GroupId, b.GroupId) { - return false - } - if !util.BoolsMatch(a.TtlCheck, b.TtlCheck) { - return false - } - if !util.BoolsMatch(a.Enable, b.Enable) { - return false + for _, a := range a { + for _, b := range b { + if !util.StringsMatch(a.HwAddress, b.HwAddress) { + return false + } + if !util.StringsEqual(a.Name, b.Name) { + return false + } + } } return true } @@ -7652,9 +7667,6 @@ func matchLayer3DdnsConfig(a *Layer3DdnsConfig, b *Layer3DdnsConfig) bool { } else if a == nil && b == nil { return true } - if !util.OrderedListsMatch(a.DdnsIpv6, b.DdnsIpv6) { - return false - } if !util.Ints64Match(a.DdnsUpdateInterval, b.DdnsUpdateInterval) { return false } @@ -7676,26 +7688,29 @@ func matchLayer3DdnsConfig(a *Layer3DdnsConfig, b *Layer3DdnsConfig) bool { if !util.OrderedListsMatch(a.DdnsIp, b.DdnsIp) { return false } + if !util.OrderedListsMatch(a.DdnsIpv6, b.DdnsIpv6) { + return false + } return true } -func matchLayer3PppoeStaticAddress(a *Layer3PppoeStaticAddress, b *Layer3PppoeStaticAddress) bool { +func matchLayer3PppoePassive(a *Layer3PppoePassive, b *Layer3PppoePassive) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Ip, b.Ip) { + if !util.BoolsMatch(a.Enable, b.Enable) { return false } return true } -func matchLayer3PppoePassive(a *Layer3PppoePassive, b *Layer3PppoePassive) bool { +func matchLayer3PppoeStaticAddress(a *Layer3PppoeStaticAddress, b *Layer3PppoeStaticAddress) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.BoolsMatch(a.Enable, b.Enable) { + if !util.StringsMatch(a.Ip, b.Ip) { return false } return true @@ -7706,13 +7721,10 @@ func matchLayer3Pppoe(a *Layer3Pppoe, b *Layer3Pppoe) bool { } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Password, b.Password) { - return false - } - if !matchLayer3PppoeStaticAddress(a.StaticAddress, b.StaticAddress) { + if !util.StringsMatch(a.AccessConcentrator, b.AccessConcentrator) { return false } - if !util.StringsMatch(a.AccessConcentrator, b.AccessConcentrator) { + if !util.StringsMatch(a.Authentication, b.Authentication) { return false } if !util.BoolsMatch(a.CreateDefaultRoute, b.CreateDefaultRoute) { @@ -7724,55 +7736,41 @@ func matchLayer3Pppoe(a *Layer3Pppoe, b *Layer3Pppoe) bool { if !util.BoolsMatch(a.Enable, b.Enable) { return false } - if !util.StringsMatch(a.Authentication, b.Authentication) { - return false - } - if !matchLayer3PppoePassive(a.Passive, b.Passive) { - return false - } if !util.StringsMatch(a.Service, b.Service) { return false } - if !util.StringsMatch(a.Username, b.Username) { + if !matchLayer3PppoePassive(a.Passive, b.Passive) { return false } - return true -} -func matchLayer3DhcpClientSendHostname(a *Layer3DhcpClientSendHostname, b *Layer3DhcpClientSendHostname) bool { - if a == nil && b != nil || a != nil && b == nil { + if !util.StringsMatch(a.Password, b.Password) { return false - } else if a == nil && b == nil { - return true } - if !util.BoolsMatch(a.Enable, b.Enable) { + if !matchLayer3PppoeStaticAddress(a.StaticAddress, b.StaticAddress) { return false } - if !util.StringsMatch(a.Hostname, b.Hostname) { + if !util.StringsMatch(a.Username, b.Username) { return false } return true } -func matchLayer3DhcpClient(a *Layer3DhcpClient, b *Layer3DhcpClient) bool { +func matchLayer3Bonjour(a *Layer3Bonjour, b *Layer3Bonjour) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.BoolsMatch(a.CreateDefaultRoute, b.CreateDefaultRoute) { - return false - } - if !util.Ints64Match(a.DefaultRouteMetric, b.DefaultRouteMetric) { + if !util.BoolsMatch(a.Enable, b.Enable) { return false } - if !util.BoolsMatch(a.Enable, b.Enable) { + if !util.Ints64Match(a.GroupId, b.GroupId) { return false } - if !matchLayer3DhcpClientSendHostname(a.SendHostname, b.SendHostname) { + if !util.BoolsMatch(a.TtlCheck, b.TtlCheck) { return false } return true } -func matchLayer3NdpProxyAddress(a []Layer3NdpProxyAddress, b []Layer3NdpProxyAddress) bool { +func matchLayer3Ip(a []Layer3Ip, b []Layer3Ip) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -7780,7 +7778,7 @@ func matchLayer3NdpProxyAddress(a []Layer3NdpProxyAddress, b []Layer3NdpProxyAdd } for _, a := range a { for _, b := range b { - if !util.BoolsMatch(a.Negate, b.Negate) { + if !util.StringsMatch(a.SdwanGateway, b.SdwanGateway) { return false } if !util.StringsEqual(a.Name, b.Name) { @@ -7790,21 +7788,35 @@ func matchLayer3NdpProxyAddress(a []Layer3NdpProxyAddress, b []Layer3NdpProxyAdd } return true } -func matchLayer3NdpProxy(a *Layer3NdpProxy, b *Layer3NdpProxy) bool { +func matchLayer3LldpHighAvailability(a *Layer3LldpHighAvailability, b *Layer3LldpHighAvailability) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchLayer3NdpProxyAddress(a.Address, b.Address) { + if !util.BoolsMatch(a.PassivePreNegotiation, b.PassivePreNegotiation) { return false } - if !util.BoolsMatch(a.Enabled, b.Enabled) { + return true +} +func matchLayer3Lldp(a *Layer3Lldp, b *Layer3Lldp) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + if !util.BoolsMatch(a.Enable, b.Enable) { + return false + } + if !matchLayer3LldpHighAvailability(a.HighAvailability, b.HighAvailability) { + return false + } + if !util.StringsMatch(a.Profile, b.Profile) { return false } return true } -func matchLayer3Arp(a []Layer3Arp, b []Layer3Arp) bool { +func matchLayer3NdpProxyAddress(a []Layer3NdpProxyAddress, b []Layer3NdpProxyAddress) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -7812,7 +7824,7 @@ func matchLayer3Arp(a []Layer3Arp, b []Layer3Arp) bool { } for _, a := range a { for _, b := range b { - if !util.StringsMatch(a.HwAddress, b.HwAddress) { + if !util.BoolsMatch(a.Negate, b.Negate) { return false } if !util.StringsEqual(a.Name, b.Name) { @@ -7822,21 +7834,17 @@ func matchLayer3Arp(a []Layer3Arp, b []Layer3Arp) bool { } return true } -func matchLayer3Ip(a []Layer3Ip, b []Layer3Ip) bool { +func matchLayer3NdpProxy(a *Layer3NdpProxy, b *Layer3NdpProxy) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - for _, a := range a { - for _, b := range b { - if !util.StringsMatch(a.SdwanGateway, b.SdwanGateway) { - return false - } - if !util.StringsEqual(a.Name, b.Name) { - return false - } - } + if !matchLayer3NdpProxyAddress(a.Address, b.Address) { + return false + } + if !util.BoolsMatch(a.Enabled, b.Enabled) { + return false } return true } @@ -7846,61 +7854,61 @@ func matchLayer3(a *Layer3, b *Layer3) bool { } else if a == nil && b == nil { return true } - if !matchLayer3Bonjour(a.Bonjour, b.Bonjour) { + if !matchLayer3Arp(a.Arp, b.Arp) { return false } if !matchLayer3DdnsConfig(a.DdnsConfig, b.DdnsConfig) { return false } - if !util.BoolsMatch(a.DfIgnore, b.DfIgnore) { + if !matchLayer3Pppoe(a.Pppoe, b.Pppoe) { return false } - if !matchLayer3Pppoe(a.Pppoe, b.Pppoe) { + if !util.BoolsMatch(a.ClusterInterconnect, b.ClusterInterconnect) { return false } - if !util.BoolsMatch(a.DecryptForward, b.DecryptForward) { + if !util.BoolsMatch(a.TrafficInterconnect, b.TrafficInterconnect) { return false } - if !matchLayer3DhcpClient(a.DhcpClient, b.DhcpClient) { + if !matchLayer3Bonjour(a.Bonjour, b.Bonjour) { return false } - if !matchLayer3NdpProxy(a.NdpProxy, b.NdpProxy) { + if !util.BoolsMatch(a.DfIgnore, b.DfIgnore) { return false } - if !util.StringsMatch(a.NetflowProfile, b.NetflowProfile) { + if !matchLayer3Ip(a.Ip, b.Ip) { return false } - if !util.BoolsMatch(a.ClusterInterconnect, b.ClusterInterconnect) { + if !util.StringsMatch(a.NetflowProfile, b.NetflowProfile) { return false } - if !matchLayer3Arp(a.Arp, b.Arp) { + if !util.BoolsMatch(a.UntaggedSubInterface, b.UntaggedSubInterface) { return false } - if !matchLayer3Ip(a.Ip, b.Ip) { + if !util.StringsMatch(a.InterfaceManagementProfile, b.InterfaceManagementProfile) { return false } - if !util.Ints64Match(a.Mtu, b.Mtu) { + if !matchLayer3Lldp(a.Lldp, b.Lldp) { return false } - if !util.BoolsMatch(a.TrafficInterconnect, b.TrafficInterconnect) { + if !util.Ints64Match(a.Mtu, b.Mtu) { return false } - if !matchLayer3AdjustTcpMss(a.AdjustTcpMss, b.AdjustTcpMss) { + if !matchLayer3NdpProxy(a.NdpProxy, b.NdpProxy) { return false } - if !util.StringsMatch(a.InterfaceManagementProfile, b.InterfaceManagementProfile) { + if !matchLayer3SdwanLinkSettings(a.SdwanLinkSettings, b.SdwanLinkSettings) { return false } - if !matchLayer3Ipv6(a.Ipv6, b.Ipv6) { + if !matchLayer3AdjustTcpMss(a.AdjustTcpMss, b.AdjustTcpMss) { return false } - if !matchLayer3Lldp(a.Lldp, b.Lldp) { + if !util.BoolsMatch(a.DecryptForward, b.DecryptForward) { return false } - if !matchLayer3SdwanLinkSettings(a.SdwanLinkSettings, b.SdwanLinkSettings) { + if !matchLayer3DhcpClient(a.DhcpClient, b.DhcpClient) { return false } - if !util.BoolsMatch(a.UntaggedSubInterface, b.UntaggedSubInterface) { + if !matchLayer3Ipv6(a.Ipv6, b.Ipv6) { return false } return true @@ -7911,19 +7919,19 @@ func matchLogCard(a *LogCard, b *LogCard) bool { } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Ipv6Address, b.Ipv6Address) { + if !util.StringsMatch(a.DefaultGateway, b.DefaultGateway) { return false } - if !util.StringsMatch(a.Ipv6DefaultGateway, b.Ipv6DefaultGateway) { + if !util.StringsMatch(a.IpAddress, b.IpAddress) { return false } - if !util.StringsMatch(a.Netmask, b.Netmask) { + if !util.StringsMatch(a.Ipv6Address, b.Ipv6Address) { return false } - if !util.StringsMatch(a.DefaultGateway, b.DefaultGateway) { + if !util.StringsMatch(a.Ipv6DefaultGateway, b.Ipv6DefaultGateway) { return false } - if !util.StringsMatch(a.IpAddress, b.IpAddress) { + if !util.StringsMatch(a.Netmask, b.Netmask) { return false } return true @@ -7939,7 +7947,7 @@ func matchTap(a *Tap, b *Tap) bool { } return true } -func matchVirtualWireLacpHighAvailability(a *VirtualWireLacpHighAvailability, b *VirtualWireLacpHighAvailability) bool { +func matchVirtualWireLldpHighAvailability(a *VirtualWireLldpHighAvailability, b *VirtualWireLldpHighAvailability) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -7950,18 +7958,24 @@ func matchVirtualWireLacpHighAvailability(a *VirtualWireLacpHighAvailability, b } return true } -func matchVirtualWireLacp(a *VirtualWireLacp, b *VirtualWireLacp) bool { +func matchVirtualWireLldp(a *VirtualWireLldp, b *VirtualWireLldp) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchVirtualWireLacpHighAvailability(a.HighAvailability, b.HighAvailability) { + if !util.BoolsMatch(a.Enable, b.Enable) { + return false + } + if !matchVirtualWireLldpHighAvailability(a.HighAvailability, b.HighAvailability) { + return false + } + if !util.StringsMatch(a.Profile, b.Profile) { return false } return true } -func matchVirtualWireLldpHighAvailability(a *VirtualWireLldpHighAvailability, b *VirtualWireLldpHighAvailability) bool { +func matchVirtualWireLacpHighAvailability(a *VirtualWireLacpHighAvailability, b *VirtualWireLacpHighAvailability) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -7972,19 +7986,13 @@ func matchVirtualWireLldpHighAvailability(a *VirtualWireLldpHighAvailability, b } return true } -func matchVirtualWireLldp(a *VirtualWireLldp, b *VirtualWireLldp) bool { +func matchVirtualWireLacp(a *VirtualWireLacp, b *VirtualWireLacp) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.BoolsMatch(a.Enable, b.Enable) { - return false - } - if !matchVirtualWireLldpHighAvailability(a.HighAvailability, b.HighAvailability) { - return false - } - if !util.StringsMatch(a.Profile, b.Profile) { + if !matchVirtualWireLacpHighAvailability(a.HighAvailability, b.HighAvailability) { return false } return true @@ -8006,14 +8014,6 @@ func matchVirtualWire(a *VirtualWire, b *VirtualWire) bool { } return true } -func matchDecryptMirror(a *DecryptMirror, b *DecryptMirror) bool { - if a == nil && b != nil || a != nil && b == nil { - return false - } else if a == nil && b == nil { - return true - } - return true -} func (o *Entry) EntryName() string { return o.Name diff --git a/network/interface/ethernet/location.go b/network/interface/ethernet/location.go index 855a7f5..96ffdd9 100644 --- a/network/interface/ethernet/location.go +++ b/network/interface/ethernet/location.go @@ -33,19 +33,19 @@ type Layer3TemplateImportLocation struct { type Layer3TemplateVirtualRouterImportLocation struct { xpath []string - router string vsys string + router string } type Layer3TemplateVirtualRouterImportLocationSpec struct { - Router string Vsys string + Router string } func NewLayer3TemplateVirtualRouterImportLocation(spec Layer3TemplateVirtualRouterImportLocationSpec) *Layer3TemplateImportLocation { location := &Layer3TemplateVirtualRouterImportLocation{ - router: spec.Router, vsys: spec.Vsys, + router: spec.Router, } return &Layer3TemplateImportLocation{ diff --git a/network/interface/loopback/entry.go b/network/interface/loopback/entry.go index 0ef53c5..6a8ce7a 100644 --- a/network/interface/loopback/entry.go +++ b/network/interface/loopback/entry.go @@ -153,15 +153,15 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["AdjustTcpMss"]; ok { nestedAdjustTcpMss.Misc = o.Misc["AdjustTcpMss"] } - if o.AdjustTcpMss.Enable != nil { - nestedAdjustTcpMss.Enable = util.YesNo(o.AdjustTcpMss.Enable, nil) - } if o.AdjustTcpMss.Ipv4MssAdjustment != nil { nestedAdjustTcpMss.Ipv4MssAdjustment = o.AdjustTcpMss.Ipv4MssAdjustment } if o.AdjustTcpMss.Ipv6MssAdjustment != nil { nestedAdjustTcpMss.Ipv6MssAdjustment = o.AdjustTcpMss.Ipv6MssAdjustment } + if o.AdjustTcpMss.Enable != nil { + nestedAdjustTcpMss.Enable = util.YesNo(o.AdjustTcpMss.Enable, nil) + } } entry.AdjustTcpMss = nestedAdjustTcpMss @@ -189,9 +189,6 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["Ipv6"]; ok { nestedIpv6.Misc = o.Misc["Ipv6"] } - if o.Ipv6.InterfaceId != nil { - nestedIpv6.InterfaceId = o.Ipv6.InterfaceId - } if o.Ipv6.Address != nil { nestedIpv6.Address = []Ipv6AddressXml{} for _, oIpv6Address := range o.Ipv6.Address { @@ -199,15 +196,6 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["Ipv6Address"]; ok { nestedIpv6Address.Misc = o.Misc["Ipv6Address"] } - if oIpv6Address.Anycast != nil { - nestedIpv6Address.Anycast = &Ipv6AddressAnycastXml{} - if _, ok := o.Misc["Ipv6AddressAnycast"]; ok { - nestedIpv6Address.Anycast.Misc = o.Misc["Ipv6AddressAnycast"] - } - } - if oIpv6Address.Name != "" { - nestedIpv6Address.Name = oIpv6Address.Name - } if oIpv6Address.EnableOnInterface != nil { nestedIpv6Address.EnableOnInterface = util.YesNo(oIpv6Address.EnableOnInterface, nil) } @@ -217,12 +205,24 @@ func specifyEntry(o *Entry) (any, error) { nestedIpv6Address.Prefix.Misc = o.Misc["Ipv6AddressPrefix"] } } + if oIpv6Address.Anycast != nil { + nestedIpv6Address.Anycast = &Ipv6AddressAnycastXml{} + if _, ok := o.Misc["Ipv6AddressAnycast"]; ok { + nestedIpv6Address.Anycast.Misc = o.Misc["Ipv6AddressAnycast"] + } + } + if oIpv6Address.Name != "" { + nestedIpv6Address.Name = oIpv6Address.Name + } nestedIpv6.Address = append(nestedIpv6.Address, nestedIpv6Address) } } if o.Ipv6.Enabled != nil { nestedIpv6.Enabled = util.YesNo(o.Ipv6.Enabled, nil) } + if o.Ipv6.InterfaceId != nil { + nestedIpv6.InterfaceId = o.Ipv6.InterfaceId + } } entry.Ipv6 = nestedIpv6 @@ -370,15 +370,15 @@ func matchAdjustTcpMss(a *AdjustTcpMss, b *AdjustTcpMss) bool { } else if a == nil && b == nil { return true } - if !util.Ints64Match(a.Ipv4MssAdjustment, b.Ipv4MssAdjustment) { - return false - } if !util.Ints64Match(a.Ipv6MssAdjustment, b.Ipv6MssAdjustment) { return false } if !util.BoolsMatch(a.Enable, b.Enable) { return false } + if !util.Ints64Match(a.Ipv4MssAdjustment, b.Ipv4MssAdjustment) { + return false + } return true } func matchIp(a []Ip, b []Ip) bool { @@ -420,16 +420,16 @@ func matchIpv6Address(a []Ipv6Address, b []Ipv6Address) bool { } for _, a := range a { for _, b := range b { - if !util.BoolsMatch(a.EnableOnInterface, b.EnableOnInterface) { + if !matchIpv6AddressAnycast(a.Anycast, b.Anycast) { return false } - if !matchIpv6AddressPrefix(a.Prefix, b.Prefix) { + if !util.StringsEqual(a.Name, b.Name) { return false } - if !matchIpv6AddressAnycast(a.Anycast, b.Anycast) { + if !util.BoolsMatch(a.EnableOnInterface, b.EnableOnInterface) { return false } - if !util.StringsEqual(a.Name, b.Name) { + if !matchIpv6AddressPrefix(a.Prefix, b.Prefix) { return false } } diff --git a/network/interface/tunnel/entry.go b/network/interface/tunnel/entry.go index 132d3c5..b95522f 100644 --- a/network/interface/tunnel/entry.go +++ b/network/interface/tunnel/entry.go @@ -163,15 +163,15 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["Bonjour"]; ok { nestedBonjour.Misc = o.Misc["Bonjour"] } - if o.Bonjour.Enable != nil { - nestedBonjour.Enable = util.YesNo(o.Bonjour.Enable, nil) - } if o.Bonjour.GroupId != nil { nestedBonjour.GroupId = o.Bonjour.GroupId } if o.Bonjour.TtlCheck != nil { nestedBonjour.TtlCheck = util.YesNo(o.Bonjour.TtlCheck, nil) } + if o.Bonjour.Enable != nil { + nestedBonjour.Enable = util.YesNo(o.Bonjour.Enable, nil) + } } entry.Bonjour = nestedBonjour @@ -210,12 +210,6 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["Ipv6Address"]; ok { nestedIpv6Address.Misc = o.Misc["Ipv6Address"] } - if oIpv6Address.Prefix != nil { - nestedIpv6Address.Prefix = &Ipv6AddressPrefixXml{} - if _, ok := o.Misc["Ipv6AddressPrefix"]; ok { - nestedIpv6Address.Prefix.Misc = o.Misc["Ipv6AddressPrefix"] - } - } if oIpv6Address.Anycast != nil { nestedIpv6Address.Anycast = &Ipv6AddressAnycastXml{} if _, ok := o.Misc["Ipv6AddressAnycast"]; ok { @@ -228,6 +222,12 @@ func specifyEntry(o *Entry) (any, error) { if oIpv6Address.EnableOnInterface != nil { nestedIpv6Address.EnableOnInterface = util.YesNo(oIpv6Address.EnableOnInterface, nil) } + if oIpv6Address.Prefix != nil { + nestedIpv6Address.Prefix = &Ipv6AddressPrefixXml{} + if _, ok := o.Misc["Ipv6AddressPrefix"]; ok { + nestedIpv6Address.Prefix.Misc = o.Misc["Ipv6AddressPrefix"] + } + } nestedIpv6.Address = append(nestedIpv6.Address, nestedIpv6Address) } } @@ -259,15 +259,15 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Bonjour.Misc != nil { entry.Misc["Bonjour"] = o.Bonjour.Misc } - if o.Bonjour.TtlCheck != nil { - nestedBonjour.TtlCheck = util.AsBool(o.Bonjour.TtlCheck, nil) - } if o.Bonjour.Enable != nil { nestedBonjour.Enable = util.AsBool(o.Bonjour.Enable, nil) } if o.Bonjour.GroupId != nil { nestedBonjour.GroupId = o.Bonjour.GroupId } + if o.Bonjour.TtlCheck != nil { + nestedBonjour.TtlCheck = util.AsBool(o.Bonjour.TtlCheck, nil) + } } entry.Bonjour = nestedBonjour @@ -303,15 +303,6 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oIpv6Address.Misc != nil { entry.Misc["Ipv6Address"] = oIpv6Address.Misc } - if oIpv6Address.Anycast != nil { - nestedIpv6Address.Anycast = &Ipv6AddressAnycast{} - if oIpv6Address.Anycast.Misc != nil { - entry.Misc["Ipv6AddressAnycast"] = oIpv6Address.Anycast.Misc - } - } - if oIpv6Address.Name != "" { - nestedIpv6Address.Name = oIpv6Address.Name - } if oIpv6Address.EnableOnInterface != nil { nestedIpv6Address.EnableOnInterface = util.AsBool(oIpv6Address.EnableOnInterface, nil) } @@ -321,6 +312,15 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { entry.Misc["Ipv6AddressPrefix"] = oIpv6Address.Prefix.Misc } } + if oIpv6Address.Anycast != nil { + nestedIpv6Address.Anycast = &Ipv6AddressAnycast{} + if oIpv6Address.Anycast.Misc != nil { + entry.Misc["Ipv6AddressAnycast"] = oIpv6Address.Anycast.Misc + } + } + if oIpv6Address.Name != "" { + nestedIpv6Address.Name = oIpv6Address.Name + } nestedIpv6.Address = append(nestedIpv6.Address, nestedIpv6Address) } } @@ -384,23 +384,6 @@ func SpecMatches(a, b *Entry) bool { return true } -func matchBonjour(a *Bonjour, b *Bonjour) bool { - if a == nil && b != nil || a != nil && b == nil { - return false - } else if a == nil && b == nil { - return true - } - if !util.Ints64Match(a.GroupId, b.GroupId) { - return false - } - if !util.BoolsMatch(a.TtlCheck, b.TtlCheck) { - return false - } - if !util.BoolsMatch(a.Enable, b.Enable) { - return false - } - return true -} func matchIp(a []Ip, b []Ip) bool { if a == nil && b != nil || a != nil && b == nil { return false @@ -440,9 +423,6 @@ func matchIpv6Address(a []Ipv6Address, b []Ipv6Address) bool { } for _, a := range a { for _, b := range b { - if !util.StringsEqual(a.Name, b.Name) { - return false - } if !util.BoolsMatch(a.EnableOnInterface, b.EnableOnInterface) { return false } @@ -452,6 +432,9 @@ func matchIpv6Address(a []Ipv6Address, b []Ipv6Address) bool { if !matchIpv6AddressAnycast(a.Anycast, b.Anycast) { return false } + if !util.StringsEqual(a.Name, b.Name) { + return false + } } } return true @@ -462,13 +445,30 @@ func matchIpv6(a *Ipv6, b *Ipv6) bool { } else if a == nil && b == nil { return true } + if !matchIpv6Address(a.Address, b.Address) { + return false + } + if !util.BoolsMatch(a.Enabled, b.Enabled) { + return false + } if !util.StringsMatch(a.InterfaceId, b.InterfaceId) { return false } - if !matchIpv6Address(a.Address, b.Address) { + return true +} +func matchBonjour(a *Bonjour, b *Bonjour) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } - if !util.BoolsMatch(a.Enabled, b.Enabled) { + if !util.BoolsMatch(a.Enable, b.Enable) { + return false + } + if !util.Ints64Match(a.GroupId, b.GroupId) { + return false + } + if !util.BoolsMatch(a.TtlCheck, b.TtlCheck) { return false } return true diff --git a/network/interface/vlan/entry.go b/network/interface/vlan/entry.go index 1807490..a66a3f7 100644 --- a/network/interface/vlan/entry.go +++ b/network/interface/vlan/entry.go @@ -957,6 +957,12 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["DdnsConfig"]; ok { nestedDdnsConfig.Misc = o.Misc["DdnsConfig"] } + if o.DdnsConfig.DdnsCertProfile != nil { + nestedDdnsConfig.DdnsCertProfile = o.DdnsConfig.DdnsCertProfile + } + if o.DdnsConfig.DdnsEnabled != nil { + nestedDdnsConfig.DdnsEnabled = util.YesNo(o.DdnsConfig.DdnsEnabled, nil) + } if o.DdnsConfig.DdnsHostname != nil { nestedDdnsConfig.DdnsHostname = o.DdnsConfig.DdnsHostname } @@ -979,21 +985,15 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["DdnsConfigDdnsVendorConfig"]; ok { nestedDdnsConfigDdnsVendorConfig.Misc = o.Misc["DdnsConfigDdnsVendorConfig"] } - if oDdnsConfigDdnsVendorConfig.Name != "" { - nestedDdnsConfigDdnsVendorConfig.Name = oDdnsConfigDdnsVendorConfig.Name - } if oDdnsConfigDdnsVendorConfig.Value != nil { nestedDdnsConfigDdnsVendorConfig.Value = oDdnsConfigDdnsVendorConfig.Value } + if oDdnsConfigDdnsVendorConfig.Name != "" { + nestedDdnsConfigDdnsVendorConfig.Name = oDdnsConfigDdnsVendorConfig.Name + } nestedDdnsConfig.DdnsVendorConfig = append(nestedDdnsConfig.DdnsVendorConfig, nestedDdnsConfigDdnsVendorConfig) } } - if o.DdnsConfig.DdnsCertProfile != nil { - nestedDdnsConfig.DdnsCertProfile = o.DdnsConfig.DdnsCertProfile - } - if o.DdnsConfig.DdnsEnabled != nil { - nestedDdnsConfig.DdnsEnabled = util.YesNo(o.DdnsConfig.DdnsEnabled, nil) - } } entry.DdnsConfig = nestedDdnsConfig @@ -1004,6 +1004,12 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["DhcpClient"]; ok { nestedDhcpClient.Misc = o.Misc["DhcpClient"] } + if o.DhcpClient.CreateDefaultRoute != nil { + nestedDhcpClient.CreateDefaultRoute = util.YesNo(o.DhcpClient.CreateDefaultRoute, nil) + } + if o.DhcpClient.DefaultRouteMetric != nil { + nestedDhcpClient.DefaultRouteMetric = o.DhcpClient.DefaultRouteMetric + } if o.DhcpClient.Enable != nil { nestedDhcpClient.Enable = util.YesNo(o.DhcpClient.Enable, nil) } @@ -1012,18 +1018,12 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["DhcpClientSendHostname"]; ok { nestedDhcpClient.SendHostname.Misc = o.Misc["DhcpClientSendHostname"] } - if o.DhcpClient.SendHostname.Hostname != nil { - nestedDhcpClient.SendHostname.Hostname = o.DhcpClient.SendHostname.Hostname - } if o.DhcpClient.SendHostname.Enable != nil { nestedDhcpClient.SendHostname.Enable = util.YesNo(o.DhcpClient.SendHostname.Enable, nil) } - } - if o.DhcpClient.CreateDefaultRoute != nil { - nestedDhcpClient.CreateDefaultRoute = util.YesNo(o.DhcpClient.CreateDefaultRoute, nil) - } - if o.DhcpClient.DefaultRouteMetric != nil { - nestedDhcpClient.DefaultRouteMetric = o.DhcpClient.DefaultRouteMetric + if o.DhcpClient.SendHostname.Hostname != nil { + nestedDhcpClient.SendHostname.Hostname = o.DhcpClient.SendHostname.Hostname + } } } entry.DhcpClient = nestedDhcpClient @@ -1051,11 +1051,209 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["Ipv6"]; ok { nestedIpv6.Misc = o.Misc["Ipv6"] } + if o.Ipv6.Enabled != nil { + nestedIpv6.Enabled = util.YesNo(o.Ipv6.Enabled, nil) + } + if o.Ipv6.InterfaceId != nil { + nestedIpv6.InterfaceId = o.Ipv6.InterfaceId + } + if o.Ipv6.NeighborDiscovery != nil { + nestedIpv6.NeighborDiscovery = &Ipv6NeighborDiscoveryXml{} + if _, ok := o.Misc["Ipv6NeighborDiscovery"]; ok { + nestedIpv6.NeighborDiscovery.Misc = o.Misc["Ipv6NeighborDiscovery"] + } + if o.Ipv6.NeighborDiscovery.ReachableTime != nil { + nestedIpv6.NeighborDiscovery.ReachableTime = o.Ipv6.NeighborDiscovery.ReachableTime + } + if o.Ipv6.NeighborDiscovery.RouterAdvertisement != nil { + nestedIpv6.NeighborDiscovery.RouterAdvertisement = &Ipv6NeighborDiscoveryRouterAdvertisementXml{} + if _, ok := o.Misc["Ipv6NeighborDiscoveryRouterAdvertisement"]; ok { + nestedIpv6.NeighborDiscovery.RouterAdvertisement.Misc = o.Misc["Ipv6NeighborDiscoveryRouterAdvertisement"] + } + if o.Ipv6.NeighborDiscovery.RouterAdvertisement.ReachableTime != nil { + nestedIpv6.NeighborDiscovery.RouterAdvertisement.ReachableTime = o.Ipv6.NeighborDiscovery.RouterAdvertisement.ReachableTime + } + if o.Ipv6.NeighborDiscovery.RouterAdvertisement.RouterPreference != nil { + nestedIpv6.NeighborDiscovery.RouterAdvertisement.RouterPreference = o.Ipv6.NeighborDiscovery.RouterAdvertisement.RouterPreference + } + if o.Ipv6.NeighborDiscovery.RouterAdvertisement.Enable != nil { + nestedIpv6.NeighborDiscovery.RouterAdvertisement.Enable = util.YesNo(o.Ipv6.NeighborDiscovery.RouterAdvertisement.Enable, nil) + } + if o.Ipv6.NeighborDiscovery.RouterAdvertisement.Lifetime != nil { + nestedIpv6.NeighborDiscovery.RouterAdvertisement.Lifetime = o.Ipv6.NeighborDiscovery.RouterAdvertisement.Lifetime + } + if o.Ipv6.NeighborDiscovery.RouterAdvertisement.MaxInterval != nil { + nestedIpv6.NeighborDiscovery.RouterAdvertisement.MaxInterval = o.Ipv6.NeighborDiscovery.RouterAdvertisement.MaxInterval + } + if o.Ipv6.NeighborDiscovery.RouterAdvertisement.LinkMtu != nil { + nestedIpv6.NeighborDiscovery.RouterAdvertisement.LinkMtu = o.Ipv6.NeighborDiscovery.RouterAdvertisement.LinkMtu + } + if o.Ipv6.NeighborDiscovery.RouterAdvertisement.ManagedFlag != nil { + nestedIpv6.NeighborDiscovery.RouterAdvertisement.ManagedFlag = util.YesNo(o.Ipv6.NeighborDiscovery.RouterAdvertisement.ManagedFlag, nil) + } + if o.Ipv6.NeighborDiscovery.RouterAdvertisement.MinInterval != nil { + nestedIpv6.NeighborDiscovery.RouterAdvertisement.MinInterval = o.Ipv6.NeighborDiscovery.RouterAdvertisement.MinInterval + } + if o.Ipv6.NeighborDiscovery.RouterAdvertisement.OtherFlag != nil { + nestedIpv6.NeighborDiscovery.RouterAdvertisement.OtherFlag = util.YesNo(o.Ipv6.NeighborDiscovery.RouterAdvertisement.OtherFlag, nil) + } + if o.Ipv6.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer != nil { + nestedIpv6.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer = o.Ipv6.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer + } + if o.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport != nil { + nestedIpv6.NeighborDiscovery.RouterAdvertisement.DnsSupport = &Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportXml{} + if _, ok := o.Misc["Ipv6NeighborDiscoveryRouterAdvertisementDnsSupport"]; ok { + nestedIpv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Misc = o.Misc["Ipv6NeighborDiscoveryRouterAdvertisementDnsSupport"] + } + if o.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Server != nil { + nestedIpv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Server = []Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportServerXml{} + for _, oIpv6NeighborDiscoveryRouterAdvertisementDnsSupportServer := range o.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Server { + nestedIpv6NeighborDiscoveryRouterAdvertisementDnsSupportServer := Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportServerXml{} + if _, ok := o.Misc["Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportServer"]; ok { + nestedIpv6NeighborDiscoveryRouterAdvertisementDnsSupportServer.Misc = o.Misc["Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportServer"] + } + if oIpv6NeighborDiscoveryRouterAdvertisementDnsSupportServer.Lifetime != nil { + nestedIpv6NeighborDiscoveryRouterAdvertisementDnsSupportServer.Lifetime = oIpv6NeighborDiscoveryRouterAdvertisementDnsSupportServer.Lifetime + } + if oIpv6NeighborDiscoveryRouterAdvertisementDnsSupportServer.Name != "" { + nestedIpv6NeighborDiscoveryRouterAdvertisementDnsSupportServer.Name = oIpv6NeighborDiscoveryRouterAdvertisementDnsSupportServer.Name + } + nestedIpv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Server = append(nestedIpv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Server, nestedIpv6NeighborDiscoveryRouterAdvertisementDnsSupportServer) + } + } + if o.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Suffix != nil { + nestedIpv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Suffix = []Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffixXml{} + for _, oIpv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix := range o.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Suffix { + nestedIpv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix := Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffixXml{} + if _, ok := o.Misc["Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix"]; ok { + nestedIpv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix.Misc = o.Misc["Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix"] + } + if oIpv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix.Lifetime != nil { + nestedIpv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix.Lifetime = oIpv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix.Lifetime + } + if oIpv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix.Name != "" { + nestedIpv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix.Name = oIpv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix.Name + } + nestedIpv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Suffix = append(nestedIpv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Suffix, nestedIpv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix) + } + } + if o.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Enable != nil { + nestedIpv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Enable = util.YesNo(o.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Enable, nil) + } + } + if o.Ipv6.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck != nil { + nestedIpv6.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck = util.YesNo(o.Ipv6.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck, nil) + } + if o.Ipv6.NeighborDiscovery.RouterAdvertisement.HopLimit != nil { + nestedIpv6.NeighborDiscovery.RouterAdvertisement.HopLimit = o.Ipv6.NeighborDiscovery.RouterAdvertisement.HopLimit + } + } + if o.Ipv6.NeighborDiscovery.DadAttempts != nil { + nestedIpv6.NeighborDiscovery.DadAttempts = o.Ipv6.NeighborDiscovery.DadAttempts + } + if o.Ipv6.NeighborDiscovery.EnableDad != nil { + nestedIpv6.NeighborDiscovery.EnableDad = util.YesNo(o.Ipv6.NeighborDiscovery.EnableDad, nil) + } + if o.Ipv6.NeighborDiscovery.EnableNdpMonitor != nil { + nestedIpv6.NeighborDiscovery.EnableNdpMonitor = util.YesNo(o.Ipv6.NeighborDiscovery.EnableNdpMonitor, nil) + } + if o.Ipv6.NeighborDiscovery.Neighbor != nil { + nestedIpv6.NeighborDiscovery.Neighbor = []Ipv6NeighborDiscoveryNeighborXml{} + for _, oIpv6NeighborDiscoveryNeighbor := range o.Ipv6.NeighborDiscovery.Neighbor { + nestedIpv6NeighborDiscoveryNeighbor := Ipv6NeighborDiscoveryNeighborXml{} + if _, ok := o.Misc["Ipv6NeighborDiscoveryNeighbor"]; ok { + nestedIpv6NeighborDiscoveryNeighbor.Misc = o.Misc["Ipv6NeighborDiscoveryNeighbor"] + } + if oIpv6NeighborDiscoveryNeighbor.HwAddress != nil { + nestedIpv6NeighborDiscoveryNeighbor.HwAddress = oIpv6NeighborDiscoveryNeighbor.HwAddress + } + if oIpv6NeighborDiscoveryNeighbor.Name != "" { + nestedIpv6NeighborDiscoveryNeighbor.Name = oIpv6NeighborDiscoveryNeighbor.Name + } + nestedIpv6.NeighborDiscovery.Neighbor = append(nestedIpv6.NeighborDiscovery.Neighbor, nestedIpv6NeighborDiscoveryNeighbor) + } + } + if o.Ipv6.NeighborDiscovery.NsInterval != nil { + nestedIpv6.NeighborDiscovery.NsInterval = o.Ipv6.NeighborDiscovery.NsInterval + } + } if o.Ipv6.DhcpClient != nil { nestedIpv6.DhcpClient = &Ipv6DhcpClientXml{} if _, ok := o.Misc["Ipv6DhcpClient"]; ok { nestedIpv6.DhcpClient.Misc = o.Misc["Ipv6DhcpClient"] } + if o.Ipv6.DhcpClient.PrefixDelegation != nil { + nestedIpv6.DhcpClient.PrefixDelegation = &Ipv6DhcpClientPrefixDelegationXml{} + if _, ok := o.Misc["Ipv6DhcpClientPrefixDelegation"]; ok { + nestedIpv6.DhcpClient.PrefixDelegation.Misc = o.Misc["Ipv6DhcpClientPrefixDelegation"] + } + if o.Ipv6.DhcpClient.PrefixDelegation.Enable != nil { + nestedIpv6.DhcpClient.PrefixDelegation.Enable = &Ipv6DhcpClientPrefixDelegationEnableXml{} + if _, ok := o.Misc["Ipv6DhcpClientPrefixDelegationEnable"]; ok { + nestedIpv6.DhcpClient.PrefixDelegation.Enable.Misc = o.Misc["Ipv6DhcpClientPrefixDelegationEnable"] + } + if o.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes != nil { + nestedIpv6.DhcpClient.PrefixDelegation.Enable.Yes = &Ipv6DhcpClientPrefixDelegationEnableYesXml{} + if _, ok := o.Misc["Ipv6DhcpClientPrefixDelegationEnableYes"]; ok { + nestedIpv6.DhcpClient.PrefixDelegation.Enable.Yes.Misc = o.Misc["Ipv6DhcpClientPrefixDelegationEnableYes"] + } + if o.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PfxPoolName != nil { + nestedIpv6.DhcpClient.PrefixDelegation.Enable.Yes.PfxPoolName = o.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PfxPoolName + } + if o.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLen != nil { + nestedIpv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLen = o.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLen + } + if o.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLenHint != nil { + nestedIpv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLenHint = util.YesNo(o.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLenHint, nil) + } + } + if o.Ipv6.DhcpClient.PrefixDelegation.Enable.No != nil { + nestedIpv6.DhcpClient.PrefixDelegation.Enable.No = &Ipv6DhcpClientPrefixDelegationEnableNoXml{} + if _, ok := o.Misc["Ipv6DhcpClientPrefixDelegationEnableNo"]; ok { + nestedIpv6.DhcpClient.PrefixDelegation.Enable.No.Misc = o.Misc["Ipv6DhcpClientPrefixDelegationEnableNo"] + } + } + } + } + if o.Ipv6.DhcpClient.V6Options != nil { + nestedIpv6.DhcpClient.V6Options = &Ipv6DhcpClientV6OptionsXml{} + if _, ok := o.Misc["Ipv6DhcpClientV6Options"]; ok { + nestedIpv6.DhcpClient.V6Options.Misc = o.Misc["Ipv6DhcpClientV6Options"] + } + if o.Ipv6.DhcpClient.V6Options.DuidType != nil { + nestedIpv6.DhcpClient.V6Options.DuidType = o.Ipv6.DhcpClient.V6Options.DuidType + } + if o.Ipv6.DhcpClient.V6Options.Enable != nil { + nestedIpv6.DhcpClient.V6Options.Enable = &Ipv6DhcpClientV6OptionsEnableXml{} + if _, ok := o.Misc["Ipv6DhcpClientV6OptionsEnable"]; ok { + nestedIpv6.DhcpClient.V6Options.Enable.Misc = o.Misc["Ipv6DhcpClientV6OptionsEnable"] + } + if o.Ipv6.DhcpClient.V6Options.Enable.Yes != nil { + nestedIpv6.DhcpClient.V6Options.Enable.Yes = &Ipv6DhcpClientV6OptionsEnableYesXml{} + if _, ok := o.Misc["Ipv6DhcpClientV6OptionsEnableYes"]; ok { + nestedIpv6.DhcpClient.V6Options.Enable.Yes.Misc = o.Misc["Ipv6DhcpClientV6OptionsEnableYes"] + } + if o.Ipv6.DhcpClient.V6Options.Enable.Yes.NonTempAddr != nil { + nestedIpv6.DhcpClient.V6Options.Enable.Yes.NonTempAddr = util.YesNo(o.Ipv6.DhcpClient.V6Options.Enable.Yes.NonTempAddr, nil) + } + if o.Ipv6.DhcpClient.V6Options.Enable.Yes.TempAddr != nil { + nestedIpv6.DhcpClient.V6Options.Enable.Yes.TempAddr = util.YesNo(o.Ipv6.DhcpClient.V6Options.Enable.Yes.TempAddr, nil) + } + } + if o.Ipv6.DhcpClient.V6Options.Enable.No != nil { + nestedIpv6.DhcpClient.V6Options.Enable.No = &Ipv6DhcpClientV6OptionsEnableNoXml{} + if _, ok := o.Misc["Ipv6DhcpClientV6OptionsEnableNo"]; ok { + nestedIpv6.DhcpClient.V6Options.Enable.No.Misc = o.Misc["Ipv6DhcpClientV6OptionsEnableNo"] + } + } + } + if o.Ipv6.DhcpClient.V6Options.RapidCommit != nil { + nestedIpv6.DhcpClient.V6Options.RapidCommit = util.YesNo(o.Ipv6.DhcpClient.V6Options.RapidCommit, nil) + } + if o.Ipv6.DhcpClient.V6Options.SupportSrvrReconfig != nil { + nestedIpv6.DhcpClient.V6Options.SupportSrvrReconfig = util.YesNo(o.Ipv6.DhcpClient.V6Options.SupportSrvrReconfig, nil) + } + } if o.Ipv6.DhcpClient.AcceptRaRoute != nil { nestedIpv6.DhcpClient.AcceptRaRoute = util.YesNo(o.Ipv6.DhcpClient.AcceptRaRoute, nil) } @@ -1070,55 +1268,6 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["Ipv6DhcpClientNeighborDiscovery"]; ok { nestedIpv6.DhcpClient.NeighborDiscovery.Misc = o.Misc["Ipv6DhcpClientNeighborDiscovery"] } - if o.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix != nil { - nestedIpv6.DhcpClient.NeighborDiscovery.DnsSuffix = &Ipv6DhcpClientNeighborDiscoveryDnsSuffixXml{} - if _, ok := o.Misc["Ipv6DhcpClientNeighborDiscoveryDnsSuffix"]; ok { - nestedIpv6.DhcpClient.NeighborDiscovery.DnsSuffix.Misc = o.Misc["Ipv6DhcpClientNeighborDiscoveryDnsSuffix"] - } - if o.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Enable != nil { - nestedIpv6.DhcpClient.NeighborDiscovery.DnsSuffix.Enable = util.YesNo(o.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Enable, nil) - } - if o.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source != nil { - nestedIpv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source = &Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceXml{} - if _, ok := o.Misc["Ipv6DhcpClientNeighborDiscoveryDnsSuffixSource"]; ok { - nestedIpv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Misc = o.Misc["Ipv6DhcpClientNeighborDiscoveryDnsSuffixSource"] - } - if o.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Dhcpv6 != nil { - nestedIpv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Dhcpv6 = &Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceDhcpv6Xml{} - if _, ok := o.Misc["Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceDhcpv6"]; ok { - nestedIpv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Dhcpv6.Misc = o.Misc["Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceDhcpv6"] - } - } - if o.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Manual != nil { - nestedIpv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Manual = &Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualXml{} - if _, ok := o.Misc["Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManual"]; ok { - nestedIpv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Manual.Misc = o.Misc["Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManual"] - } - if o.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Manual.Suffix != nil { - nestedIpv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Manual.Suffix = []Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffixXml{} - for _, oIpv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix := range o.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Manual.Suffix { - nestedIpv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix := Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffixXml{} - if _, ok := o.Misc["Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix"]; ok { - nestedIpv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix.Misc = o.Misc["Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix"] - } - if oIpv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix.Lifetime != nil { - nestedIpv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix.Lifetime = oIpv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix.Lifetime - } - if oIpv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix.Name != "" { - nestedIpv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix.Name = oIpv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix.Name - } - nestedIpv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Manual.Suffix = append(nestedIpv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Manual.Suffix, nestedIpv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix) - } - } - } - } - } - if o.Ipv6.DhcpClient.NeighborDiscovery.EnableDad != nil { - nestedIpv6.DhcpClient.NeighborDiscovery.EnableDad = util.YesNo(o.Ipv6.DhcpClient.NeighborDiscovery.EnableDad, nil) - } - if o.Ipv6.DhcpClient.NeighborDiscovery.EnableNdpMonitor != nil { - nestedIpv6.DhcpClient.NeighborDiscovery.EnableNdpMonitor = util.YesNo(o.Ipv6.DhcpClient.NeighborDiscovery.EnableNdpMonitor, nil) - } if o.Ipv6.DhcpClient.NeighborDiscovery.Neighbor != nil { nestedIpv6.DhcpClient.NeighborDiscovery.Neighbor = []Ipv6DhcpClientNeighborDiscoveryNeighborXml{} for _, oIpv6DhcpClientNeighborDiscoveryNeighbor := range o.Ipv6.DhcpClient.NeighborDiscovery.Neighbor { @@ -1182,86 +1331,63 @@ func specifyEntry(o *Entry) (any, error) { nestedIpv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Name = oIpv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Name } nestedIpv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual.Server = append(nestedIpv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual.Server, nestedIpv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer) - } - } - } - } - } - } - if o.Ipv6.DhcpClient.Preference != nil { - nestedIpv6.DhcpClient.Preference = o.Ipv6.DhcpClient.Preference - } - if o.Ipv6.DhcpClient.PrefixDelegation != nil { - nestedIpv6.DhcpClient.PrefixDelegation = &Ipv6DhcpClientPrefixDelegationXml{} - if _, ok := o.Misc["Ipv6DhcpClientPrefixDelegation"]; ok { - nestedIpv6.DhcpClient.PrefixDelegation.Misc = o.Misc["Ipv6DhcpClientPrefixDelegation"] - } - if o.Ipv6.DhcpClient.PrefixDelegation.Enable != nil { - nestedIpv6.DhcpClient.PrefixDelegation.Enable = &Ipv6DhcpClientPrefixDelegationEnableXml{} - if _, ok := o.Misc["Ipv6DhcpClientPrefixDelegationEnable"]; ok { - nestedIpv6.DhcpClient.PrefixDelegation.Enable.Misc = o.Misc["Ipv6DhcpClientPrefixDelegationEnable"] - } - if o.Ipv6.DhcpClient.PrefixDelegation.Enable.No != nil { - nestedIpv6.DhcpClient.PrefixDelegation.Enable.No = &Ipv6DhcpClientPrefixDelegationEnableNoXml{} - if _, ok := o.Misc["Ipv6DhcpClientPrefixDelegationEnableNo"]; ok { - nestedIpv6.DhcpClient.PrefixDelegation.Enable.No.Misc = o.Misc["Ipv6DhcpClientPrefixDelegationEnableNo"] - } - } - if o.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes != nil { - nestedIpv6.DhcpClient.PrefixDelegation.Enable.Yes = &Ipv6DhcpClientPrefixDelegationEnableYesXml{} - if _, ok := o.Misc["Ipv6DhcpClientPrefixDelegationEnableYes"]; ok { - nestedIpv6.DhcpClient.PrefixDelegation.Enable.Yes.Misc = o.Misc["Ipv6DhcpClientPrefixDelegationEnableYes"] - } - if o.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PfxPoolName != nil { - nestedIpv6.DhcpClient.PrefixDelegation.Enable.Yes.PfxPoolName = o.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PfxPoolName - } - if o.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLen != nil { - nestedIpv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLen = o.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLen - } - if o.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLenHint != nil { - nestedIpv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLenHint = util.YesNo(o.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLenHint, nil) - } - } - } - } - if o.Ipv6.DhcpClient.V6Options != nil { - nestedIpv6.DhcpClient.V6Options = &Ipv6DhcpClientV6OptionsXml{} - if _, ok := o.Misc["Ipv6DhcpClientV6Options"]; ok { - nestedIpv6.DhcpClient.V6Options.Misc = o.Misc["Ipv6DhcpClientV6Options"] - } - if o.Ipv6.DhcpClient.V6Options.RapidCommit != nil { - nestedIpv6.DhcpClient.V6Options.RapidCommit = util.YesNo(o.Ipv6.DhcpClient.V6Options.RapidCommit, nil) - } - if o.Ipv6.DhcpClient.V6Options.SupportSrvrReconfig != nil { - nestedIpv6.DhcpClient.V6Options.SupportSrvrReconfig = util.YesNo(o.Ipv6.DhcpClient.V6Options.SupportSrvrReconfig, nil) - } - if o.Ipv6.DhcpClient.V6Options.DuidType != nil { - nestedIpv6.DhcpClient.V6Options.DuidType = o.Ipv6.DhcpClient.V6Options.DuidType + } + } + } + } } - if o.Ipv6.DhcpClient.V6Options.Enable != nil { - nestedIpv6.DhcpClient.V6Options.Enable = &Ipv6DhcpClientV6OptionsEnableXml{} - if _, ok := o.Misc["Ipv6DhcpClientV6OptionsEnable"]; ok { - nestedIpv6.DhcpClient.V6Options.Enable.Misc = o.Misc["Ipv6DhcpClientV6OptionsEnable"] + if o.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix != nil { + nestedIpv6.DhcpClient.NeighborDiscovery.DnsSuffix = &Ipv6DhcpClientNeighborDiscoveryDnsSuffixXml{} + if _, ok := o.Misc["Ipv6DhcpClientNeighborDiscoveryDnsSuffix"]; ok { + nestedIpv6.DhcpClient.NeighborDiscovery.DnsSuffix.Misc = o.Misc["Ipv6DhcpClientNeighborDiscoveryDnsSuffix"] } - if o.Ipv6.DhcpClient.V6Options.Enable.Yes != nil { - nestedIpv6.DhcpClient.V6Options.Enable.Yes = &Ipv6DhcpClientV6OptionsEnableYesXml{} - if _, ok := o.Misc["Ipv6DhcpClientV6OptionsEnableYes"]; ok { - nestedIpv6.DhcpClient.V6Options.Enable.Yes.Misc = o.Misc["Ipv6DhcpClientV6OptionsEnableYes"] - } - if o.Ipv6.DhcpClient.V6Options.Enable.Yes.NonTempAddr != nil { - nestedIpv6.DhcpClient.V6Options.Enable.Yes.NonTempAddr = util.YesNo(o.Ipv6.DhcpClient.V6Options.Enable.Yes.NonTempAddr, nil) + if o.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Enable != nil { + nestedIpv6.DhcpClient.NeighborDiscovery.DnsSuffix.Enable = util.YesNo(o.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Enable, nil) + } + if o.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source != nil { + nestedIpv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source = &Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceXml{} + if _, ok := o.Misc["Ipv6DhcpClientNeighborDiscoveryDnsSuffixSource"]; ok { + nestedIpv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Misc = o.Misc["Ipv6DhcpClientNeighborDiscoveryDnsSuffixSource"] } - if o.Ipv6.DhcpClient.V6Options.Enable.Yes.TempAddr != nil { - nestedIpv6.DhcpClient.V6Options.Enable.Yes.TempAddr = util.YesNo(o.Ipv6.DhcpClient.V6Options.Enable.Yes.TempAddr, nil) + if o.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Dhcpv6 != nil { + nestedIpv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Dhcpv6 = &Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceDhcpv6Xml{} + if _, ok := o.Misc["Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceDhcpv6"]; ok { + nestedIpv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Dhcpv6.Misc = o.Misc["Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceDhcpv6"] + } } - } - if o.Ipv6.DhcpClient.V6Options.Enable.No != nil { - nestedIpv6.DhcpClient.V6Options.Enable.No = &Ipv6DhcpClientV6OptionsEnableNoXml{} - if _, ok := o.Misc["Ipv6DhcpClientV6OptionsEnableNo"]; ok { - nestedIpv6.DhcpClient.V6Options.Enable.No.Misc = o.Misc["Ipv6DhcpClientV6OptionsEnableNo"] + if o.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Manual != nil { + nestedIpv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Manual = &Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualXml{} + if _, ok := o.Misc["Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManual"]; ok { + nestedIpv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Manual.Misc = o.Misc["Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManual"] + } + if o.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Manual.Suffix != nil { + nestedIpv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Manual.Suffix = []Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffixXml{} + for _, oIpv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix := range o.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Manual.Suffix { + nestedIpv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix := Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffixXml{} + if _, ok := o.Misc["Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix"]; ok { + nestedIpv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix.Misc = o.Misc["Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix"] + } + if oIpv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix.Lifetime != nil { + nestedIpv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix.Lifetime = oIpv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix.Lifetime + } + if oIpv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix.Name != "" { + nestedIpv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix.Name = oIpv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix.Name + } + nestedIpv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Manual.Suffix = append(nestedIpv6.DhcpClient.NeighborDiscovery.DnsSuffix.Source.Manual.Suffix, nestedIpv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix) + } + } } } } + if o.Ipv6.DhcpClient.NeighborDiscovery.EnableDad != nil { + nestedIpv6.DhcpClient.NeighborDiscovery.EnableDad = util.YesNo(o.Ipv6.DhcpClient.NeighborDiscovery.EnableDad, nil) + } + if o.Ipv6.DhcpClient.NeighborDiscovery.EnableNdpMonitor != nil { + nestedIpv6.DhcpClient.NeighborDiscovery.EnableNdpMonitor = util.YesNo(o.Ipv6.DhcpClient.NeighborDiscovery.EnableNdpMonitor, nil) + } + } + if o.Ipv6.DhcpClient.Preference != nil { + nestedIpv6.DhcpClient.Preference = o.Ipv6.DhcpClient.Preference } } if o.Ipv6.Inherited != nil { @@ -1312,15 +1438,15 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["Ipv6InheritedAssignAddrTypeGuaAdvertise"]; ok { nestedIpv6InheritedAssignAddr.Type.Gua.Advertise.Misc = o.Misc["Ipv6InheritedAssignAddrTypeGuaAdvertise"] } - if oIpv6InheritedAssignAddr.Type.Gua.Advertise.AutoConfigFlag != nil { - nestedIpv6InheritedAssignAddr.Type.Gua.Advertise.AutoConfigFlag = util.YesNo(oIpv6InheritedAssignAddr.Type.Gua.Advertise.AutoConfigFlag, nil) - } if oIpv6InheritedAssignAddr.Type.Gua.Advertise.Enable != nil { nestedIpv6InheritedAssignAddr.Type.Gua.Advertise.Enable = util.YesNo(oIpv6InheritedAssignAddr.Type.Gua.Advertise.Enable, nil) } if oIpv6InheritedAssignAddr.Type.Gua.Advertise.OnlinkFlag != nil { nestedIpv6InheritedAssignAddr.Type.Gua.Advertise.OnlinkFlag = util.YesNo(oIpv6InheritedAssignAddr.Type.Gua.Advertise.OnlinkFlag, nil) } + if oIpv6InheritedAssignAddr.Type.Gua.Advertise.AutoConfigFlag != nil { + nestedIpv6InheritedAssignAddr.Type.Gua.Advertise.AutoConfigFlag = util.YesNo(oIpv6InheritedAssignAddr.Type.Gua.Advertise.AutoConfigFlag, nil) + } } if oIpv6InheritedAssignAddr.Type.Gua.EnableOnInterface != nil { nestedIpv6InheritedAssignAddr.Type.Gua.EnableOnInterface = util.YesNo(oIpv6InheritedAssignAddr.Type.Gua.EnableOnInterface, nil) @@ -1351,9 +1477,6 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["Ipv6InheritedAssignAddrTypeUlaAdvertise"]; ok { nestedIpv6InheritedAssignAddr.Type.Ula.Advertise.Misc = o.Misc["Ipv6InheritedAssignAddrTypeUlaAdvertise"] } - if oIpv6InheritedAssignAddr.Type.Ula.Advertise.OnlinkFlag != nil { - nestedIpv6InheritedAssignAddr.Type.Ula.Advertise.OnlinkFlag = util.YesNo(oIpv6InheritedAssignAddr.Type.Ula.Advertise.OnlinkFlag, nil) - } if oIpv6InheritedAssignAddr.Type.Ula.Advertise.AutoConfigFlag != nil { nestedIpv6InheritedAssignAddr.Type.Ula.Advertise.AutoConfigFlag = util.YesNo(oIpv6InheritedAssignAddr.Type.Ula.Advertise.AutoConfigFlag, nil) } @@ -1366,6 +1489,9 @@ func specifyEntry(o *Entry) (any, error) { if oIpv6InheritedAssignAddr.Type.Ula.Advertise.PreferredLifetime != nil { nestedIpv6InheritedAssignAddr.Type.Ula.Advertise.PreferredLifetime = oIpv6InheritedAssignAddr.Type.Ula.Advertise.PreferredLifetime } + if oIpv6InheritedAssignAddr.Type.Ula.Advertise.OnlinkFlag != nil { + nestedIpv6InheritedAssignAddr.Type.Ula.Advertise.OnlinkFlag = util.YesNo(oIpv6InheritedAssignAddr.Type.Ula.Advertise.OnlinkFlag, nil) + } } } } @@ -1383,55 +1509,70 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["Ipv6InheritedNeighborDiscovery"]; ok { nestedIpv6.Inherited.NeighborDiscovery.Misc = o.Misc["Ipv6InheritedNeighborDiscovery"] } - if o.Ipv6.Inherited.NeighborDiscovery.DadAttempts != nil { - nestedIpv6.Inherited.NeighborDiscovery.DadAttempts = o.Ipv6.Inherited.NeighborDiscovery.DadAttempts - } - if o.Ipv6.Inherited.NeighborDiscovery.DnsServer != nil { - nestedIpv6.Inherited.NeighborDiscovery.DnsServer = &Ipv6InheritedNeighborDiscoveryDnsServerXml{} - if _, ok := o.Misc["Ipv6InheritedNeighborDiscoveryDnsServer"]; ok { - nestedIpv6.Inherited.NeighborDiscovery.DnsServer.Misc = o.Misc["Ipv6InheritedNeighborDiscoveryDnsServer"] - } - if o.Ipv6.Inherited.NeighborDiscovery.DnsServer.Enable != nil { - nestedIpv6.Inherited.NeighborDiscovery.DnsServer.Enable = util.YesNo(o.Ipv6.Inherited.NeighborDiscovery.DnsServer.Enable, nil) - } - if o.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source != nil { - nestedIpv6.Inherited.NeighborDiscovery.DnsServer.Source = &Ipv6InheritedNeighborDiscoveryDnsServerSourceXml{} - if _, ok := o.Misc["Ipv6InheritedNeighborDiscoveryDnsServerSource"]; ok { - nestedIpv6.Inherited.NeighborDiscovery.DnsServer.Source.Misc = o.Misc["Ipv6InheritedNeighborDiscoveryDnsServerSource"] + if o.Ipv6.Inherited.NeighborDiscovery.Neighbor != nil { + nestedIpv6.Inherited.NeighborDiscovery.Neighbor = []Ipv6InheritedNeighborDiscoveryNeighborXml{} + for _, oIpv6InheritedNeighborDiscoveryNeighbor := range o.Ipv6.Inherited.NeighborDiscovery.Neighbor { + nestedIpv6InheritedNeighborDiscoveryNeighbor := Ipv6InheritedNeighborDiscoveryNeighborXml{} + if _, ok := o.Misc["Ipv6InheritedNeighborDiscoveryNeighbor"]; ok { + nestedIpv6InheritedNeighborDiscoveryNeighbor.Misc = o.Misc["Ipv6InheritedNeighborDiscoveryNeighbor"] } - if o.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6 != nil { - nestedIpv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6 = &Ipv6InheritedNeighborDiscoveryDnsServerSourceDhcpv6Xml{} - if _, ok := o.Misc["Ipv6InheritedNeighborDiscoveryDnsServerSourceDhcpv6"]; ok { - nestedIpv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6.Misc = o.Misc["Ipv6InheritedNeighborDiscoveryDnsServerSourceDhcpv6"] - } - if o.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6.PrefixPool != nil { - nestedIpv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6.PrefixPool = o.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6.PrefixPool - } + if oIpv6InheritedNeighborDiscoveryNeighbor.Name != "" { + nestedIpv6InheritedNeighborDiscoveryNeighbor.Name = oIpv6InheritedNeighborDiscoveryNeighbor.Name } - if o.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual != nil { - nestedIpv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual = &Ipv6InheritedNeighborDiscoveryDnsServerSourceManualXml{} - if _, ok := o.Misc["Ipv6InheritedNeighborDiscoveryDnsServerSourceManual"]; ok { - nestedIpv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual.Misc = o.Misc["Ipv6InheritedNeighborDiscoveryDnsServerSourceManual"] - } - if o.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual.Server != nil { - nestedIpv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual.Server = []Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServerXml{} - for _, oIpv6InheritedNeighborDiscoveryDnsServerSourceManualServer := range o.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual.Server { - nestedIpv6InheritedNeighborDiscoveryDnsServerSourceManualServer := Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServerXml{} - if _, ok := o.Misc["Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer"]; ok { - nestedIpv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Misc = o.Misc["Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer"] - } - if oIpv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Lifetime != nil { - nestedIpv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Lifetime = oIpv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Lifetime - } - if oIpv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Name != "" { - nestedIpv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Name = oIpv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Name - } - nestedIpv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual.Server = append(nestedIpv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual.Server, nestedIpv6InheritedNeighborDiscoveryDnsServerSourceManualServer) - } - } + if oIpv6InheritedNeighborDiscoveryNeighbor.HwAddress != nil { + nestedIpv6InheritedNeighborDiscoveryNeighbor.HwAddress = oIpv6InheritedNeighborDiscoveryNeighbor.HwAddress } + nestedIpv6.Inherited.NeighborDiscovery.Neighbor = append(nestedIpv6.Inherited.NeighborDiscovery.Neighbor, nestedIpv6InheritedNeighborDiscoveryNeighbor) + } + } + if o.Ipv6.Inherited.NeighborDiscovery.ReachableTime != nil { + nestedIpv6.Inherited.NeighborDiscovery.ReachableTime = o.Ipv6.Inherited.NeighborDiscovery.ReachableTime + } + if o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement != nil { + nestedIpv6.Inherited.NeighborDiscovery.RouterAdvertisement = &Ipv6InheritedNeighborDiscoveryRouterAdvertisementXml{} + if _, ok := o.Misc["Ipv6InheritedNeighborDiscoveryRouterAdvertisement"]; ok { + nestedIpv6.Inherited.NeighborDiscovery.RouterAdvertisement.Misc = o.Misc["Ipv6InheritedNeighborDiscoveryRouterAdvertisement"] + } + if o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.MinInterval != nil { + nestedIpv6.Inherited.NeighborDiscovery.RouterAdvertisement.MinInterval = o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.MinInterval + } + if o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.ReachableTime != nil { + nestedIpv6.Inherited.NeighborDiscovery.RouterAdvertisement.ReachableTime = o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.ReachableTime + } + if o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer != nil { + nestedIpv6.Inherited.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer = o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer + } + if o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Enable != nil { + nestedIpv6.Inherited.NeighborDiscovery.RouterAdvertisement.Enable = util.YesNo(o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Enable, nil) + } + if o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.HopLimit != nil { + nestedIpv6.Inherited.NeighborDiscovery.RouterAdvertisement.HopLimit = o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.HopLimit + } + if o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Lifetime != nil { + nestedIpv6.Inherited.NeighborDiscovery.RouterAdvertisement.Lifetime = o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Lifetime + } + if o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.ManagedFlag != nil { + nestedIpv6.Inherited.NeighborDiscovery.RouterAdvertisement.ManagedFlag = util.YesNo(o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.ManagedFlag, nil) + } + if o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.MaxInterval != nil { + nestedIpv6.Inherited.NeighborDiscovery.RouterAdvertisement.MaxInterval = o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.MaxInterval + } + if o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck != nil { + nestedIpv6.Inherited.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck = util.YesNo(o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck, nil) + } + if o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.LinkMtu != nil { + nestedIpv6.Inherited.NeighborDiscovery.RouterAdvertisement.LinkMtu = o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.LinkMtu + } + if o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.OtherFlag != nil { + nestedIpv6.Inherited.NeighborDiscovery.RouterAdvertisement.OtherFlag = util.YesNo(o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.OtherFlag, nil) + } + if o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RouterPreference != nil { + nestedIpv6.Inherited.NeighborDiscovery.RouterAdvertisement.RouterPreference = o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RouterPreference } } + if o.Ipv6.Inherited.NeighborDiscovery.DadAttempts != nil { + nestedIpv6.Inherited.NeighborDiscovery.DadAttempts = o.Ipv6.Inherited.NeighborDiscovery.DadAttempts + } if o.Ipv6.Inherited.NeighborDiscovery.DnsSuffix != nil { nestedIpv6.Inherited.NeighborDiscovery.DnsSuffix = &Ipv6InheritedNeighborDiscoveryDnsSuffixXml{} if _, ok := o.Misc["Ipv6InheritedNeighborDiscoveryDnsSuffix"]; ok { @@ -1466,12 +1607,12 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix"]; ok { nestedIpv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Misc = o.Misc["Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix"] } - if oIpv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Name != "" { - nestedIpv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Name = oIpv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Name - } if oIpv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Lifetime != nil { nestedIpv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Lifetime = oIpv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Lifetime } + if oIpv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Name != "" { + nestedIpv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Name = oIpv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Name + } nestedIpv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Manual.Suffix = append(nestedIpv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Manual.Suffix, nestedIpv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix) } } @@ -1481,73 +1622,58 @@ func specifyEntry(o *Entry) (any, error) { if o.Ipv6.Inherited.NeighborDiscovery.EnableDad != nil { nestedIpv6.Inherited.NeighborDiscovery.EnableDad = util.YesNo(o.Ipv6.Inherited.NeighborDiscovery.EnableDad, nil) } - if o.Ipv6.Inherited.NeighborDiscovery.Neighbor != nil { - nestedIpv6.Inherited.NeighborDiscovery.Neighbor = []Ipv6InheritedNeighborDiscoveryNeighborXml{} - for _, oIpv6InheritedNeighborDiscoveryNeighbor := range o.Ipv6.Inherited.NeighborDiscovery.Neighbor { - nestedIpv6InheritedNeighborDiscoveryNeighbor := Ipv6InheritedNeighborDiscoveryNeighborXml{} - if _, ok := o.Misc["Ipv6InheritedNeighborDiscoveryNeighbor"]; ok { - nestedIpv6InheritedNeighborDiscoveryNeighbor.Misc = o.Misc["Ipv6InheritedNeighborDiscoveryNeighbor"] - } - if oIpv6InheritedNeighborDiscoveryNeighbor.HwAddress != nil { - nestedIpv6InheritedNeighborDiscoveryNeighbor.HwAddress = oIpv6InheritedNeighborDiscoveryNeighbor.HwAddress - } - if oIpv6InheritedNeighborDiscoveryNeighbor.Name != "" { - nestedIpv6InheritedNeighborDiscoveryNeighbor.Name = oIpv6InheritedNeighborDiscoveryNeighbor.Name - } - nestedIpv6.Inherited.NeighborDiscovery.Neighbor = append(nestedIpv6.Inherited.NeighborDiscovery.Neighbor, nestedIpv6InheritedNeighborDiscoveryNeighbor) - } + if o.Ipv6.Inherited.NeighborDiscovery.EnableNdpMonitor != nil { + nestedIpv6.Inherited.NeighborDiscovery.EnableNdpMonitor = util.YesNo(o.Ipv6.Inherited.NeighborDiscovery.EnableNdpMonitor, nil) } if o.Ipv6.Inherited.NeighborDiscovery.NsInterval != nil { nestedIpv6.Inherited.NeighborDiscovery.NsInterval = o.Ipv6.Inherited.NeighborDiscovery.NsInterval } - if o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement != nil { - nestedIpv6.Inherited.NeighborDiscovery.RouterAdvertisement = &Ipv6InheritedNeighborDiscoveryRouterAdvertisementXml{} - if _, ok := o.Misc["Ipv6InheritedNeighborDiscoveryRouterAdvertisement"]; ok { - nestedIpv6.Inherited.NeighborDiscovery.RouterAdvertisement.Misc = o.Misc["Ipv6InheritedNeighborDiscoveryRouterAdvertisement"] - } - if o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.MaxInterval != nil { - nestedIpv6.Inherited.NeighborDiscovery.RouterAdvertisement.MaxInterval = o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.MaxInterval - } - if o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.MinInterval != nil { - nestedIpv6.Inherited.NeighborDiscovery.RouterAdvertisement.MinInterval = o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.MinInterval - } - if o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.ReachableTime != nil { - nestedIpv6.Inherited.NeighborDiscovery.RouterAdvertisement.ReachableTime = o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.ReachableTime - } - if o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Enable != nil { - nestedIpv6.Inherited.NeighborDiscovery.RouterAdvertisement.Enable = util.YesNo(o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Enable, nil) - } - if o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck != nil { - nestedIpv6.Inherited.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck = util.YesNo(o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck, nil) - } - if o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.HopLimit != nil { - nestedIpv6.Inherited.NeighborDiscovery.RouterAdvertisement.HopLimit = o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.HopLimit - } - if o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Lifetime != nil { - nestedIpv6.Inherited.NeighborDiscovery.RouterAdvertisement.Lifetime = o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Lifetime - } - if o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.LinkMtu != nil { - nestedIpv6.Inherited.NeighborDiscovery.RouterAdvertisement.LinkMtu = o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.LinkMtu - } - if o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.ManagedFlag != nil { - nestedIpv6.Inherited.NeighborDiscovery.RouterAdvertisement.ManagedFlag = util.YesNo(o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.ManagedFlag, nil) - } - if o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.OtherFlag != nil { - nestedIpv6.Inherited.NeighborDiscovery.RouterAdvertisement.OtherFlag = util.YesNo(o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.OtherFlag, nil) + if o.Ipv6.Inherited.NeighborDiscovery.DnsServer != nil { + nestedIpv6.Inherited.NeighborDiscovery.DnsServer = &Ipv6InheritedNeighborDiscoveryDnsServerXml{} + if _, ok := o.Misc["Ipv6InheritedNeighborDiscoveryDnsServer"]; ok { + nestedIpv6.Inherited.NeighborDiscovery.DnsServer.Misc = o.Misc["Ipv6InheritedNeighborDiscoveryDnsServer"] } - if o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer != nil { - nestedIpv6.Inherited.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer = o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer + if o.Ipv6.Inherited.NeighborDiscovery.DnsServer.Enable != nil { + nestedIpv6.Inherited.NeighborDiscovery.DnsServer.Enable = util.YesNo(o.Ipv6.Inherited.NeighborDiscovery.DnsServer.Enable, nil) } - if o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RouterPreference != nil { - nestedIpv6.Inherited.NeighborDiscovery.RouterAdvertisement.RouterPreference = o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RouterPreference + if o.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source != nil { + nestedIpv6.Inherited.NeighborDiscovery.DnsServer.Source = &Ipv6InheritedNeighborDiscoveryDnsServerSourceXml{} + if _, ok := o.Misc["Ipv6InheritedNeighborDiscoveryDnsServerSource"]; ok { + nestedIpv6.Inherited.NeighborDiscovery.DnsServer.Source.Misc = o.Misc["Ipv6InheritedNeighborDiscoveryDnsServerSource"] + } + if o.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6 != nil { + nestedIpv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6 = &Ipv6InheritedNeighborDiscoveryDnsServerSourceDhcpv6Xml{} + if _, ok := o.Misc["Ipv6InheritedNeighborDiscoveryDnsServerSourceDhcpv6"]; ok { + nestedIpv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6.Misc = o.Misc["Ipv6InheritedNeighborDiscoveryDnsServerSourceDhcpv6"] + } + if o.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6.PrefixPool != nil { + nestedIpv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6.PrefixPool = o.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6.PrefixPool + } + } + if o.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual != nil { + nestedIpv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual = &Ipv6InheritedNeighborDiscoveryDnsServerSourceManualXml{} + if _, ok := o.Misc["Ipv6InheritedNeighborDiscoveryDnsServerSourceManual"]; ok { + nestedIpv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual.Misc = o.Misc["Ipv6InheritedNeighborDiscoveryDnsServerSourceManual"] + } + if o.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual.Server != nil { + nestedIpv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual.Server = []Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServerXml{} + for _, oIpv6InheritedNeighborDiscoveryDnsServerSourceManualServer := range o.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual.Server { + nestedIpv6InheritedNeighborDiscoveryDnsServerSourceManualServer := Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServerXml{} + if _, ok := o.Misc["Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer"]; ok { + nestedIpv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Misc = o.Misc["Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer"] + } + if oIpv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Lifetime != nil { + nestedIpv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Lifetime = oIpv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Lifetime + } + if oIpv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Name != "" { + nestedIpv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Name = oIpv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Name + } + nestedIpv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual.Server = append(nestedIpv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual.Server, nestedIpv6InheritedNeighborDiscoveryDnsServerSourceManualServer) + } + } + } } } - if o.Ipv6.Inherited.NeighborDiscovery.EnableNdpMonitor != nil { - nestedIpv6.Inherited.NeighborDiscovery.EnableNdpMonitor = util.YesNo(o.Ipv6.Inherited.NeighborDiscovery.EnableNdpMonitor, nil) - } - if o.Ipv6.Inherited.NeighborDiscovery.ReachableTime != nil { - nestedIpv6.Inherited.NeighborDiscovery.ReachableTime = o.Ipv6.Inherited.NeighborDiscovery.ReachableTime - } } } if o.Ipv6.Address != nil { @@ -1557,6 +1683,15 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["Ipv6Address"]; ok { nestedIpv6Address.Misc = o.Misc["Ipv6Address"] } + if oIpv6Address.EnableOnInterface != nil { + nestedIpv6Address.EnableOnInterface = util.YesNo(oIpv6Address.EnableOnInterface, nil) + } + if oIpv6Address.Prefix != nil { + nestedIpv6Address.Prefix = &Ipv6AddressPrefixXml{} + if _, ok := o.Misc["Ipv6AddressPrefix"]; ok { + nestedIpv6Address.Prefix.Misc = o.Misc["Ipv6AddressPrefix"] + } + } if oIpv6Address.Anycast != nil { nestedIpv6Address.Anycast = &Ipv6AddressAnycastXml{} if _, ok := o.Misc["Ipv6AddressAnycast"]; ok { @@ -1568,9 +1703,6 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["Ipv6AddressAdvertise"]; ok { nestedIpv6Address.Advertise.Misc = o.Misc["Ipv6AddressAdvertise"] } - if oIpv6Address.Advertise.AutoConfigFlag != nil { - nestedIpv6Address.Advertise.AutoConfigFlag = util.YesNo(oIpv6Address.Advertise.AutoConfigFlag, nil) - } if oIpv6Address.Advertise.Enable != nil { nestedIpv6Address.Advertise.Enable = util.YesNo(oIpv6Address.Advertise.Enable, nil) } @@ -1583,148 +1715,16 @@ func specifyEntry(o *Entry) (any, error) { if oIpv6Address.Advertise.OnlinkFlag != nil { nestedIpv6Address.Advertise.OnlinkFlag = util.YesNo(oIpv6Address.Advertise.OnlinkFlag, nil) } + if oIpv6Address.Advertise.AutoConfigFlag != nil { + nestedIpv6Address.Advertise.AutoConfigFlag = util.YesNo(oIpv6Address.Advertise.AutoConfigFlag, nil) + } } if oIpv6Address.Name != "" { nestedIpv6Address.Name = oIpv6Address.Name } - if oIpv6Address.EnableOnInterface != nil { - nestedIpv6Address.EnableOnInterface = util.YesNo(oIpv6Address.EnableOnInterface, nil) - } - if oIpv6Address.Prefix != nil { - nestedIpv6Address.Prefix = &Ipv6AddressPrefixXml{} - if _, ok := o.Misc["Ipv6AddressPrefix"]; ok { - nestedIpv6Address.Prefix.Misc = o.Misc["Ipv6AddressPrefix"] - } - } nestedIpv6.Address = append(nestedIpv6.Address, nestedIpv6Address) } } - if o.Ipv6.Enabled != nil { - nestedIpv6.Enabled = util.YesNo(o.Ipv6.Enabled, nil) - } - if o.Ipv6.InterfaceId != nil { - nestedIpv6.InterfaceId = o.Ipv6.InterfaceId - } - if o.Ipv6.NeighborDiscovery != nil { - nestedIpv6.NeighborDiscovery = &Ipv6NeighborDiscoveryXml{} - if _, ok := o.Misc["Ipv6NeighborDiscovery"]; ok { - nestedIpv6.NeighborDiscovery.Misc = o.Misc["Ipv6NeighborDiscovery"] - } - if o.Ipv6.NeighborDiscovery.DadAttempts != nil { - nestedIpv6.NeighborDiscovery.DadAttempts = o.Ipv6.NeighborDiscovery.DadAttempts - } - if o.Ipv6.NeighborDiscovery.EnableDad != nil { - nestedIpv6.NeighborDiscovery.EnableDad = util.YesNo(o.Ipv6.NeighborDiscovery.EnableDad, nil) - } - if o.Ipv6.NeighborDiscovery.EnableNdpMonitor != nil { - nestedIpv6.NeighborDiscovery.EnableNdpMonitor = util.YesNo(o.Ipv6.NeighborDiscovery.EnableNdpMonitor, nil) - } - if o.Ipv6.NeighborDiscovery.Neighbor != nil { - nestedIpv6.NeighborDiscovery.Neighbor = []Ipv6NeighborDiscoveryNeighborXml{} - for _, oIpv6NeighborDiscoveryNeighbor := range o.Ipv6.NeighborDiscovery.Neighbor { - nestedIpv6NeighborDiscoveryNeighbor := Ipv6NeighborDiscoveryNeighborXml{} - if _, ok := o.Misc["Ipv6NeighborDiscoveryNeighbor"]; ok { - nestedIpv6NeighborDiscoveryNeighbor.Misc = o.Misc["Ipv6NeighborDiscoveryNeighbor"] - } - if oIpv6NeighborDiscoveryNeighbor.HwAddress != nil { - nestedIpv6NeighborDiscoveryNeighbor.HwAddress = oIpv6NeighborDiscoveryNeighbor.HwAddress - } - if oIpv6NeighborDiscoveryNeighbor.Name != "" { - nestedIpv6NeighborDiscoveryNeighbor.Name = oIpv6NeighborDiscoveryNeighbor.Name - } - nestedIpv6.NeighborDiscovery.Neighbor = append(nestedIpv6.NeighborDiscovery.Neighbor, nestedIpv6NeighborDiscoveryNeighbor) - } - } - if o.Ipv6.NeighborDiscovery.NsInterval != nil { - nestedIpv6.NeighborDiscovery.NsInterval = o.Ipv6.NeighborDiscovery.NsInterval - } - if o.Ipv6.NeighborDiscovery.ReachableTime != nil { - nestedIpv6.NeighborDiscovery.ReachableTime = o.Ipv6.NeighborDiscovery.ReachableTime - } - if o.Ipv6.NeighborDiscovery.RouterAdvertisement != nil { - nestedIpv6.NeighborDiscovery.RouterAdvertisement = &Ipv6NeighborDiscoveryRouterAdvertisementXml{} - if _, ok := o.Misc["Ipv6NeighborDiscoveryRouterAdvertisement"]; ok { - nestedIpv6.NeighborDiscovery.RouterAdvertisement.Misc = o.Misc["Ipv6NeighborDiscoveryRouterAdvertisement"] - } - if o.Ipv6.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck != nil { - nestedIpv6.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck = util.YesNo(o.Ipv6.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck, nil) - } - if o.Ipv6.NeighborDiscovery.RouterAdvertisement.Lifetime != nil { - nestedIpv6.NeighborDiscovery.RouterAdvertisement.Lifetime = o.Ipv6.NeighborDiscovery.RouterAdvertisement.Lifetime - } - if o.Ipv6.NeighborDiscovery.RouterAdvertisement.ManagedFlag != nil { - nestedIpv6.NeighborDiscovery.RouterAdvertisement.ManagedFlag = util.YesNo(o.Ipv6.NeighborDiscovery.RouterAdvertisement.ManagedFlag, nil) - } - if o.Ipv6.NeighborDiscovery.RouterAdvertisement.MinInterval != nil { - nestedIpv6.NeighborDiscovery.RouterAdvertisement.MinInterval = o.Ipv6.NeighborDiscovery.RouterAdvertisement.MinInterval - } - if o.Ipv6.NeighborDiscovery.RouterAdvertisement.ReachableTime != nil { - nestedIpv6.NeighborDiscovery.RouterAdvertisement.ReachableTime = o.Ipv6.NeighborDiscovery.RouterAdvertisement.ReachableTime - } - if o.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport != nil { - nestedIpv6.NeighborDiscovery.RouterAdvertisement.DnsSupport = &Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportXml{} - if _, ok := o.Misc["Ipv6NeighborDiscoveryRouterAdvertisementDnsSupport"]; ok { - nestedIpv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Misc = o.Misc["Ipv6NeighborDiscoveryRouterAdvertisementDnsSupport"] - } - if o.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Enable != nil { - nestedIpv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Enable = util.YesNo(o.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Enable, nil) - } - if o.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Server != nil { - nestedIpv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Server = []Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportServerXml{} - for _, oIpv6NeighborDiscoveryRouterAdvertisementDnsSupportServer := range o.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Server { - nestedIpv6NeighborDiscoveryRouterAdvertisementDnsSupportServer := Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportServerXml{} - if _, ok := o.Misc["Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportServer"]; ok { - nestedIpv6NeighborDiscoveryRouterAdvertisementDnsSupportServer.Misc = o.Misc["Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportServer"] - } - if oIpv6NeighborDiscoveryRouterAdvertisementDnsSupportServer.Lifetime != nil { - nestedIpv6NeighborDiscoveryRouterAdvertisementDnsSupportServer.Lifetime = oIpv6NeighborDiscoveryRouterAdvertisementDnsSupportServer.Lifetime - } - if oIpv6NeighborDiscoveryRouterAdvertisementDnsSupportServer.Name != "" { - nestedIpv6NeighborDiscoveryRouterAdvertisementDnsSupportServer.Name = oIpv6NeighborDiscoveryRouterAdvertisementDnsSupportServer.Name - } - nestedIpv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Server = append(nestedIpv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Server, nestedIpv6NeighborDiscoveryRouterAdvertisementDnsSupportServer) - } - } - if o.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Suffix != nil { - nestedIpv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Suffix = []Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffixXml{} - for _, oIpv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix := range o.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Suffix { - nestedIpv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix := Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffixXml{} - if _, ok := o.Misc["Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix"]; ok { - nestedIpv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix.Misc = o.Misc["Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix"] - } - if oIpv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix.Name != "" { - nestedIpv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix.Name = oIpv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix.Name - } - if oIpv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix.Lifetime != nil { - nestedIpv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix.Lifetime = oIpv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix.Lifetime - } - nestedIpv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Suffix = append(nestedIpv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Suffix, nestedIpv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix) - } - } - } - if o.Ipv6.NeighborDiscovery.RouterAdvertisement.HopLimit != nil { - nestedIpv6.NeighborDiscovery.RouterAdvertisement.HopLimit = o.Ipv6.NeighborDiscovery.RouterAdvertisement.HopLimit - } - if o.Ipv6.NeighborDiscovery.RouterAdvertisement.LinkMtu != nil { - nestedIpv6.NeighborDiscovery.RouterAdvertisement.LinkMtu = o.Ipv6.NeighborDiscovery.RouterAdvertisement.LinkMtu - } - if o.Ipv6.NeighborDiscovery.RouterAdvertisement.MaxInterval != nil { - nestedIpv6.NeighborDiscovery.RouterAdvertisement.MaxInterval = o.Ipv6.NeighborDiscovery.RouterAdvertisement.MaxInterval - } - if o.Ipv6.NeighborDiscovery.RouterAdvertisement.OtherFlag != nil { - nestedIpv6.NeighborDiscovery.RouterAdvertisement.OtherFlag = util.YesNo(o.Ipv6.NeighborDiscovery.RouterAdvertisement.OtherFlag, nil) - } - if o.Ipv6.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer != nil { - nestedIpv6.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer = o.Ipv6.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer - } - if o.Ipv6.NeighborDiscovery.RouterAdvertisement.RouterPreference != nil { - nestedIpv6.NeighborDiscovery.RouterAdvertisement.RouterPreference = o.Ipv6.NeighborDiscovery.RouterAdvertisement.RouterPreference - } - if o.Ipv6.NeighborDiscovery.RouterAdvertisement.Enable != nil { - nestedIpv6.NeighborDiscovery.RouterAdvertisement.Enable = util.YesNo(o.Ipv6.NeighborDiscovery.RouterAdvertisement.Enable, nil) - } - } - } } entry.Ipv6 = nestedIpv6 @@ -1797,15 +1797,15 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oArp.Misc != nil { entry.Misc["Arp"] = oArp.Misc } + if oArp.Name != "" { + nestedArp.Name = oArp.Name + } if oArp.HwAddress != nil { nestedArp.HwAddress = oArp.HwAddress } if oArp.Interface != nil { nestedArp.Interface = oArp.Interface } - if oArp.Name != "" { - nestedArp.Name = oArp.Name - } nestedArpCol = append(nestedArpCol, nestedArp) } entry.Arp = nestedArpCol @@ -1836,6 +1836,12 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.DdnsConfig.Misc != nil { entry.Misc["DdnsConfig"] = o.DdnsConfig.Misc } + if o.DdnsConfig.DdnsCertProfile != nil { + nestedDdnsConfig.DdnsCertProfile = o.DdnsConfig.DdnsCertProfile + } + if o.DdnsConfig.DdnsEnabled != nil { + nestedDdnsConfig.DdnsEnabled = util.AsBool(o.DdnsConfig.DdnsEnabled, nil) + } if o.DdnsConfig.DdnsHostname != nil { nestedDdnsConfig.DdnsHostname = o.DdnsConfig.DdnsHostname } @@ -1867,12 +1873,6 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { nestedDdnsConfig.DdnsVendorConfig = append(nestedDdnsConfig.DdnsVendorConfig, nestedDdnsConfigDdnsVendorConfig) } } - if o.DdnsConfig.DdnsCertProfile != nil { - nestedDdnsConfig.DdnsCertProfile = o.DdnsConfig.DdnsCertProfile - } - if o.DdnsConfig.DdnsEnabled != nil { - nestedDdnsConfig.DdnsEnabled = util.AsBool(o.DdnsConfig.DdnsEnabled, nil) - } } entry.DdnsConfig = nestedDdnsConfig @@ -1897,12 +1897,12 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.DhcpClient.SendHostname.Misc != nil { entry.Misc["DhcpClientSendHostname"] = o.DhcpClient.SendHostname.Misc } - if o.DhcpClient.SendHostname.Enable != nil { - nestedDhcpClient.SendHostname.Enable = util.AsBool(o.DhcpClient.SendHostname.Enable, nil) - } if o.DhcpClient.SendHostname.Hostname != nil { nestedDhcpClient.SendHostname.Hostname = o.DhcpClient.SendHostname.Hostname } + if o.DhcpClient.SendHostname.Enable != nil { + nestedDhcpClient.SendHostname.Enable = util.AsBool(o.DhcpClient.SendHostname.Enable, nil) + } } } entry.DhcpClient = nestedDhcpClient @@ -1930,6 +1930,55 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Ipv6.Misc != nil { entry.Misc["Ipv6"] = o.Ipv6.Misc } + if o.Ipv6.Address != nil { + nestedIpv6.Address = []Ipv6Address{} + for _, oIpv6Address := range o.Ipv6.Address { + nestedIpv6Address := Ipv6Address{} + if oIpv6Address.Misc != nil { + entry.Misc["Ipv6Address"] = oIpv6Address.Misc + } + if oIpv6Address.EnableOnInterface != nil { + nestedIpv6Address.EnableOnInterface = util.AsBool(oIpv6Address.EnableOnInterface, nil) + } + if oIpv6Address.Prefix != nil { + nestedIpv6Address.Prefix = &Ipv6AddressPrefix{} + if oIpv6Address.Prefix.Misc != nil { + entry.Misc["Ipv6AddressPrefix"] = oIpv6Address.Prefix.Misc + } + } + if oIpv6Address.Anycast != nil { + nestedIpv6Address.Anycast = &Ipv6AddressAnycast{} + if oIpv6Address.Anycast.Misc != nil { + entry.Misc["Ipv6AddressAnycast"] = oIpv6Address.Anycast.Misc + } + } + if oIpv6Address.Advertise != nil { + nestedIpv6Address.Advertise = &Ipv6AddressAdvertise{} + if oIpv6Address.Advertise.Misc != nil { + entry.Misc["Ipv6AddressAdvertise"] = oIpv6Address.Advertise.Misc + } + if oIpv6Address.Advertise.Enable != nil { + nestedIpv6Address.Advertise.Enable = util.AsBool(oIpv6Address.Advertise.Enable, nil) + } + if oIpv6Address.Advertise.ValidLifetime != nil { + nestedIpv6Address.Advertise.ValidLifetime = oIpv6Address.Advertise.ValidLifetime + } + if oIpv6Address.Advertise.PreferredLifetime != nil { + nestedIpv6Address.Advertise.PreferredLifetime = oIpv6Address.Advertise.PreferredLifetime + } + if oIpv6Address.Advertise.OnlinkFlag != nil { + nestedIpv6Address.Advertise.OnlinkFlag = util.AsBool(oIpv6Address.Advertise.OnlinkFlag, nil) + } + if oIpv6Address.Advertise.AutoConfigFlag != nil { + nestedIpv6Address.Advertise.AutoConfigFlag = util.AsBool(oIpv6Address.Advertise.AutoConfigFlag, nil) + } + } + if oIpv6Address.Name != "" { + nestedIpv6Address.Name = oIpv6Address.Name + } + nestedIpv6.Address = append(nestedIpv6.Address, nestedIpv6Address) + } + } if o.Ipv6.Enabled != nil { nestedIpv6.Enabled = util.AsBool(o.Ipv6.Enabled, nil) } @@ -1941,31 +1990,6 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Ipv6.NeighborDiscovery.Misc != nil { entry.Misc["Ipv6NeighborDiscovery"] = o.Ipv6.NeighborDiscovery.Misc } - if o.Ipv6.NeighborDiscovery.DadAttempts != nil { - nestedIpv6.NeighborDiscovery.DadAttempts = o.Ipv6.NeighborDiscovery.DadAttempts - } - if o.Ipv6.NeighborDiscovery.EnableDad != nil { - nestedIpv6.NeighborDiscovery.EnableDad = util.AsBool(o.Ipv6.NeighborDiscovery.EnableDad, nil) - } - if o.Ipv6.NeighborDiscovery.EnableNdpMonitor != nil { - nestedIpv6.NeighborDiscovery.EnableNdpMonitor = util.AsBool(o.Ipv6.NeighborDiscovery.EnableNdpMonitor, nil) - } - if o.Ipv6.NeighborDiscovery.Neighbor != nil { - nestedIpv6.NeighborDiscovery.Neighbor = []Ipv6NeighborDiscoveryNeighbor{} - for _, oIpv6NeighborDiscoveryNeighbor := range o.Ipv6.NeighborDiscovery.Neighbor { - nestedIpv6NeighborDiscoveryNeighbor := Ipv6NeighborDiscoveryNeighbor{} - if oIpv6NeighborDiscoveryNeighbor.Misc != nil { - entry.Misc["Ipv6NeighborDiscoveryNeighbor"] = oIpv6NeighborDiscoveryNeighbor.Misc - } - if oIpv6NeighborDiscoveryNeighbor.HwAddress != nil { - nestedIpv6NeighborDiscoveryNeighbor.HwAddress = oIpv6NeighborDiscoveryNeighbor.HwAddress - } - if oIpv6NeighborDiscoveryNeighbor.Name != "" { - nestedIpv6NeighborDiscoveryNeighbor.Name = oIpv6NeighborDiscoveryNeighbor.Name - } - nestedIpv6.NeighborDiscovery.Neighbor = append(nestedIpv6.NeighborDiscovery.Neighbor, nestedIpv6NeighborDiscoveryNeighbor) - } - } if o.Ipv6.NeighborDiscovery.NsInterval != nil { nestedIpv6.NeighborDiscovery.NsInterval = o.Ipv6.NeighborDiscovery.NsInterval } @@ -1977,17 +2001,14 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Ipv6.NeighborDiscovery.RouterAdvertisement.Misc != nil { entry.Misc["Ipv6NeighborDiscoveryRouterAdvertisement"] = o.Ipv6.NeighborDiscovery.RouterAdvertisement.Misc } - if o.Ipv6.NeighborDiscovery.RouterAdvertisement.MinInterval != nil { - nestedIpv6.NeighborDiscovery.RouterAdvertisement.MinInterval = o.Ipv6.NeighborDiscovery.RouterAdvertisement.MinInterval - } - if o.Ipv6.NeighborDiscovery.RouterAdvertisement.ReachableTime != nil { - nestedIpv6.NeighborDiscovery.RouterAdvertisement.ReachableTime = o.Ipv6.NeighborDiscovery.RouterAdvertisement.ReachableTime - } if o.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport != nil { nestedIpv6.NeighborDiscovery.RouterAdvertisement.DnsSupport = &Ipv6NeighborDiscoveryRouterAdvertisementDnsSupport{} if o.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Misc != nil { entry.Misc["Ipv6NeighborDiscoveryRouterAdvertisementDnsSupport"] = o.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Misc } + if o.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Enable != nil { + nestedIpv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Enable = util.AsBool(o.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Enable, nil) + } if o.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Server != nil { nestedIpv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Server = []Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportServer{} for _, oIpv6NeighborDiscoveryRouterAdvertisementDnsSupportServer := range o.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Server { @@ -2020,40 +2041,68 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { nestedIpv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Suffix = append(nestedIpv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Suffix, nestedIpv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix) } } - if o.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Enable != nil { - nestedIpv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Enable = util.AsBool(o.Ipv6.NeighborDiscovery.RouterAdvertisement.DnsSupport.Enable, nil) - } } if o.Ipv6.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck != nil { nestedIpv6.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck = util.AsBool(o.Ipv6.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck, nil) } - if o.Ipv6.NeighborDiscovery.RouterAdvertisement.Lifetime != nil { - nestedIpv6.NeighborDiscovery.RouterAdvertisement.Lifetime = o.Ipv6.NeighborDiscovery.RouterAdvertisement.Lifetime + if o.Ipv6.NeighborDiscovery.RouterAdvertisement.HopLimit != nil { + nestedIpv6.NeighborDiscovery.RouterAdvertisement.HopLimit = o.Ipv6.NeighborDiscovery.RouterAdvertisement.HopLimit + } + if o.Ipv6.NeighborDiscovery.RouterAdvertisement.LinkMtu != nil { + nestedIpv6.NeighborDiscovery.RouterAdvertisement.LinkMtu = o.Ipv6.NeighborDiscovery.RouterAdvertisement.LinkMtu } if o.Ipv6.NeighborDiscovery.RouterAdvertisement.ManagedFlag != nil { nestedIpv6.NeighborDiscovery.RouterAdvertisement.ManagedFlag = util.AsBool(o.Ipv6.NeighborDiscovery.RouterAdvertisement.ManagedFlag, nil) } + if o.Ipv6.NeighborDiscovery.RouterAdvertisement.MinInterval != nil { + nestedIpv6.NeighborDiscovery.RouterAdvertisement.MinInterval = o.Ipv6.NeighborDiscovery.RouterAdvertisement.MinInterval + } if o.Ipv6.NeighborDiscovery.RouterAdvertisement.OtherFlag != nil { nestedIpv6.NeighborDiscovery.RouterAdvertisement.OtherFlag = util.AsBool(o.Ipv6.NeighborDiscovery.RouterAdvertisement.OtherFlag, nil) } if o.Ipv6.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer != nil { nestedIpv6.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer = o.Ipv6.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer } - if o.Ipv6.NeighborDiscovery.RouterAdvertisement.RouterPreference != nil { - nestedIpv6.NeighborDiscovery.RouterAdvertisement.RouterPreference = o.Ipv6.NeighborDiscovery.RouterAdvertisement.RouterPreference - } if o.Ipv6.NeighborDiscovery.RouterAdvertisement.Enable != nil { nestedIpv6.NeighborDiscovery.RouterAdvertisement.Enable = util.AsBool(o.Ipv6.NeighborDiscovery.RouterAdvertisement.Enable, nil) } - if o.Ipv6.NeighborDiscovery.RouterAdvertisement.HopLimit != nil { - nestedIpv6.NeighborDiscovery.RouterAdvertisement.HopLimit = o.Ipv6.NeighborDiscovery.RouterAdvertisement.HopLimit - } - if o.Ipv6.NeighborDiscovery.RouterAdvertisement.LinkMtu != nil { - nestedIpv6.NeighborDiscovery.RouterAdvertisement.LinkMtu = o.Ipv6.NeighborDiscovery.RouterAdvertisement.LinkMtu + if o.Ipv6.NeighborDiscovery.RouterAdvertisement.Lifetime != nil { + nestedIpv6.NeighborDiscovery.RouterAdvertisement.Lifetime = o.Ipv6.NeighborDiscovery.RouterAdvertisement.Lifetime } if o.Ipv6.NeighborDiscovery.RouterAdvertisement.MaxInterval != nil { nestedIpv6.NeighborDiscovery.RouterAdvertisement.MaxInterval = o.Ipv6.NeighborDiscovery.RouterAdvertisement.MaxInterval } + if o.Ipv6.NeighborDiscovery.RouterAdvertisement.ReachableTime != nil { + nestedIpv6.NeighborDiscovery.RouterAdvertisement.ReachableTime = o.Ipv6.NeighborDiscovery.RouterAdvertisement.ReachableTime + } + if o.Ipv6.NeighborDiscovery.RouterAdvertisement.RouterPreference != nil { + nestedIpv6.NeighborDiscovery.RouterAdvertisement.RouterPreference = o.Ipv6.NeighborDiscovery.RouterAdvertisement.RouterPreference + } + } + if o.Ipv6.NeighborDiscovery.DadAttempts != nil { + nestedIpv6.NeighborDiscovery.DadAttempts = o.Ipv6.NeighborDiscovery.DadAttempts + } + if o.Ipv6.NeighborDiscovery.EnableDad != nil { + nestedIpv6.NeighborDiscovery.EnableDad = util.AsBool(o.Ipv6.NeighborDiscovery.EnableDad, nil) + } + if o.Ipv6.NeighborDiscovery.EnableNdpMonitor != nil { + nestedIpv6.NeighborDiscovery.EnableNdpMonitor = util.AsBool(o.Ipv6.NeighborDiscovery.EnableNdpMonitor, nil) + } + if o.Ipv6.NeighborDiscovery.Neighbor != nil { + nestedIpv6.NeighborDiscovery.Neighbor = []Ipv6NeighborDiscoveryNeighbor{} + for _, oIpv6NeighborDiscoveryNeighbor := range o.Ipv6.NeighborDiscovery.Neighbor { + nestedIpv6NeighborDiscoveryNeighbor := Ipv6NeighborDiscoveryNeighbor{} + if oIpv6NeighborDiscoveryNeighbor.Misc != nil { + entry.Misc["Ipv6NeighborDiscoveryNeighbor"] = oIpv6NeighborDiscoveryNeighbor.Misc + } + if oIpv6NeighborDiscoveryNeighbor.HwAddress != nil { + nestedIpv6NeighborDiscoveryNeighbor.HwAddress = oIpv6NeighborDiscoveryNeighbor.HwAddress + } + if oIpv6NeighborDiscoveryNeighbor.Name != "" { + nestedIpv6NeighborDiscoveryNeighbor.Name = oIpv6NeighborDiscoveryNeighbor.Name + } + nestedIpv6.NeighborDiscovery.Neighbor = append(nestedIpv6.NeighborDiscovery.Neighbor, nestedIpv6NeighborDiscoveryNeighbor) + } } } if o.Ipv6.DhcpClient != nil { @@ -2061,20 +2110,57 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Ipv6.DhcpClient.Misc != nil { entry.Misc["Ipv6DhcpClient"] = o.Ipv6.DhcpClient.Misc } - if o.Ipv6.DhcpClient.AcceptRaRoute != nil { - nestedIpv6.DhcpClient.AcceptRaRoute = util.AsBool(o.Ipv6.DhcpClient.AcceptRaRoute, nil) - } - if o.Ipv6.DhcpClient.DefaultRouteMetric != nil { - nestedIpv6.DhcpClient.DefaultRouteMetric = o.Ipv6.DhcpClient.DefaultRouteMetric - } - if o.Ipv6.DhcpClient.Enable != nil { - nestedIpv6.DhcpClient.Enable = util.AsBool(o.Ipv6.DhcpClient.Enable, nil) - } if o.Ipv6.DhcpClient.NeighborDiscovery != nil { nestedIpv6.DhcpClient.NeighborDiscovery = &Ipv6DhcpClientNeighborDiscovery{} if o.Ipv6.DhcpClient.NeighborDiscovery.Misc != nil { entry.Misc["Ipv6DhcpClientNeighborDiscovery"] = o.Ipv6.DhcpClient.NeighborDiscovery.Misc } + if o.Ipv6.DhcpClient.NeighborDiscovery.DadAttempts != nil { + nestedIpv6.DhcpClient.NeighborDiscovery.DadAttempts = o.Ipv6.DhcpClient.NeighborDiscovery.DadAttempts + } + if o.Ipv6.DhcpClient.NeighborDiscovery.DnsServer != nil { + nestedIpv6.DhcpClient.NeighborDiscovery.DnsServer = &Ipv6DhcpClientNeighborDiscoveryDnsServer{} + if o.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Misc != nil { + entry.Misc["Ipv6DhcpClientNeighborDiscoveryDnsServer"] = o.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Misc + } + if o.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Enable != nil { + nestedIpv6.DhcpClient.NeighborDiscovery.DnsServer.Enable = util.AsBool(o.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Enable, nil) + } + if o.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source != nil { + nestedIpv6.DhcpClient.NeighborDiscovery.DnsServer.Source = &Ipv6DhcpClientNeighborDiscoveryDnsServerSource{} + if o.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Misc != nil { + entry.Misc["Ipv6DhcpClientNeighborDiscoveryDnsServerSource"] = o.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Misc + } + if o.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Dhcpv6 != nil { + nestedIpv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Dhcpv6 = &Ipv6DhcpClientNeighborDiscoveryDnsServerSourceDhcpv6{} + if o.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Dhcpv6.Misc != nil { + entry.Misc["Ipv6DhcpClientNeighborDiscoveryDnsServerSourceDhcpv6"] = o.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Dhcpv6.Misc + } + } + if o.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual != nil { + nestedIpv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual = &Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManual{} + if o.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual.Misc != nil { + entry.Misc["Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManual"] = o.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual.Misc + } + if o.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual.Server != nil { + nestedIpv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual.Server = []Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer{} + for _, oIpv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer := range o.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual.Server { + nestedIpv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer := Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer{} + if oIpv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Misc != nil { + entry.Misc["Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer"] = oIpv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Misc + } + if oIpv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Lifetime != nil { + nestedIpv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Lifetime = oIpv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Lifetime + } + if oIpv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Name != "" { + nestedIpv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Name = oIpv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Name + } + nestedIpv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual.Server = append(nestedIpv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual.Server, nestedIpv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer) + } + } + } + } + } if o.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix != nil { nestedIpv6.DhcpClient.NeighborDiscovery.DnsSuffix = &Ipv6DhcpClientNeighborDiscoveryDnsSuffix{} if o.Ipv6.DhcpClient.NeighborDiscovery.DnsSuffix.Misc != nil { @@ -2146,52 +2232,6 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Ipv6.DhcpClient.NeighborDiscovery.ReachableTime != nil { nestedIpv6.DhcpClient.NeighborDiscovery.ReachableTime = o.Ipv6.DhcpClient.NeighborDiscovery.ReachableTime } - if o.Ipv6.DhcpClient.NeighborDiscovery.DadAttempts != nil { - nestedIpv6.DhcpClient.NeighborDiscovery.DadAttempts = o.Ipv6.DhcpClient.NeighborDiscovery.DadAttempts - } - if o.Ipv6.DhcpClient.NeighborDiscovery.DnsServer != nil { - nestedIpv6.DhcpClient.NeighborDiscovery.DnsServer = &Ipv6DhcpClientNeighborDiscoveryDnsServer{} - if o.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Misc != nil { - entry.Misc["Ipv6DhcpClientNeighborDiscoveryDnsServer"] = o.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Misc - } - if o.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Enable != nil { - nestedIpv6.DhcpClient.NeighborDiscovery.DnsServer.Enable = util.AsBool(o.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Enable, nil) - } - if o.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source != nil { - nestedIpv6.DhcpClient.NeighborDiscovery.DnsServer.Source = &Ipv6DhcpClientNeighborDiscoveryDnsServerSource{} - if o.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Misc != nil { - entry.Misc["Ipv6DhcpClientNeighborDiscoveryDnsServerSource"] = o.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Misc - } - if o.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Dhcpv6 != nil { - nestedIpv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Dhcpv6 = &Ipv6DhcpClientNeighborDiscoveryDnsServerSourceDhcpv6{} - if o.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Dhcpv6.Misc != nil { - entry.Misc["Ipv6DhcpClientNeighborDiscoveryDnsServerSourceDhcpv6"] = o.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Dhcpv6.Misc - } - } - if o.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual != nil { - nestedIpv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual = &Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManual{} - if o.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual.Misc != nil { - entry.Misc["Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManual"] = o.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual.Misc - } - if o.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual.Server != nil { - nestedIpv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual.Server = []Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer{} - for _, oIpv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer := range o.Ipv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual.Server { - nestedIpv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer := Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer{} - if oIpv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Misc != nil { - entry.Misc["Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer"] = oIpv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Misc - } - if oIpv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Lifetime != nil { - nestedIpv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Lifetime = oIpv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Lifetime - } - if oIpv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Name != "" { - nestedIpv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Name = oIpv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer.Name - } - nestedIpv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual.Server = append(nestedIpv6.DhcpClient.NeighborDiscovery.DnsServer.Source.Manual.Server, nestedIpv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer) - } - } - } - } - } } if o.Ipv6.DhcpClient.Preference != nil { nestedIpv6.DhcpClient.Preference = o.Ipv6.DhcpClient.Preference @@ -2217,15 +2257,15 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.Misc != nil { entry.Misc["Ipv6DhcpClientPrefixDelegationEnableYes"] = o.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.Misc } + if o.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLenHint != nil { + nestedIpv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLenHint = util.AsBool(o.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLenHint, nil) + } if o.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PfxPoolName != nil { nestedIpv6.DhcpClient.PrefixDelegation.Enable.Yes.PfxPoolName = o.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PfxPoolName } if o.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLen != nil { nestedIpv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLen = o.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLen } - if o.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLenHint != nil { - nestedIpv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLenHint = util.AsBool(o.Ipv6.DhcpClient.PrefixDelegation.Enable.Yes.PrefixLenHint, nil) - } } } } @@ -2234,6 +2274,9 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Ipv6.DhcpClient.V6Options.Misc != nil { entry.Misc["Ipv6DhcpClientV6Options"] = o.Ipv6.DhcpClient.V6Options.Misc } + if o.Ipv6.DhcpClient.V6Options.SupportSrvrReconfig != nil { + nestedIpv6.DhcpClient.V6Options.SupportSrvrReconfig = util.AsBool(o.Ipv6.DhcpClient.V6Options.SupportSrvrReconfig, nil) + } if o.Ipv6.DhcpClient.V6Options.DuidType != nil { nestedIpv6.DhcpClient.V6Options.DuidType = o.Ipv6.DhcpClient.V6Options.DuidType } @@ -2242,31 +2285,37 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Ipv6.DhcpClient.V6Options.Enable.Misc != nil { entry.Misc["Ipv6DhcpClientV6OptionsEnable"] = o.Ipv6.DhcpClient.V6Options.Enable.Misc } + if o.Ipv6.DhcpClient.V6Options.Enable.No != nil { + nestedIpv6.DhcpClient.V6Options.Enable.No = &Ipv6DhcpClientV6OptionsEnableNo{} + if o.Ipv6.DhcpClient.V6Options.Enable.No.Misc != nil { + entry.Misc["Ipv6DhcpClientV6OptionsEnableNo"] = o.Ipv6.DhcpClient.V6Options.Enable.No.Misc + } + } if o.Ipv6.DhcpClient.V6Options.Enable.Yes != nil { nestedIpv6.DhcpClient.V6Options.Enable.Yes = &Ipv6DhcpClientV6OptionsEnableYes{} if o.Ipv6.DhcpClient.V6Options.Enable.Yes.Misc != nil { entry.Misc["Ipv6DhcpClientV6OptionsEnableYes"] = o.Ipv6.DhcpClient.V6Options.Enable.Yes.Misc } - if o.Ipv6.DhcpClient.V6Options.Enable.Yes.NonTempAddr != nil { - nestedIpv6.DhcpClient.V6Options.Enable.Yes.NonTempAddr = util.AsBool(o.Ipv6.DhcpClient.V6Options.Enable.Yes.NonTempAddr, nil) - } if o.Ipv6.DhcpClient.V6Options.Enable.Yes.TempAddr != nil { nestedIpv6.DhcpClient.V6Options.Enable.Yes.TempAddr = util.AsBool(o.Ipv6.DhcpClient.V6Options.Enable.Yes.TempAddr, nil) } - } - if o.Ipv6.DhcpClient.V6Options.Enable.No != nil { - nestedIpv6.DhcpClient.V6Options.Enable.No = &Ipv6DhcpClientV6OptionsEnableNo{} - if o.Ipv6.DhcpClient.V6Options.Enable.No.Misc != nil { - entry.Misc["Ipv6DhcpClientV6OptionsEnableNo"] = o.Ipv6.DhcpClient.V6Options.Enable.No.Misc + if o.Ipv6.DhcpClient.V6Options.Enable.Yes.NonTempAddr != nil { + nestedIpv6.DhcpClient.V6Options.Enable.Yes.NonTempAddr = util.AsBool(o.Ipv6.DhcpClient.V6Options.Enable.Yes.NonTempAddr, nil) } } } if o.Ipv6.DhcpClient.V6Options.RapidCommit != nil { nestedIpv6.DhcpClient.V6Options.RapidCommit = util.AsBool(o.Ipv6.DhcpClient.V6Options.RapidCommit, nil) } - if o.Ipv6.DhcpClient.V6Options.SupportSrvrReconfig != nil { - nestedIpv6.DhcpClient.V6Options.SupportSrvrReconfig = util.AsBool(o.Ipv6.DhcpClient.V6Options.SupportSrvrReconfig, nil) - } + } + if o.Ipv6.DhcpClient.AcceptRaRoute != nil { + nestedIpv6.DhcpClient.AcceptRaRoute = util.AsBool(o.Ipv6.DhcpClient.AcceptRaRoute, nil) + } + if o.Ipv6.DhcpClient.DefaultRouteMetric != nil { + nestedIpv6.DhcpClient.DefaultRouteMetric = o.Ipv6.DhcpClient.DefaultRouteMetric + } + if o.Ipv6.DhcpClient.Enable != nil { + nestedIpv6.DhcpClient.Enable = util.AsBool(o.Ipv6.DhcpClient.Enable, nil) } } if o.Ipv6.Inherited != nil { @@ -2302,6 +2351,12 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oIpv6InheritedAssignAddr.Type.Gua.PoolType.Misc != nil { entry.Misc["Ipv6InheritedAssignAddrTypeGuaPoolType"] = oIpv6InheritedAssignAddr.Type.Gua.PoolType.Misc } + if oIpv6InheritedAssignAddr.Type.Gua.PoolType.Dynamic != nil { + nestedIpv6InheritedAssignAddr.Type.Gua.PoolType.Dynamic = &Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamic{} + if oIpv6InheritedAssignAddr.Type.Gua.PoolType.Dynamic.Misc != nil { + entry.Misc["Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamic"] = oIpv6InheritedAssignAddr.Type.Gua.PoolType.Dynamic.Misc + } + } if oIpv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId != nil { nestedIpv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId = &Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamicId{} if oIpv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId.Misc != nil { @@ -2311,12 +2366,6 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { nestedIpv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId.Identifier = oIpv6InheritedAssignAddr.Type.Gua.PoolType.DynamicId.Identifier } } - if oIpv6InheritedAssignAddr.Type.Gua.PoolType.Dynamic != nil { - nestedIpv6InheritedAssignAddr.Type.Gua.PoolType.Dynamic = &Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamic{} - if oIpv6InheritedAssignAddr.Type.Gua.PoolType.Dynamic.Misc != nil { - entry.Misc["Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamic"] = oIpv6InheritedAssignAddr.Type.Gua.PoolType.Dynamic.Misc - } - } } if oIpv6InheritedAssignAddr.Type.Gua.Advertise != nil { nestedIpv6InheritedAssignAddr.Type.Gua.Advertise = &Ipv6InheritedAssignAddrTypeGuaAdvertise{} @@ -2347,21 +2396,21 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oIpv6InheritedAssignAddr.Type.Ula.Advertise.Misc != nil { entry.Misc["Ipv6InheritedAssignAddrTypeUlaAdvertise"] = oIpv6InheritedAssignAddr.Type.Ula.Advertise.Misc } - if oIpv6InheritedAssignAddr.Type.Ula.Advertise.OnlinkFlag != nil { - nestedIpv6InheritedAssignAddr.Type.Ula.Advertise.OnlinkFlag = util.AsBool(oIpv6InheritedAssignAddr.Type.Ula.Advertise.OnlinkFlag, nil) - } - if oIpv6InheritedAssignAddr.Type.Ula.Advertise.AutoConfigFlag != nil { - nestedIpv6InheritedAssignAddr.Type.Ula.Advertise.AutoConfigFlag = util.AsBool(oIpv6InheritedAssignAddr.Type.Ula.Advertise.AutoConfigFlag, nil) - } - if oIpv6InheritedAssignAddr.Type.Ula.Advertise.Enable != nil { - nestedIpv6InheritedAssignAddr.Type.Ula.Advertise.Enable = util.AsBool(oIpv6InheritedAssignAddr.Type.Ula.Advertise.Enable, nil) - } if oIpv6InheritedAssignAddr.Type.Ula.Advertise.ValidLifetime != nil { nestedIpv6InheritedAssignAddr.Type.Ula.Advertise.ValidLifetime = oIpv6InheritedAssignAddr.Type.Ula.Advertise.ValidLifetime } if oIpv6InheritedAssignAddr.Type.Ula.Advertise.PreferredLifetime != nil { nestedIpv6InheritedAssignAddr.Type.Ula.Advertise.PreferredLifetime = oIpv6InheritedAssignAddr.Type.Ula.Advertise.PreferredLifetime } + if oIpv6InheritedAssignAddr.Type.Ula.Advertise.OnlinkFlag != nil { + nestedIpv6InheritedAssignAddr.Type.Ula.Advertise.OnlinkFlag = util.AsBool(oIpv6InheritedAssignAddr.Type.Ula.Advertise.OnlinkFlag, nil) + } + if oIpv6InheritedAssignAddr.Type.Ula.Advertise.AutoConfigFlag != nil { + nestedIpv6InheritedAssignAddr.Type.Ula.Advertise.AutoConfigFlag = util.AsBool(oIpv6InheritedAssignAddr.Type.Ula.Advertise.AutoConfigFlag, nil) + } + if oIpv6InheritedAssignAddr.Type.Ula.Advertise.Enable != nil { + nestedIpv6InheritedAssignAddr.Type.Ula.Advertise.Enable = util.AsBool(oIpv6InheritedAssignAddr.Type.Ula.Advertise.Enable, nil) + } } if oIpv6InheritedAssignAddr.Type.Ula.EnableOnInterface != nil { nestedIpv6InheritedAssignAddr.Type.Ula.EnableOnInterface = util.AsBool(oIpv6InheritedAssignAddr.Type.Ula.EnableOnInterface, nil) @@ -2388,25 +2437,44 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Ipv6.Inherited.NeighborDiscovery.Misc != nil { entry.Misc["Ipv6InheritedNeighborDiscovery"] = o.Ipv6.Inherited.NeighborDiscovery.Misc } - if o.Ipv6.Inherited.NeighborDiscovery.NsInterval != nil { - nestedIpv6.Inherited.NeighborDiscovery.NsInterval = o.Ipv6.Inherited.NeighborDiscovery.NsInterval + if o.Ipv6.Inherited.NeighborDiscovery.DadAttempts != nil { + nestedIpv6.Inherited.NeighborDiscovery.DadAttempts = o.Ipv6.Inherited.NeighborDiscovery.DadAttempts + } + if o.Ipv6.Inherited.NeighborDiscovery.Neighbor != nil { + nestedIpv6.Inherited.NeighborDiscovery.Neighbor = []Ipv6InheritedNeighborDiscoveryNeighbor{} + for _, oIpv6InheritedNeighborDiscoveryNeighbor := range o.Ipv6.Inherited.NeighborDiscovery.Neighbor { + nestedIpv6InheritedNeighborDiscoveryNeighbor := Ipv6InheritedNeighborDiscoveryNeighbor{} + if oIpv6InheritedNeighborDiscoveryNeighbor.Misc != nil { + entry.Misc["Ipv6InheritedNeighborDiscoveryNeighbor"] = oIpv6InheritedNeighborDiscoveryNeighbor.Misc + } + if oIpv6InheritedNeighborDiscoveryNeighbor.HwAddress != nil { + nestedIpv6InheritedNeighborDiscoveryNeighbor.HwAddress = oIpv6InheritedNeighborDiscoveryNeighbor.HwAddress + } + if oIpv6InheritedNeighborDiscoveryNeighbor.Name != "" { + nestedIpv6InheritedNeighborDiscoveryNeighbor.Name = oIpv6InheritedNeighborDiscoveryNeighbor.Name + } + nestedIpv6.Inherited.NeighborDiscovery.Neighbor = append(nestedIpv6.Inherited.NeighborDiscovery.Neighbor, nestedIpv6InheritedNeighborDiscoveryNeighbor) + } + } + if o.Ipv6.Inherited.NeighborDiscovery.ReachableTime != nil { + nestedIpv6.Inherited.NeighborDiscovery.ReachableTime = o.Ipv6.Inherited.NeighborDiscovery.ReachableTime } if o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement != nil { nestedIpv6.Inherited.NeighborDiscovery.RouterAdvertisement = &Ipv6InheritedNeighborDiscoveryRouterAdvertisement{} if o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Misc != nil { entry.Misc["Ipv6InheritedNeighborDiscoveryRouterAdvertisement"] = o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Misc } - if o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.HopLimit != nil { - nestedIpv6.Inherited.NeighborDiscovery.RouterAdvertisement.HopLimit = o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.HopLimit - } - if o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Lifetime != nil { - nestedIpv6.Inherited.NeighborDiscovery.RouterAdvertisement.Lifetime = o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Lifetime + if o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck != nil { + nestedIpv6.Inherited.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck = util.AsBool(o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck, nil) } if o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.LinkMtu != nil { nestedIpv6.Inherited.NeighborDiscovery.RouterAdvertisement.LinkMtu = o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.LinkMtu } - if o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.MaxInterval != nil { - nestedIpv6.Inherited.NeighborDiscovery.RouterAdvertisement.MaxInterval = o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.MaxInterval + if o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.OtherFlag != nil { + nestedIpv6.Inherited.NeighborDiscovery.RouterAdvertisement.OtherFlag = util.AsBool(o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.OtherFlag, nil) + } + if o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RouterPreference != nil { + nestedIpv6.Inherited.NeighborDiscovery.RouterAdvertisement.RouterPreference = o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RouterPreference } if o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.MinInterval != nil { nestedIpv6.Inherited.NeighborDiscovery.RouterAdvertisement.MinInterval = o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.MinInterval @@ -2414,28 +2482,25 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.ReachableTime != nil { nestedIpv6.Inherited.NeighborDiscovery.RouterAdvertisement.ReachableTime = o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.ReachableTime } + if o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer != nil { + nestedIpv6.Inherited.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer = o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer + } if o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Enable != nil { nestedIpv6.Inherited.NeighborDiscovery.RouterAdvertisement.Enable = util.AsBool(o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Enable, nil) } - if o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck != nil { - nestedIpv6.Inherited.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck = util.AsBool(o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.EnableConsistencyCheck, nil) - } - if o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer != nil { - nestedIpv6.Inherited.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer = o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RetransmissionTimer + if o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.HopLimit != nil { + nestedIpv6.Inherited.NeighborDiscovery.RouterAdvertisement.HopLimit = o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.HopLimit } - if o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RouterPreference != nil { - nestedIpv6.Inherited.NeighborDiscovery.RouterAdvertisement.RouterPreference = o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.RouterPreference + if o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Lifetime != nil { + nestedIpv6.Inherited.NeighborDiscovery.RouterAdvertisement.Lifetime = o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.Lifetime } if o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.ManagedFlag != nil { nestedIpv6.Inherited.NeighborDiscovery.RouterAdvertisement.ManagedFlag = util.AsBool(o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.ManagedFlag, nil) } - if o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.OtherFlag != nil { - nestedIpv6.Inherited.NeighborDiscovery.RouterAdvertisement.OtherFlag = util.AsBool(o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.OtherFlag, nil) + if o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.MaxInterval != nil { + nestedIpv6.Inherited.NeighborDiscovery.RouterAdvertisement.MaxInterval = o.Ipv6.Inherited.NeighborDiscovery.RouterAdvertisement.MaxInterval } } - if o.Ipv6.Inherited.NeighborDiscovery.DadAttempts != nil { - nestedIpv6.Inherited.NeighborDiscovery.DadAttempts = o.Ipv6.Inherited.NeighborDiscovery.DadAttempts - } if o.Ipv6.Inherited.NeighborDiscovery.DnsServer != nil { nestedIpv6.Inherited.NeighborDiscovery.DnsServer = &Ipv6InheritedNeighborDiscoveryDnsServer{} if o.Ipv6.Inherited.NeighborDiscovery.DnsServer.Misc != nil { @@ -2449,6 +2514,15 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Misc != nil { entry.Misc["Ipv6InheritedNeighborDiscoveryDnsServerSource"] = o.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Misc } + if o.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6 != nil { + nestedIpv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6 = &Ipv6InheritedNeighborDiscoveryDnsServerSourceDhcpv6{} + if o.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6.Misc != nil { + entry.Misc["Ipv6InheritedNeighborDiscoveryDnsServerSourceDhcpv6"] = o.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6.Misc + } + if o.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6.PrefixPool != nil { + nestedIpv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6.PrefixPool = o.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6.PrefixPool + } + } if o.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual != nil { nestedIpv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual = &Ipv6InheritedNeighborDiscoveryDnsServerSourceManual{} if o.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual.Misc != nil { @@ -2461,25 +2535,16 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oIpv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Misc != nil { entry.Misc["Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer"] = oIpv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Misc } - if oIpv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Name != "" { - nestedIpv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Name = oIpv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Name - } if oIpv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Lifetime != nil { nestedIpv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Lifetime = oIpv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Lifetime } + if oIpv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Name != "" { + nestedIpv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Name = oIpv6InheritedNeighborDiscoveryDnsServerSourceManualServer.Name + } nestedIpv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual.Server = append(nestedIpv6.Inherited.NeighborDiscovery.DnsServer.Source.Manual.Server, nestedIpv6InheritedNeighborDiscoveryDnsServerSourceManualServer) } } } - if o.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6 != nil { - nestedIpv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6 = &Ipv6InheritedNeighborDiscoveryDnsServerSourceDhcpv6{} - if o.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6.Misc != nil { - entry.Misc["Ipv6InheritedNeighborDiscoveryDnsServerSourceDhcpv6"] = o.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6.Misc - } - if o.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6.PrefixPool != nil { - nestedIpv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6.PrefixPool = o.Ipv6.Inherited.NeighborDiscovery.DnsServer.Source.Dhcpv6.PrefixPool - } - } } } if o.Ipv6.Inherited.NeighborDiscovery.DnsSuffix != nil { @@ -2513,12 +2578,12 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oIpv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Misc != nil { entry.Misc["Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix"] = oIpv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Misc } - if oIpv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Name != "" { - nestedIpv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Name = oIpv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Name - } if oIpv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Lifetime != nil { nestedIpv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Lifetime = oIpv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Lifetime } + if oIpv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Name != "" { + nestedIpv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Name = oIpv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix.Name + } nestedIpv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Manual.Suffix = append(nestedIpv6.Inherited.NeighborDiscovery.DnsSuffix.Source.Manual.Suffix, nestedIpv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix) } } @@ -2531,77 +2596,12 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Ipv6.Inherited.NeighborDiscovery.EnableDad != nil { nestedIpv6.Inherited.NeighborDiscovery.EnableDad = util.AsBool(o.Ipv6.Inherited.NeighborDiscovery.EnableDad, nil) } - if o.Ipv6.Inherited.NeighborDiscovery.Neighbor != nil { - nestedIpv6.Inherited.NeighborDiscovery.Neighbor = []Ipv6InheritedNeighborDiscoveryNeighbor{} - for _, oIpv6InheritedNeighborDiscoveryNeighbor := range o.Ipv6.Inherited.NeighborDiscovery.Neighbor { - nestedIpv6InheritedNeighborDiscoveryNeighbor := Ipv6InheritedNeighborDiscoveryNeighbor{} - if oIpv6InheritedNeighborDiscoveryNeighbor.Misc != nil { - entry.Misc["Ipv6InheritedNeighborDiscoveryNeighbor"] = oIpv6InheritedNeighborDiscoveryNeighbor.Misc - } - if oIpv6InheritedNeighborDiscoveryNeighbor.HwAddress != nil { - nestedIpv6InheritedNeighborDiscoveryNeighbor.HwAddress = oIpv6InheritedNeighborDiscoveryNeighbor.HwAddress - } - if oIpv6InheritedNeighborDiscoveryNeighbor.Name != "" { - nestedIpv6InheritedNeighborDiscoveryNeighbor.Name = oIpv6InheritedNeighborDiscoveryNeighbor.Name - } - nestedIpv6.Inherited.NeighborDiscovery.Neighbor = append(nestedIpv6.Inherited.NeighborDiscovery.Neighbor, nestedIpv6InheritedNeighborDiscoveryNeighbor) - } - } if o.Ipv6.Inherited.NeighborDiscovery.EnableNdpMonitor != nil { nestedIpv6.Inherited.NeighborDiscovery.EnableNdpMonitor = util.AsBool(o.Ipv6.Inherited.NeighborDiscovery.EnableNdpMonitor, nil) } - if o.Ipv6.Inherited.NeighborDiscovery.ReachableTime != nil { - nestedIpv6.Inherited.NeighborDiscovery.ReachableTime = o.Ipv6.Inherited.NeighborDiscovery.ReachableTime - } - } - } - if o.Ipv6.Address != nil { - nestedIpv6.Address = []Ipv6Address{} - for _, oIpv6Address := range o.Ipv6.Address { - nestedIpv6Address := Ipv6Address{} - if oIpv6Address.Misc != nil { - entry.Misc["Ipv6Address"] = oIpv6Address.Misc - } - if oIpv6Address.Prefix != nil { - nestedIpv6Address.Prefix = &Ipv6AddressPrefix{} - if oIpv6Address.Prefix.Misc != nil { - entry.Misc["Ipv6AddressPrefix"] = oIpv6Address.Prefix.Misc - } - } - if oIpv6Address.Anycast != nil { - nestedIpv6Address.Anycast = &Ipv6AddressAnycast{} - if oIpv6Address.Anycast.Misc != nil { - entry.Misc["Ipv6AddressAnycast"] = oIpv6Address.Anycast.Misc - } - } - if oIpv6Address.Advertise != nil { - nestedIpv6Address.Advertise = &Ipv6AddressAdvertise{} - if oIpv6Address.Advertise.Misc != nil { - entry.Misc["Ipv6AddressAdvertise"] = oIpv6Address.Advertise.Misc - } - if oIpv6Address.Advertise.Enable != nil { - nestedIpv6Address.Advertise.Enable = util.AsBool(oIpv6Address.Advertise.Enable, nil) - } - if oIpv6Address.Advertise.ValidLifetime != nil { - nestedIpv6Address.Advertise.ValidLifetime = oIpv6Address.Advertise.ValidLifetime - } - if oIpv6Address.Advertise.PreferredLifetime != nil { - nestedIpv6Address.Advertise.PreferredLifetime = oIpv6Address.Advertise.PreferredLifetime - } - if oIpv6Address.Advertise.OnlinkFlag != nil { - nestedIpv6Address.Advertise.OnlinkFlag = util.AsBool(oIpv6Address.Advertise.OnlinkFlag, nil) - } - if oIpv6Address.Advertise.AutoConfigFlag != nil { - nestedIpv6Address.Advertise.AutoConfigFlag = util.AsBool(oIpv6Address.Advertise.AutoConfigFlag, nil) - } - } - if oIpv6Address.Name != "" { - nestedIpv6Address.Name = oIpv6Address.Name - } - if oIpv6Address.EnableOnInterface != nil { - nestedIpv6Address.EnableOnInterface = util.AsBool(oIpv6Address.EnableOnInterface, nil) + if o.Ipv6.Inherited.NeighborDiscovery.NsInterval != nil { + nestedIpv6.Inherited.NeighborDiscovery.NsInterval = o.Ipv6.Inherited.NeighborDiscovery.NsInterval } - nestedIpv6.Address = append(nestedIpv6.Address, nestedIpv6Address) } } } @@ -2621,12 +2621,12 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oNdpProxyAddress.Misc != nil { entry.Misc["NdpProxyAddress"] = oNdpProxyAddress.Misc } - if oNdpProxyAddress.Negate != nil { - nestedNdpProxyAddress.Negate = util.AsBool(oNdpProxyAddress.Negate, nil) - } if oNdpProxyAddress.Name != "" { nestedNdpProxyAddress.Name = oNdpProxyAddress.Name } + if oNdpProxyAddress.Negate != nil { + nestedNdpProxyAddress.Negate = util.AsBool(oNdpProxyAddress.Negate, nil) + } nestedNdpProxy.Address = append(nestedNdpProxy.Address, nestedNdpProxyAddress) } } @@ -2693,11 +2693,111 @@ func SpecMatches(a, b *Entry) bool { if !util.StringsMatch(a.NetflowProfile, b.NetflowProfile) { return false } - + + return true +} + +func matchAdjustTcpMss(a *AdjustTcpMss, b *AdjustTcpMss) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + if !util.BoolsMatch(a.Enable, b.Enable) { + return false + } + if !util.Ints64Match(a.Ipv4MssAdjustment, b.Ipv4MssAdjustment) { + return false + } + if !util.Ints64Match(a.Ipv6MssAdjustment, b.Ipv6MssAdjustment) { + return false + } + return true +} +func matchBonjour(a *Bonjour, b *Bonjour) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + if !util.BoolsMatch(a.Enable, b.Enable) { + return false + } + if !util.Ints64Match(a.GroupId, b.GroupId) { + return false + } + if !util.BoolsMatch(a.TtlCheck, b.TtlCheck) { + return false + } + return true +} +func matchIpv6AddressAdvertise(a *Ipv6AddressAdvertise, b *Ipv6AddressAdvertise) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + if !util.BoolsMatch(a.Enable, b.Enable) { + return false + } + if !util.StringsMatch(a.ValidLifetime, b.ValidLifetime) { + return false + } + if !util.StringsMatch(a.PreferredLifetime, b.PreferredLifetime) { + return false + } + if !util.BoolsMatch(a.OnlinkFlag, b.OnlinkFlag) { + return false + } + if !util.BoolsMatch(a.AutoConfigFlag, b.AutoConfigFlag) { + return false + } + return true +} +func matchIpv6AddressPrefix(a *Ipv6AddressPrefix, b *Ipv6AddressPrefix) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + return true +} +func matchIpv6AddressAnycast(a *Ipv6AddressAnycast, b *Ipv6AddressAnycast) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + return true +} +func matchIpv6Address(a []Ipv6Address, b []Ipv6Address) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + for _, a := range a { + for _, b := range b { + if !util.BoolsMatch(a.EnableOnInterface, b.EnableOnInterface) { + return false + } + if !matchIpv6AddressPrefix(a.Prefix, b.Prefix) { + return false + } + if !matchIpv6AddressAnycast(a.Anycast, b.Anycast) { + return false + } + if !matchIpv6AddressAdvertise(a.Advertise, b.Advertise) { + return false + } + if !util.StringsEqual(a.Name, b.Name) { + return false + } + } + } return true } - -func matchArp(a []Arp, b []Arp) bool { +func matchIpv6NeighborDiscoveryNeighbor(a []Ipv6NeighborDiscoveryNeighbor, b []Ipv6NeighborDiscoveryNeighbor) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -2705,37 +2805,35 @@ func matchArp(a []Arp, b []Arp) bool { } for _, a := range a { for _, b := range b { - if !util.StringsEqual(a.Name, b.Name) { - return false - } if !util.StringsMatch(a.HwAddress, b.HwAddress) { return false } - if !util.StringsMatch(a.Interface, b.Interface) { + if !util.StringsEqual(a.Name, b.Name) { return false } } } return true } -func matchBonjour(a *Bonjour, b *Bonjour) bool { +func matchIpv6NeighborDiscoveryRouterAdvertisementDnsSupportServer(a []Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportServer, b []Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportServer) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.BoolsMatch(a.Enable, b.Enable) { - return false - } - if !util.Ints64Match(a.GroupId, b.GroupId) { - return false - } - if !util.BoolsMatch(a.TtlCheck, b.TtlCheck) { - return false + for _, a := range a { + for _, b := range b { + if !util.Ints64Match(a.Lifetime, b.Lifetime) { + return false + } + if !util.StringsEqual(a.Name, b.Name) { + return false + } + } } return true } -func matchDdnsConfigDdnsVendorConfig(a []DdnsConfigDdnsVendorConfig, b []DdnsConfigDdnsVendorConfig) bool { +func matchIpv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix(a []Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix, b []Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -2743,7 +2841,7 @@ func matchDdnsConfigDdnsVendorConfig(a []DdnsConfigDdnsVendorConfig, b []DdnsCon } for _, a := range a { for _, b := range b { - if !util.StringsMatch(a.Value, b.Value) { + if !util.Ints64Match(a.Lifetime, b.Lifetime) { return false } if !util.StringsEqual(a.Name, b.Name) { @@ -2753,122 +2851,108 @@ func matchDdnsConfigDdnsVendorConfig(a []DdnsConfigDdnsVendorConfig, b []DdnsCon } return true } -func matchDdnsConfig(a *DdnsConfig, b *DdnsConfig) bool { +func matchIpv6NeighborDiscoveryRouterAdvertisementDnsSupport(a *Ipv6NeighborDiscoveryRouterAdvertisementDnsSupport, b *Ipv6NeighborDiscoveryRouterAdvertisementDnsSupport) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchDdnsConfigDdnsVendorConfig(a.DdnsVendorConfig, b.DdnsVendorConfig) { + if !util.BoolsMatch(a.Enable, b.Enable) { return false } - if !util.StringsMatch(a.DdnsCertProfile, b.DdnsCertProfile) { + if !matchIpv6NeighborDiscoveryRouterAdvertisementDnsSupportServer(a.Server, b.Server) { return false } - if !util.BoolsMatch(a.DdnsEnabled, b.DdnsEnabled) { + if !matchIpv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix(a.Suffix, b.Suffix) { return false } - if !util.StringsMatch(a.DdnsHostname, b.DdnsHostname) { + return true +} +func matchIpv6NeighborDiscoveryRouterAdvertisement(a *Ipv6NeighborDiscoveryRouterAdvertisement, b *Ipv6NeighborDiscoveryRouterAdvertisement) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } - if !util.OrderedListsMatch(a.DdnsIp, b.DdnsIp) { + if !util.Ints64Match(a.Lifetime, b.Lifetime) { return false } - if !util.OrderedListsMatch(a.DdnsIpv6, b.DdnsIpv6) { + if !util.Ints64Match(a.MaxInterval, b.MaxInterval) { return false } - if !util.Ints64Match(a.DdnsUpdateInterval, b.DdnsUpdateInterval) { + if !util.StringsMatch(a.ReachableTime, b.ReachableTime) { return false } - if !util.StringsMatch(a.DdnsVendor, b.DdnsVendor) { + if !util.StringsMatch(a.RouterPreference, b.RouterPreference) { return false } - return true -} -func matchDhcpClientSendHostname(a *DhcpClientSendHostname, b *DhcpClientSendHostname) bool { - if a == nil && b != nil || a != nil && b == nil { + if !util.BoolsMatch(a.Enable, b.Enable) { return false - } else if a == nil && b == nil { - return true } - if !util.BoolsMatch(a.Enable, b.Enable) { + if !util.BoolsMatch(a.EnableConsistencyCheck, b.EnableConsistencyCheck) { return false } - if !util.StringsMatch(a.Hostname, b.Hostname) { + if !util.StringsMatch(a.HopLimit, b.HopLimit) { return false } - return true -} -func matchDhcpClient(a *DhcpClient, b *DhcpClient) bool { - if a == nil && b != nil || a != nil && b == nil { + if !util.StringsMatch(a.LinkMtu, b.LinkMtu) { return false - } else if a == nil && b == nil { - return true } - if !util.BoolsMatch(a.CreateDefaultRoute, b.CreateDefaultRoute) { + if !util.BoolsMatch(a.ManagedFlag, b.ManagedFlag) { return false } - if !util.Ints64Match(a.DefaultRouteMetric, b.DefaultRouteMetric) { + if !util.Ints64Match(a.MinInterval, b.MinInterval) { return false } - if !util.BoolsMatch(a.Enable, b.Enable) { + if !util.BoolsMatch(a.OtherFlag, b.OtherFlag) { return false } - if !matchDhcpClientSendHostname(a.SendHostname, b.SendHostname) { + if !util.StringsMatch(a.RetransmissionTimer, b.RetransmissionTimer) { + return false + } + if !matchIpv6NeighborDiscoveryRouterAdvertisementDnsSupport(a.DnsSupport, b.DnsSupport) { return false } return true } -func matchNdpProxyAddress(a []NdpProxyAddress, b []NdpProxyAddress) bool { +func matchIpv6NeighborDiscovery(a *Ipv6NeighborDiscovery, b *Ipv6NeighborDiscovery) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - for _, a := range a { - for _, b := range b { - if !util.StringsEqual(a.Name, b.Name) { - return false - } - if !util.BoolsMatch(a.Negate, b.Negate) { - return false - } - } + if !util.Ints64Match(a.DadAttempts, b.DadAttempts) { + return false } - return true -} -func matchNdpProxy(a *NdpProxy, b *NdpProxy) bool { - if a == nil && b != nil || a != nil && b == nil { + if !util.BoolsMatch(a.EnableDad, b.EnableDad) { return false - } else if a == nil && b == nil { - return true } - if !util.BoolsMatch(a.Enabled, b.Enabled) { + if !util.BoolsMatch(a.EnableNdpMonitor, b.EnableNdpMonitor) { return false } - if !matchNdpProxyAddress(a.Address, b.Address) { + if !matchIpv6NeighborDiscoveryNeighbor(a.Neighbor, b.Neighbor) { return false } - return true -} -func matchAdjustTcpMss(a *AdjustTcpMss, b *AdjustTcpMss) bool { - if a == nil && b != nil || a != nil && b == nil { + if !util.Ints64Match(a.NsInterval, b.NsInterval) { return false - } else if a == nil && b == nil { - return true } - if !util.BoolsMatch(a.Enable, b.Enable) { + if !util.Ints64Match(a.ReachableTime, b.ReachableTime) { return false } - if !util.Ints64Match(a.Ipv4MssAdjustment, b.Ipv4MssAdjustment) { + if !matchIpv6NeighborDiscoveryRouterAdvertisement(a.RouterAdvertisement, b.RouterAdvertisement) { return false } - if !util.Ints64Match(a.Ipv6MssAdjustment, b.Ipv6MssAdjustment) { + return true +} +func matchIpv6DhcpClientNeighborDiscoveryDnsSuffixSourceDhcpv6(a *Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceDhcpv6, b *Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceDhcpv6) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } return true } -func matchIp(a []Ip, b []Ip) bool { +func matchIpv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix(a []Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix, b []Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -2876,6 +2960,9 @@ func matchIp(a []Ip, b []Ip) bool { } for _, a := range a { for _, b := range b { + if !util.Ints64Match(a.Lifetime, b.Lifetime) { + return false + } if !util.StringsEqual(a.Name, b.Name) { return false } @@ -2883,46 +2970,46 @@ func matchIp(a []Ip, b []Ip) bool { } return true } -func matchIpv6AddressAdvertise(a *Ipv6AddressAdvertise, b *Ipv6AddressAdvertise) bool { +func matchIpv6DhcpClientNeighborDiscoveryDnsSuffixSourceManual(a *Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManual, b *Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManual) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.ValidLifetime, b.ValidLifetime) { - return false - } - if !util.StringsMatch(a.PreferredLifetime, b.PreferredLifetime) { + if !matchIpv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix(a.Suffix, b.Suffix) { return false } - if !util.BoolsMatch(a.OnlinkFlag, b.OnlinkFlag) { + return true +} +func matchIpv6DhcpClientNeighborDiscoveryDnsSuffixSource(a *Ipv6DhcpClientNeighborDiscoveryDnsSuffixSource, b *Ipv6DhcpClientNeighborDiscoveryDnsSuffixSource) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } - if !util.BoolsMatch(a.AutoConfigFlag, b.AutoConfigFlag) { + if !matchIpv6DhcpClientNeighborDiscoveryDnsSuffixSourceDhcpv6(a.Dhcpv6, b.Dhcpv6) { return false } - if !util.BoolsMatch(a.Enable, b.Enable) { + if !matchIpv6DhcpClientNeighborDiscoveryDnsSuffixSourceManual(a.Manual, b.Manual) { return false } return true } -func matchIpv6AddressPrefix(a *Ipv6AddressPrefix, b *Ipv6AddressPrefix) bool { +func matchIpv6DhcpClientNeighborDiscoveryDnsSuffix(a *Ipv6DhcpClientNeighborDiscoveryDnsSuffix, b *Ipv6DhcpClientNeighborDiscoveryDnsSuffix) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - return true -} -func matchIpv6AddressAnycast(a *Ipv6AddressAnycast, b *Ipv6AddressAnycast) bool { - if a == nil && b != nil || a != nil && b == nil { + if !util.BoolsMatch(a.Enable, b.Enable) { + return false + } + if !matchIpv6DhcpClientNeighborDiscoveryDnsSuffixSource(a.Source, b.Source) { return false - } else if a == nil && b == nil { - return true } return true } -func matchIpv6Address(a []Ipv6Address, b []Ipv6Address) bool { +func matchIpv6DhcpClientNeighborDiscoveryNeighbor(a []Ipv6DhcpClientNeighborDiscoveryNeighbor, b []Ipv6DhcpClientNeighborDiscoveryNeighbor) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -2930,44 +3017,25 @@ func matchIpv6Address(a []Ipv6Address, b []Ipv6Address) bool { } for _, a := range a { for _, b := range b { - if !matchIpv6AddressAdvertise(a.Advertise, b.Advertise) { + if !util.StringsMatch(a.HwAddress, b.HwAddress) { return false } if !util.StringsEqual(a.Name, b.Name) { return false } - if !util.BoolsMatch(a.EnableOnInterface, b.EnableOnInterface) { - return false - } - if !matchIpv6AddressPrefix(a.Prefix, b.Prefix) { - return false - } - if !matchIpv6AddressAnycast(a.Anycast, b.Anycast) { - return false - } } } return true } -func matchIpv6NeighborDiscoveryRouterAdvertisementDnsSupportServer(a []Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportServer, b []Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportServer) bool { +func matchIpv6DhcpClientNeighborDiscoveryDnsServerSourceDhcpv6(a *Ipv6DhcpClientNeighborDiscoveryDnsServerSourceDhcpv6, b *Ipv6DhcpClientNeighborDiscoveryDnsServerSourceDhcpv6) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - for _, a := range a { - for _, b := range b { - if !util.Ints64Match(a.Lifetime, b.Lifetime) { - return false - } - if !util.StringsEqual(a.Name, b.Name) { - return false - } - } - } return true } -func matchIpv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix(a []Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix, b []Ipv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix) bool { +func matchIpv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer(a []Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer, b []Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -2985,113 +3053,73 @@ func matchIpv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix(a []Ipv6Neigh } return true } -func matchIpv6NeighborDiscoveryRouterAdvertisementDnsSupport(a *Ipv6NeighborDiscoveryRouterAdvertisementDnsSupport, b *Ipv6NeighborDiscoveryRouterAdvertisementDnsSupport) bool { +func matchIpv6DhcpClientNeighborDiscoveryDnsServerSourceManual(a *Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManual, b *Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManual) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchIpv6NeighborDiscoveryRouterAdvertisementDnsSupportSuffix(a.Suffix, b.Suffix) { - return false - } - if !util.BoolsMatch(a.Enable, b.Enable) { - return false - } - if !matchIpv6NeighborDiscoveryRouterAdvertisementDnsSupportServer(a.Server, b.Server) { + if !matchIpv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer(a.Server, b.Server) { return false } return true } -func matchIpv6NeighborDiscoveryRouterAdvertisement(a *Ipv6NeighborDiscoveryRouterAdvertisement, b *Ipv6NeighborDiscoveryRouterAdvertisement) bool { +func matchIpv6DhcpClientNeighborDiscoveryDnsServerSource(a *Ipv6DhcpClientNeighborDiscoveryDnsServerSource, b *Ipv6DhcpClientNeighborDiscoveryDnsServerSource) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.HopLimit, b.HopLimit) { - return false - } - if !util.StringsMatch(a.LinkMtu, b.LinkMtu) { - return false - } - if !util.Ints64Match(a.MaxInterval, b.MaxInterval) { - return false - } - if !util.BoolsMatch(a.OtherFlag, b.OtherFlag) { - return false - } - if !util.StringsMatch(a.RetransmissionTimer, b.RetransmissionTimer) { - return false - } - if !util.StringsMatch(a.RouterPreference, b.RouterPreference) { - return false - } - if !util.BoolsMatch(a.Enable, b.Enable) { - return false - } - if !util.BoolsMatch(a.EnableConsistencyCheck, b.EnableConsistencyCheck) { - return false - } - if !util.Ints64Match(a.Lifetime, b.Lifetime) { - return false - } - if !util.BoolsMatch(a.ManagedFlag, b.ManagedFlag) { - return false - } - if !util.Ints64Match(a.MinInterval, b.MinInterval) { - return false - } - if !util.StringsMatch(a.ReachableTime, b.ReachableTime) { + if !matchIpv6DhcpClientNeighborDiscoveryDnsServerSourceDhcpv6(a.Dhcpv6, b.Dhcpv6) { return false } - if !matchIpv6NeighborDiscoveryRouterAdvertisementDnsSupport(a.DnsSupport, b.DnsSupport) { + if !matchIpv6DhcpClientNeighborDiscoveryDnsServerSourceManual(a.Manual, b.Manual) { return false } return true } -func matchIpv6NeighborDiscoveryNeighbor(a []Ipv6NeighborDiscoveryNeighbor, b []Ipv6NeighborDiscoveryNeighbor) bool { +func matchIpv6DhcpClientNeighborDiscoveryDnsServer(a *Ipv6DhcpClientNeighborDiscoveryDnsServer, b *Ipv6DhcpClientNeighborDiscoveryDnsServer) bool { if a == nil && b != nil || a != nil && b == nil { return false - } else if a == nil && b == nil { - return true + } else if a == nil && b == nil { + return true + } + if !matchIpv6DhcpClientNeighborDiscoveryDnsServerSource(a.Source, b.Source) { + return false } - for _, a := range a { - for _, b := range b { - if !util.StringsMatch(a.HwAddress, b.HwAddress) { - return false - } - if !util.StringsEqual(a.Name, b.Name) { - return false - } - } + if !util.BoolsMatch(a.Enable, b.Enable) { + return false } return true } -func matchIpv6NeighborDiscovery(a *Ipv6NeighborDiscovery, b *Ipv6NeighborDiscovery) bool { +func matchIpv6DhcpClientNeighborDiscovery(a *Ipv6DhcpClientNeighborDiscovery, b *Ipv6DhcpClientNeighborDiscovery) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchIpv6NeighborDiscoveryNeighbor(a.Neighbor, b.Neighbor) { + if !matchIpv6DhcpClientNeighborDiscoveryDnsSuffix(a.DnsSuffix, b.DnsSuffix) { return false } - if !util.Ints64Match(a.NsInterval, b.NsInterval) { + if !util.BoolsMatch(a.EnableDad, b.EnableDad) { return false } - if !util.Ints64Match(a.ReachableTime, b.ReachableTime) { + if !util.BoolsMatch(a.EnableNdpMonitor, b.EnableNdpMonitor) { return false } - if !matchIpv6NeighborDiscoveryRouterAdvertisement(a.RouterAdvertisement, b.RouterAdvertisement) { + if !matchIpv6DhcpClientNeighborDiscoveryNeighbor(a.Neighbor, b.Neighbor) { return false } - if !util.Ints64Match(a.DadAttempts, b.DadAttempts) { + if !util.Ints64Match(a.NsInterval, b.NsInterval) { return false } - if !util.BoolsMatch(a.EnableDad, b.EnableDad) { + if !util.Ints64Match(a.ReachableTime, b.ReachableTime) { return false } - if !util.BoolsMatch(a.EnableNdpMonitor, b.EnableNdpMonitor) { + if !util.Ints64Match(a.DadAttempts, b.DadAttempts) { + return false + } + if !matchIpv6DhcpClientNeighborDiscoveryDnsServer(a.DnsServer, b.DnsServer) { return false } return true @@ -3110,15 +3138,15 @@ func matchIpv6DhcpClientPrefixDelegationEnableYes(a *Ipv6DhcpClientPrefixDelegat } else if a == nil && b == nil { return true } - if !util.BoolsMatch(a.PrefixLenHint, b.PrefixLenHint) { - return false - } if !util.StringsMatch(a.PfxPoolName, b.PfxPoolName) { return false } if !util.Ints64Match(a.PrefixLen, b.PrefixLen) { return false } + if !util.BoolsMatch(a.PrefixLenHint, b.PrefixLenHint) { + return false + } return true } func matchIpv6DhcpClientPrefixDelegationEnable(a *Ipv6DhcpClientPrefixDelegationEnable, b *Ipv6DhcpClientPrefixDelegationEnable) bool { @@ -3127,10 +3155,10 @@ func matchIpv6DhcpClientPrefixDelegationEnable(a *Ipv6DhcpClientPrefixDelegation } else if a == nil && b == nil { return true } - if !matchIpv6DhcpClientPrefixDelegationEnableNo(a.No, b.No) { + if !matchIpv6DhcpClientPrefixDelegationEnableYes(a.Yes, b.Yes) { return false } - if !matchIpv6DhcpClientPrefixDelegationEnableYes(a.Yes, b.Yes) { + if !matchIpv6DhcpClientPrefixDelegationEnableNo(a.No, b.No) { return false } return true @@ -3188,96 +3216,65 @@ func matchIpv6DhcpClientV6Options(a *Ipv6DhcpClientV6Options, b *Ipv6DhcpClientV } else if a == nil && b == nil { return true } - if !util.BoolsMatch(a.RapidCommit, b.RapidCommit) { + if !util.StringsMatch(a.DuidType, b.DuidType) { return false } - if !util.BoolsMatch(a.SupportSrvrReconfig, b.SupportSrvrReconfig) { + if !matchIpv6DhcpClientV6OptionsEnable(a.Enable, b.Enable) { return false } - if !util.StringsMatch(a.DuidType, b.DuidType) { + if !util.BoolsMatch(a.RapidCommit, b.RapidCommit) { return false } - if !matchIpv6DhcpClientV6OptionsEnable(a.Enable, b.Enable) { + if !util.BoolsMatch(a.SupportSrvrReconfig, b.SupportSrvrReconfig) { return false } return true } -func matchIpv6DhcpClientNeighborDiscoveryNeighbor(a []Ipv6DhcpClientNeighborDiscoveryNeighbor, b []Ipv6DhcpClientNeighborDiscoveryNeighbor) bool { +func matchIpv6DhcpClient(a *Ipv6DhcpClient, b *Ipv6DhcpClient) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - for _, a := range a { - for _, b := range b { - if !util.StringsMatch(a.HwAddress, b.HwAddress) { - return false - } - if !util.StringsEqual(a.Name, b.Name) { - return false - } - } + if !matchIpv6DhcpClientPrefixDelegation(a.PrefixDelegation, b.PrefixDelegation) { + return false } - return true -} -func matchIpv6DhcpClientNeighborDiscoveryDnsServerSourceDhcpv6(a *Ipv6DhcpClientNeighborDiscoveryDnsServerSourceDhcpv6, b *Ipv6DhcpClientNeighborDiscoveryDnsServerSourceDhcpv6) bool { - if a == nil && b != nil || a != nil && b == nil { + if !matchIpv6DhcpClientV6Options(a.V6Options, b.V6Options) { return false - } else if a == nil && b == nil { - return true } - return true -} -func matchIpv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer(a []Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer, b []Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer) bool { - if a == nil && b != nil || a != nil && b == nil { + if !util.BoolsMatch(a.AcceptRaRoute, b.AcceptRaRoute) { return false - } else if a == nil && b == nil { - return true } - for _, a := range a { - for _, b := range b { - if !util.Ints64Match(a.Lifetime, b.Lifetime) { - return false - } - if !util.StringsEqual(a.Name, b.Name) { - return false - } - } + if !util.Ints64Match(a.DefaultRouteMetric, b.DefaultRouteMetric) { + return false } - return true -} -func matchIpv6DhcpClientNeighborDiscoveryDnsServerSourceManual(a *Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManual, b *Ipv6DhcpClientNeighborDiscoveryDnsServerSourceManual) bool { - if a == nil && b != nil || a != nil && b == nil { + if !util.BoolsMatch(a.Enable, b.Enable) { return false - } else if a == nil && b == nil { - return true } - if !matchIpv6DhcpClientNeighborDiscoveryDnsServerSourceManualServer(a.Server, b.Server) { + if !matchIpv6DhcpClientNeighborDiscovery(a.NeighborDiscovery, b.NeighborDiscovery) { + return false + } + if !util.StringsMatch(a.Preference, b.Preference) { return false } return true } -func matchIpv6DhcpClientNeighborDiscoveryDnsServerSource(a *Ipv6DhcpClientNeighborDiscoveryDnsServerSource, b *Ipv6DhcpClientNeighborDiscoveryDnsServerSource) bool { +func matchIpv6InheritedAssignAddrTypeUlaAdvertise(a *Ipv6InheritedAssignAddrTypeUlaAdvertise, b *Ipv6InheritedAssignAddrTypeUlaAdvertise) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchIpv6DhcpClientNeighborDiscoveryDnsServerSourceDhcpv6(a.Dhcpv6, b.Dhcpv6) { + if !util.StringsMatch(a.ValidLifetime, b.ValidLifetime) { return false } - if !matchIpv6DhcpClientNeighborDiscoveryDnsServerSourceManual(a.Manual, b.Manual) { + if !util.StringsMatch(a.PreferredLifetime, b.PreferredLifetime) { return false } - return true -} -func matchIpv6DhcpClientNeighborDiscoveryDnsServer(a *Ipv6DhcpClientNeighborDiscoveryDnsServer, b *Ipv6DhcpClientNeighborDiscoveryDnsServer) bool { - if a == nil && b != nil || a != nil && b == nil { + if !util.BoolsMatch(a.OnlinkFlag, b.OnlinkFlag) { return false - } else if a == nil && b == nil { - return true } - if !matchIpv6DhcpClientNeighborDiscoveryDnsServerSource(a.Source, b.Source) { + if !util.BoolsMatch(a.AutoConfigFlag, b.AutoConfigFlag) { return false } if !util.BoolsMatch(a.Enable, b.Enable) { @@ -3285,58 +3282,63 @@ func matchIpv6DhcpClientNeighborDiscoveryDnsServer(a *Ipv6DhcpClientNeighborDisc } return true } -func matchIpv6DhcpClientNeighborDiscoveryDnsSuffixSourceDhcpv6(a *Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceDhcpv6, b *Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceDhcpv6) bool { +func matchIpv6InheritedAssignAddrTypeUla(a *Ipv6InheritedAssignAddrTypeUla, b *Ipv6InheritedAssignAddrTypeUla) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } + if !util.BoolsMatch(a.EnableOnInterface, b.EnableOnInterface) { + return false + } + if !util.StringsMatch(a.Address, b.Address) { + return false + } + if !util.BoolsMatch(a.Prefix, b.Prefix) { + return false + } + if !util.BoolsMatch(a.Anycast, b.Anycast) { + return false + } + if !matchIpv6InheritedAssignAddrTypeUlaAdvertise(a.Advertise, b.Advertise) { + return false + } return true } -func matchIpv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix(a []Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix, b []Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix) bool { +func matchIpv6InheritedAssignAddrTypeGuaPoolTypeDynamic(a *Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamic, b *Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamic) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - for _, a := range a { - for _, b := range b { - if !util.Ints64Match(a.Lifetime, b.Lifetime) { - return false - } - if !util.StringsEqual(a.Name, b.Name) { - return false - } - } - } return true } -func matchIpv6DhcpClientNeighborDiscoveryDnsSuffixSourceManual(a *Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManual, b *Ipv6DhcpClientNeighborDiscoveryDnsSuffixSourceManual) bool { +func matchIpv6InheritedAssignAddrTypeGuaPoolTypeDynamicId(a *Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamicId, b *Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamicId) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchIpv6DhcpClientNeighborDiscoveryDnsSuffixSourceManualSuffix(a.Suffix, b.Suffix) { + if !util.Ints64Match(a.Identifier, b.Identifier) { return false } return true } -func matchIpv6DhcpClientNeighborDiscoveryDnsSuffixSource(a *Ipv6DhcpClientNeighborDiscoveryDnsSuffixSource, b *Ipv6DhcpClientNeighborDiscoveryDnsSuffixSource) bool { +func matchIpv6InheritedAssignAddrTypeGuaPoolType(a *Ipv6InheritedAssignAddrTypeGuaPoolType, b *Ipv6InheritedAssignAddrTypeGuaPoolType) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchIpv6DhcpClientNeighborDiscoveryDnsSuffixSourceDhcpv6(a.Dhcpv6, b.Dhcpv6) { + if !matchIpv6InheritedAssignAddrTypeGuaPoolTypeDynamic(a.Dynamic, b.Dynamic) { return false } - if !matchIpv6DhcpClientNeighborDiscoveryDnsSuffixSourceManual(a.Manual, b.Manual) { + if !matchIpv6InheritedAssignAddrTypeGuaPoolTypeDynamicId(a.DynamicId, b.DynamicId) { return false } return true } -func matchIpv6DhcpClientNeighborDiscoveryDnsSuffix(a *Ipv6DhcpClientNeighborDiscoveryDnsSuffix, b *Ipv6DhcpClientNeighborDiscoveryDnsSuffix) bool { +func matchIpv6InheritedAssignAddrTypeGuaAdvertise(a *Ipv6InheritedAssignAddrTypeGuaAdvertise, b *Ipv6InheritedAssignAddrTypeGuaAdvertise) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -3345,203 +3347,203 @@ func matchIpv6DhcpClientNeighborDiscoveryDnsSuffix(a *Ipv6DhcpClientNeighborDisc if !util.BoolsMatch(a.Enable, b.Enable) { return false } - if !matchIpv6DhcpClientNeighborDiscoveryDnsSuffixSource(a.Source, b.Source) { + if !util.BoolsMatch(a.OnlinkFlag, b.OnlinkFlag) { + return false + } + if !util.BoolsMatch(a.AutoConfigFlag, b.AutoConfigFlag) { return false } return true } -func matchIpv6DhcpClientNeighborDiscovery(a *Ipv6DhcpClientNeighborDiscovery, b *Ipv6DhcpClientNeighborDiscovery) bool { +func matchIpv6InheritedAssignAddrTypeGua(a *Ipv6InheritedAssignAddrTypeGua, b *Ipv6InheritedAssignAddrTypeGua) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.Ints64Match(a.NsInterval, b.NsInterval) { - return false - } - if !util.Ints64Match(a.ReachableTime, b.ReachableTime) { - return false - } - if !util.Ints64Match(a.DadAttempts, b.DadAttempts) { - return false - } - if !matchIpv6DhcpClientNeighborDiscoveryDnsServer(a.DnsServer, b.DnsServer) { - return false - } - if !matchIpv6DhcpClientNeighborDiscoveryDnsSuffix(a.DnsSuffix, b.DnsSuffix) { + if !util.BoolsMatch(a.EnableOnInterface, b.EnableOnInterface) { return false } - if !util.BoolsMatch(a.EnableDad, b.EnableDad) { + if !util.StringsMatch(a.PrefixPool, b.PrefixPool) { return false } - if !util.BoolsMatch(a.EnableNdpMonitor, b.EnableNdpMonitor) { + if !matchIpv6InheritedAssignAddrTypeGuaPoolType(a.PoolType, b.PoolType) { return false } - if !matchIpv6DhcpClientNeighborDiscoveryNeighbor(a.Neighbor, b.Neighbor) { + if !matchIpv6InheritedAssignAddrTypeGuaAdvertise(a.Advertise, b.Advertise) { return false } return true } -func matchIpv6DhcpClient(a *Ipv6DhcpClient, b *Ipv6DhcpClient) bool { +func matchIpv6InheritedAssignAddrType(a *Ipv6InheritedAssignAddrType, b *Ipv6InheritedAssignAddrType) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.Ints64Match(a.DefaultRouteMetric, b.DefaultRouteMetric) { - return false - } - if !util.BoolsMatch(a.Enable, b.Enable) { - return false - } - if !matchIpv6DhcpClientNeighborDiscovery(a.NeighborDiscovery, b.NeighborDiscovery) { - return false - } - if !util.StringsMatch(a.Preference, b.Preference) { - return false - } - if !matchIpv6DhcpClientPrefixDelegation(a.PrefixDelegation, b.PrefixDelegation) { - return false - } - if !matchIpv6DhcpClientV6Options(a.V6Options, b.V6Options) { + if !matchIpv6InheritedAssignAddrTypeUla(a.Ula, b.Ula) { return false } - if !util.BoolsMatch(a.AcceptRaRoute, b.AcceptRaRoute) { + if !matchIpv6InheritedAssignAddrTypeGua(a.Gua, b.Gua) { return false } return true } -func matchIpv6InheritedAssignAddrTypeGuaPoolTypeDynamic(a *Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamic, b *Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamic) bool { +func matchIpv6InheritedAssignAddr(a []Ipv6InheritedAssignAddr, b []Ipv6InheritedAssignAddr) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } + for _, a := range a { + for _, b := range b { + if !matchIpv6InheritedAssignAddrType(a.Type, b.Type) { + return false + } + if !util.StringsEqual(a.Name, b.Name) { + return false + } + } + } return true } -func matchIpv6InheritedAssignAddrTypeGuaPoolTypeDynamicId(a *Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamicId, b *Ipv6InheritedAssignAddrTypeGuaPoolTypeDynamicId) bool { +func matchIpv6InheritedNeighborDiscoveryDnsServerSourceDhcpv6(a *Ipv6InheritedNeighborDiscoveryDnsServerSourceDhcpv6, b *Ipv6InheritedNeighborDiscoveryDnsServerSourceDhcpv6) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.Ints64Match(a.Identifier, b.Identifier) { + if !util.StringsMatch(a.PrefixPool, b.PrefixPool) { return false } return true } -func matchIpv6InheritedAssignAddrTypeGuaPoolType(a *Ipv6InheritedAssignAddrTypeGuaPoolType, b *Ipv6InheritedAssignAddrTypeGuaPoolType) bool { +func matchIpv6InheritedNeighborDiscoveryDnsServerSourceManualServer(a []Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer, b []Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchIpv6InheritedAssignAddrTypeGuaPoolTypeDynamic(a.Dynamic, b.Dynamic) { - return false - } - if !matchIpv6InheritedAssignAddrTypeGuaPoolTypeDynamicId(a.DynamicId, b.DynamicId) { - return false + for _, a := range a { + for _, b := range b { + if !util.Ints64Match(a.Lifetime, b.Lifetime) { + return false + } + if !util.StringsEqual(a.Name, b.Name) { + return false + } + } } return true } -func matchIpv6InheritedAssignAddrTypeGuaAdvertise(a *Ipv6InheritedAssignAddrTypeGuaAdvertise, b *Ipv6InheritedAssignAddrTypeGuaAdvertise) bool { +func matchIpv6InheritedNeighborDiscoveryDnsServerSourceManual(a *Ipv6InheritedNeighborDiscoveryDnsServerSourceManual, b *Ipv6InheritedNeighborDiscoveryDnsServerSourceManual) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.BoolsMatch(a.OnlinkFlag, b.OnlinkFlag) { - return false - } - if !util.BoolsMatch(a.AutoConfigFlag, b.AutoConfigFlag) { - return false - } - if !util.BoolsMatch(a.Enable, b.Enable) { + if !matchIpv6InheritedNeighborDiscoveryDnsServerSourceManualServer(a.Server, b.Server) { return false } return true } -func matchIpv6InheritedAssignAddrTypeGua(a *Ipv6InheritedAssignAddrTypeGua, b *Ipv6InheritedAssignAddrTypeGua) bool { +func matchIpv6InheritedNeighborDiscoveryDnsServerSource(a *Ipv6InheritedNeighborDiscoveryDnsServerSource, b *Ipv6InheritedNeighborDiscoveryDnsServerSource) bool { if a == nil && b != nil || a != nil && b == nil { return false - } else if a == nil && b == nil { - return true - } - if !util.BoolsMatch(a.EnableOnInterface, b.EnableOnInterface) { - return false - } - if !util.StringsMatch(a.PrefixPool, b.PrefixPool) { - return false + } else if a == nil && b == nil { + return true } - if !matchIpv6InheritedAssignAddrTypeGuaPoolType(a.PoolType, b.PoolType) { + if !matchIpv6InheritedNeighborDiscoveryDnsServerSourceDhcpv6(a.Dhcpv6, b.Dhcpv6) { return false } - if !matchIpv6InheritedAssignAddrTypeGuaAdvertise(a.Advertise, b.Advertise) { + if !matchIpv6InheritedNeighborDiscoveryDnsServerSourceManual(a.Manual, b.Manual) { return false } return true } -func matchIpv6InheritedAssignAddrTypeUlaAdvertise(a *Ipv6InheritedAssignAddrTypeUlaAdvertise, b *Ipv6InheritedAssignAddrTypeUlaAdvertise) bool { +func matchIpv6InheritedNeighborDiscoveryDnsServer(a *Ipv6InheritedNeighborDiscoveryDnsServer, b *Ipv6InheritedNeighborDiscoveryDnsServer) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.PreferredLifetime, b.PreferredLifetime) { - return false - } - if !util.BoolsMatch(a.OnlinkFlag, b.OnlinkFlag) { + if !util.BoolsMatch(a.Enable, b.Enable) { return false } - if !util.BoolsMatch(a.AutoConfigFlag, b.AutoConfigFlag) { + if !matchIpv6InheritedNeighborDiscoveryDnsServerSource(a.Source, b.Source) { return false } - if !util.BoolsMatch(a.Enable, b.Enable) { + return true +} +func matchIpv6InheritedNeighborDiscoveryDnsSuffixSourceDhcpv6(a *Ipv6InheritedNeighborDiscoveryDnsSuffixSourceDhcpv6, b *Ipv6InheritedNeighborDiscoveryDnsSuffixSourceDhcpv6) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } - if !util.StringsMatch(a.ValidLifetime, b.ValidLifetime) { + if !util.StringsMatch(a.PrefixPool, b.PrefixPool) { return false } return true } -func matchIpv6InheritedAssignAddrTypeUla(a *Ipv6InheritedAssignAddrTypeUla, b *Ipv6InheritedAssignAddrTypeUla) bool { +func matchIpv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix(a []Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix, b []Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchIpv6InheritedAssignAddrTypeUlaAdvertise(a.Advertise, b.Advertise) { + for _, a := range a { + for _, b := range b { + if !util.Ints64Match(a.Lifetime, b.Lifetime) { + return false + } + if !util.StringsEqual(a.Name, b.Name) { + return false + } + } + } + return true +} +func matchIpv6InheritedNeighborDiscoveryDnsSuffixSourceManual(a *Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManual, b *Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManual) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } - if !util.BoolsMatch(a.EnableOnInterface, b.EnableOnInterface) { + if !matchIpv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix(a.Suffix, b.Suffix) { return false } - if !util.StringsMatch(a.Address, b.Address) { + return true +} +func matchIpv6InheritedNeighborDiscoveryDnsSuffixSource(a *Ipv6InheritedNeighborDiscoveryDnsSuffixSource, b *Ipv6InheritedNeighborDiscoveryDnsSuffixSource) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } - if !util.BoolsMatch(a.Prefix, b.Prefix) { + if !matchIpv6InheritedNeighborDiscoveryDnsSuffixSourceDhcpv6(a.Dhcpv6, b.Dhcpv6) { return false } - if !util.BoolsMatch(a.Anycast, b.Anycast) { + if !matchIpv6InheritedNeighborDiscoveryDnsSuffixSourceManual(a.Manual, b.Manual) { return false } return true } -func matchIpv6InheritedAssignAddrType(a *Ipv6InheritedAssignAddrType, b *Ipv6InheritedAssignAddrType) bool { +func matchIpv6InheritedNeighborDiscoveryDnsSuffix(a *Ipv6InheritedNeighborDiscoveryDnsSuffix, b *Ipv6InheritedNeighborDiscoveryDnsSuffix) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchIpv6InheritedAssignAddrTypeGua(a.Gua, b.Gua) { + if !matchIpv6InheritedNeighborDiscoveryDnsSuffixSource(a.Source, b.Source) { return false } - if !matchIpv6InheritedAssignAddrTypeUla(a.Ula, b.Ula) { + if !util.BoolsMatch(a.Enable, b.Enable) { return false } return true } -func matchIpv6InheritedAssignAddr(a []Ipv6InheritedAssignAddr, b []Ipv6InheritedAssignAddr) bool { +func matchIpv6InheritedNeighborDiscoveryNeighbor(a []Ipv6InheritedNeighborDiscoveryNeighbor, b []Ipv6InheritedNeighborDiscoveryNeighbor) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -3549,7 +3551,7 @@ func matchIpv6InheritedAssignAddr(a []Ipv6InheritedAssignAddr, b []Ipv6Inherited } for _, a := range a { for _, b := range b { - if !matchIpv6InheritedAssignAddrType(a.Type, b.Type) { + if !util.StringsMatch(a.HwAddress, b.HwAddress) { return false } if !util.StringsEqual(a.Name, b.Name) { @@ -3565,124 +3567,123 @@ func matchIpv6InheritedNeighborDiscoveryRouterAdvertisement(a *Ipv6InheritedNeig } else if a == nil && b == nil { return true } - if !util.BoolsMatch(a.ManagedFlag, b.ManagedFlag) { + if !util.BoolsMatch(a.EnableConsistencyCheck, b.EnableConsistencyCheck) { return false } - if !util.BoolsMatch(a.OtherFlag, b.OtherFlag) { + if !util.StringsMatch(a.LinkMtu, b.LinkMtu) { return false } - if !util.StringsMatch(a.RetransmissionTimer, b.RetransmissionTimer) { + if !util.BoolsMatch(a.OtherFlag, b.OtherFlag) { return false } if !util.StringsMatch(a.RouterPreference, b.RouterPreference) { return false } - if !util.StringsMatch(a.LinkMtu, b.LinkMtu) { + if !util.StringsMatch(a.RetransmissionTimer, b.RetransmissionTimer) { return false } - if !util.Ints64Match(a.MaxInterval, b.MaxInterval) { + if !util.BoolsMatch(a.Enable, b.Enable) { return false } - if !util.Ints64Match(a.MinInterval, b.MinInterval) { + if !util.StringsMatch(a.HopLimit, b.HopLimit) { return false } - if !util.StringsMatch(a.ReachableTime, b.ReachableTime) { + if !util.Ints64Match(a.Lifetime, b.Lifetime) { return false } - if !util.BoolsMatch(a.Enable, b.Enable) { + if !util.BoolsMatch(a.ManagedFlag, b.ManagedFlag) { return false } - if !util.BoolsMatch(a.EnableConsistencyCheck, b.EnableConsistencyCheck) { + if !util.Ints64Match(a.MaxInterval, b.MaxInterval) { return false } - if !util.StringsMatch(a.HopLimit, b.HopLimit) { + if !util.Ints64Match(a.MinInterval, b.MinInterval) { return false } - if !util.Ints64Match(a.Lifetime, b.Lifetime) { + if !util.StringsMatch(a.ReachableTime, b.ReachableTime) { return false } return true } -func matchIpv6InheritedNeighborDiscoveryDnsServerSourceDhcpv6(a *Ipv6InheritedNeighborDiscoveryDnsServerSourceDhcpv6, b *Ipv6InheritedNeighborDiscoveryDnsServerSourceDhcpv6) bool { +func matchIpv6InheritedNeighborDiscovery(a *Ipv6InheritedNeighborDiscovery, b *Ipv6InheritedNeighborDiscovery) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.PrefixPool, b.PrefixPool) { + if !util.Ints64Match(a.DadAttempts, b.DadAttempts) { return false } - return true -} -func matchIpv6InheritedNeighborDiscoveryDnsServerSourceManualServer(a []Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer, b []Ipv6InheritedNeighborDiscoveryDnsServerSourceManualServer) bool { - if a == nil && b != nil || a != nil && b == nil { + if !matchIpv6InheritedNeighborDiscoveryNeighbor(a.Neighbor, b.Neighbor) { return false - } else if a == nil && b == nil { - return true } - for _, a := range a { - for _, b := range b { - if !util.Ints64Match(a.Lifetime, b.Lifetime) { - return false - } - if !util.StringsEqual(a.Name, b.Name) { - return false - } - } + if !util.Ints64Match(a.ReachableTime, b.ReachableTime) { + return false } - return true -} -func matchIpv6InheritedNeighborDiscoveryDnsServerSourceManual(a *Ipv6InheritedNeighborDiscoveryDnsServerSourceManual, b *Ipv6InheritedNeighborDiscoveryDnsServerSourceManual) bool { - if a == nil && b != nil || a != nil && b == nil { + if !matchIpv6InheritedNeighborDiscoveryRouterAdvertisement(a.RouterAdvertisement, b.RouterAdvertisement) { return false - } else if a == nil && b == nil { - return true } - if !matchIpv6InheritedNeighborDiscoveryDnsServerSourceManualServer(a.Server, b.Server) { + if !matchIpv6InheritedNeighborDiscoveryDnsServer(a.DnsServer, b.DnsServer) { return false } - return true -} -func matchIpv6InheritedNeighborDiscoveryDnsServerSource(a *Ipv6InheritedNeighborDiscoveryDnsServerSource, b *Ipv6InheritedNeighborDiscoveryDnsServerSource) bool { - if a == nil && b != nil || a != nil && b == nil { + if !matchIpv6InheritedNeighborDiscoveryDnsSuffix(a.DnsSuffix, b.DnsSuffix) { return false - } else if a == nil && b == nil { - return true } - if !matchIpv6InheritedNeighborDiscoveryDnsServerSourceDhcpv6(a.Dhcpv6, b.Dhcpv6) { + if !util.BoolsMatch(a.EnableDad, b.EnableDad) { return false } - if !matchIpv6InheritedNeighborDiscoveryDnsServerSourceManual(a.Manual, b.Manual) { + if !util.BoolsMatch(a.EnableNdpMonitor, b.EnableNdpMonitor) { + return false + } + if !util.Ints64Match(a.NsInterval, b.NsInterval) { return false } return true } -func matchIpv6InheritedNeighborDiscoveryDnsServer(a *Ipv6InheritedNeighborDiscoveryDnsServer, b *Ipv6InheritedNeighborDiscoveryDnsServer) bool { +func matchIpv6Inherited(a *Ipv6Inherited, b *Ipv6Inherited) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } + if !matchIpv6InheritedAssignAddr(a.AssignAddr, b.AssignAddr) { + return false + } if !util.BoolsMatch(a.Enable, b.Enable) { return false } - if !matchIpv6InheritedNeighborDiscoveryDnsServerSource(a.Source, b.Source) { + if !matchIpv6InheritedNeighborDiscovery(a.NeighborDiscovery, b.NeighborDiscovery) { return false } return true } -func matchIpv6InheritedNeighborDiscoveryDnsSuffixSourceDhcpv6(a *Ipv6InheritedNeighborDiscoveryDnsSuffixSourceDhcpv6, b *Ipv6InheritedNeighborDiscoveryDnsSuffixSourceDhcpv6) bool { +func matchIpv6(a *Ipv6, b *Ipv6) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.PrefixPool, b.PrefixPool) { + if !matchIpv6NeighborDiscovery(a.NeighborDiscovery, b.NeighborDiscovery) { + return false + } + if !matchIpv6DhcpClient(a.DhcpClient, b.DhcpClient) { + return false + } + if !matchIpv6Inherited(a.Inherited, b.Inherited) { + return false + } + if !matchIpv6Address(a.Address, b.Address) { + return false + } + if !util.BoolsMatch(a.Enabled, b.Enabled) { + return false + } + if !util.StringsMatch(a.InterfaceId, b.InterfaceId) { return false } return true } -func matchIpv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix(a []Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix, b []Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix) bool { +func matchNdpProxyAddress(a []NdpProxyAddress, b []NdpProxyAddress) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -3690,7 +3691,7 @@ func matchIpv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix(a []Ipv6Inhe } for _, a := range a { for _, b := range b { - if !util.Ints64Match(a.Lifetime, b.Lifetime) { + if !util.BoolsMatch(a.Negate, b.Negate) { return false } if !util.StringsEqual(a.Name, b.Name) { @@ -3700,46 +3701,42 @@ func matchIpv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix(a []Ipv6Inhe } return true } -func matchIpv6InheritedNeighborDiscoveryDnsSuffixSourceManual(a *Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManual, b *Ipv6InheritedNeighborDiscoveryDnsSuffixSourceManual) bool { - if a == nil && b != nil || a != nil && b == nil { - return false - } else if a == nil && b == nil { - return true - } - if !matchIpv6InheritedNeighborDiscoveryDnsSuffixSourceManualSuffix(a.Suffix, b.Suffix) { - return false - } - return true -} -func matchIpv6InheritedNeighborDiscoveryDnsSuffixSource(a *Ipv6InheritedNeighborDiscoveryDnsSuffixSource, b *Ipv6InheritedNeighborDiscoveryDnsSuffixSource) bool { +func matchNdpProxy(a *NdpProxy, b *NdpProxy) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchIpv6InheritedNeighborDiscoveryDnsSuffixSourceDhcpv6(a.Dhcpv6, b.Dhcpv6) { + if !matchNdpProxyAddress(a.Address, b.Address) { return false } - if !matchIpv6InheritedNeighborDiscoveryDnsSuffixSourceManual(a.Manual, b.Manual) { + if !util.BoolsMatch(a.Enabled, b.Enabled) { return false } return true } -func matchIpv6InheritedNeighborDiscoveryDnsSuffix(a *Ipv6InheritedNeighborDiscoveryDnsSuffix, b *Ipv6InheritedNeighborDiscoveryDnsSuffix) bool { +func matchArp(a []Arp, b []Arp) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.BoolsMatch(a.Enable, b.Enable) { - return false - } - if !matchIpv6InheritedNeighborDiscoveryDnsSuffixSource(a.Source, b.Source) { - return false + for _, a := range a { + for _, b := range b { + if !util.StringsMatch(a.HwAddress, b.HwAddress) { + return false + } + if !util.StringsMatch(a.Interface, b.Interface) { + return false + } + if !util.StringsEqual(a.Name, b.Name) { + return false + } + } } return true } -func matchIpv6InheritedNeighborDiscoveryNeighbor(a []Ipv6InheritedNeighborDiscoveryNeighbor, b []Ipv6InheritedNeighborDiscoveryNeighbor) bool { +func matchDdnsConfigDdnsVendorConfig(a []DdnsConfigDdnsVendorConfig, b []DdnsConfigDdnsVendorConfig) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -3747,7 +3744,7 @@ func matchIpv6InheritedNeighborDiscoveryNeighbor(a []Ipv6InheritedNeighborDiscov } for _, a := range a { for _, b := range b { - if !util.StringsMatch(a.HwAddress, b.HwAddress) { + if !util.StringsMatch(a.Value, b.Value) { return false } if !util.StringsEqual(a.Name, b.Name) { @@ -3757,81 +3754,84 @@ func matchIpv6InheritedNeighborDiscoveryNeighbor(a []Ipv6InheritedNeighborDiscov } return true } -func matchIpv6InheritedNeighborDiscovery(a *Ipv6InheritedNeighborDiscovery, b *Ipv6InheritedNeighborDiscovery) bool { +func matchDdnsConfig(a *DdnsConfig, b *DdnsConfig) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.Ints64Match(a.DadAttempts, b.DadAttempts) { - return false - } - if !matchIpv6InheritedNeighborDiscoveryDnsServer(a.DnsServer, b.DnsServer) { + if !util.OrderedListsMatch(a.DdnsIpv6, b.DdnsIpv6) { return false } - if !matchIpv6InheritedNeighborDiscoveryDnsSuffix(a.DnsSuffix, b.DnsSuffix) { + if !util.Ints64Match(a.DdnsUpdateInterval, b.DdnsUpdateInterval) { return false } - if !util.BoolsMatch(a.EnableDad, b.EnableDad) { + if !util.StringsMatch(a.DdnsVendor, b.DdnsVendor) { return false } - if !matchIpv6InheritedNeighborDiscoveryNeighbor(a.Neighbor, b.Neighbor) { + if !matchDdnsConfigDdnsVendorConfig(a.DdnsVendorConfig, b.DdnsVendorConfig) { return false } - if !util.Ints64Match(a.NsInterval, b.NsInterval) { + if !util.StringsMatch(a.DdnsCertProfile, b.DdnsCertProfile) { return false } - if !matchIpv6InheritedNeighborDiscoveryRouterAdvertisement(a.RouterAdvertisement, b.RouterAdvertisement) { + if !util.BoolsMatch(a.DdnsEnabled, b.DdnsEnabled) { return false } - if !util.BoolsMatch(a.EnableNdpMonitor, b.EnableNdpMonitor) { + if !util.StringsMatch(a.DdnsHostname, b.DdnsHostname) { return false } - if !util.Ints64Match(a.ReachableTime, b.ReachableTime) { + if !util.OrderedListsMatch(a.DdnsIp, b.DdnsIp) { return false } return true } -func matchIpv6Inherited(a *Ipv6Inherited, b *Ipv6Inherited) bool { +func matchDhcpClientSendHostname(a *DhcpClientSendHostname, b *DhcpClientSendHostname) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchIpv6InheritedAssignAddr(a.AssignAddr, b.AssignAddr) { - return false - } if !util.BoolsMatch(a.Enable, b.Enable) { return false } - if !matchIpv6InheritedNeighborDiscovery(a.NeighborDiscovery, b.NeighborDiscovery) { + if !util.StringsMatch(a.Hostname, b.Hostname) { return false } return true } -func matchIpv6(a *Ipv6, b *Ipv6) bool { +func matchDhcpClient(a *DhcpClient, b *DhcpClient) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchIpv6Address(a.Address, b.Address) { + if !util.BoolsMatch(a.Enable, b.Enable) { return false } - if !util.BoolsMatch(a.Enabled, b.Enabled) { + if !matchDhcpClientSendHostname(a.SendHostname, b.SendHostname) { return false } - if !util.StringsMatch(a.InterfaceId, b.InterfaceId) { + if !util.BoolsMatch(a.CreateDefaultRoute, b.CreateDefaultRoute) { return false } - if !matchIpv6NeighborDiscovery(a.NeighborDiscovery, b.NeighborDiscovery) { + if !util.Ints64Match(a.DefaultRouteMetric, b.DefaultRouteMetric) { return false } - if !matchIpv6DhcpClient(a.DhcpClient, b.DhcpClient) { + return true +} +func matchIp(a []Ip, b []Ip) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } - if !matchIpv6Inherited(a.Inherited, b.Inherited) { - return false + for _, a := range a { + for _, b := range b { + if !util.StringsEqual(a.Name, b.Name) { + return false + } + } } return true } diff --git a/network/tunnel/ipsec/entry.go b/network/tunnel/ipsec/entry.go index 41f519b..04e4702 100644 --- a/network/tunnel/ipsec/entry.go +++ b/network/tunnel/ipsec/entry.go @@ -787,18 +787,18 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["TunnelMonitor"]; ok { nestedTunnelMonitor.Misc = o.Misc["TunnelMonitor"] } - if o.TunnelMonitor.DestinationIp != nil { - nestedTunnelMonitor.DestinationIp = o.TunnelMonitor.DestinationIp - } - if o.TunnelMonitor.Enable != nil { - nestedTunnelMonitor.Enable = util.YesNo(o.TunnelMonitor.Enable, nil) - } if o.TunnelMonitor.ProxyId != nil { nestedTunnelMonitor.ProxyId = o.TunnelMonitor.ProxyId } if o.TunnelMonitor.TunnelMonitorProfile != nil { nestedTunnelMonitor.TunnelMonitorProfile = o.TunnelMonitor.TunnelMonitorProfile } + if o.TunnelMonitor.DestinationIp != nil { + nestedTunnelMonitor.DestinationIp = o.TunnelMonitor.DestinationIp + } + if o.TunnelMonitor.Enable != nil { + nestedTunnelMonitor.Enable = util.YesNo(o.TunnelMonitor.Enable, nil) + } } entry.TunnelMonitor = nestedTunnelMonitor @@ -889,11 +889,26 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["AutoKeyProxyIdV6"]; ok { nestedAutoKeyProxyIdV6.Misc = o.Misc["AutoKeyProxyIdV6"] } + if oAutoKeyProxyIdV6.Local != nil { + nestedAutoKeyProxyIdV6.Local = oAutoKeyProxyIdV6.Local + } + if oAutoKeyProxyIdV6.Remote != nil { + nestedAutoKeyProxyIdV6.Remote = oAutoKeyProxyIdV6.Remote + } if oAutoKeyProxyIdV6.Protocol != nil { nestedAutoKeyProxyIdV6.Protocol = &AutoKeyProxyIdV6ProtocolXml{} if _, ok := o.Misc["AutoKeyProxyIdV6Protocol"]; ok { nestedAutoKeyProxyIdV6.Protocol.Misc = o.Misc["AutoKeyProxyIdV6Protocol"] } + if oAutoKeyProxyIdV6.Protocol.Number != nil { + nestedAutoKeyProxyIdV6.Protocol.Number = oAutoKeyProxyIdV6.Protocol.Number + } + if oAutoKeyProxyIdV6.Protocol.Any != nil { + nestedAutoKeyProxyIdV6.Protocol.Any = &AutoKeyProxyIdV6ProtocolAnyXml{} + if _, ok := o.Misc["AutoKeyProxyIdV6ProtocolAny"]; ok { + nestedAutoKeyProxyIdV6.Protocol.Any.Misc = o.Misc["AutoKeyProxyIdV6ProtocolAny"] + } + } if oAutoKeyProxyIdV6.Protocol.Tcp != nil { nestedAutoKeyProxyIdV6.Protocol.Tcp = &AutoKeyProxyIdV6ProtocolTcpXml{} if _, ok := o.Misc["AutoKeyProxyIdV6ProtocolTcp"]; ok { @@ -918,25 +933,10 @@ func specifyEntry(o *Entry) (any, error) { nestedAutoKeyProxyIdV6.Protocol.Udp.RemotePort = oAutoKeyProxyIdV6.Protocol.Udp.RemotePort } } - if oAutoKeyProxyIdV6.Protocol.Number != nil { - nestedAutoKeyProxyIdV6.Protocol.Number = oAutoKeyProxyIdV6.Protocol.Number - } - if oAutoKeyProxyIdV6.Protocol.Any != nil { - nestedAutoKeyProxyIdV6.Protocol.Any = &AutoKeyProxyIdV6ProtocolAnyXml{} - if _, ok := o.Misc["AutoKeyProxyIdV6ProtocolAny"]; ok { - nestedAutoKeyProxyIdV6.Protocol.Any.Misc = o.Misc["AutoKeyProxyIdV6ProtocolAny"] - } - } } if oAutoKeyProxyIdV6.Name != "" { nestedAutoKeyProxyIdV6.Name = oAutoKeyProxyIdV6.Name } - if oAutoKeyProxyIdV6.Local != nil { - nestedAutoKeyProxyIdV6.Local = oAutoKeyProxyIdV6.Local - } - if oAutoKeyProxyIdV6.Remote != nil { - nestedAutoKeyProxyIdV6.Remote = oAutoKeyProxyIdV6.Remote - } nestedAutoKey.ProxyIdV6 = append(nestedAutoKey.ProxyIdV6, nestedAutoKeyProxyIdV6) } } @@ -949,6 +949,15 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["GlobalProtectSatellite"]; ok { nestedGlobalProtectSatellite.Misc = o.Misc["GlobalProtectSatellite"] } + if o.GlobalProtectSatellite.PublishConnectedRoutes != nil { + nestedGlobalProtectSatellite.PublishConnectedRoutes = &GlobalProtectSatellitePublishConnectedRoutesXml{} + if _, ok := o.Misc["GlobalProtectSatellitePublishConnectedRoutes"]; ok { + nestedGlobalProtectSatellite.PublishConnectedRoutes.Misc = o.Misc["GlobalProtectSatellitePublishConnectedRoutes"] + } + if o.GlobalProtectSatellite.PublishConnectedRoutes.Enable != nil { + nestedGlobalProtectSatellite.PublishConnectedRoutes.Enable = util.YesNo(o.GlobalProtectSatellite.PublishConnectedRoutes.Enable, nil) + } + } if o.GlobalProtectSatellite.PublishRoutes != nil { nestedGlobalProtectSatellite.PublishRoutes = util.StrToMem(o.GlobalProtectSatellite.PublishRoutes) } @@ -1003,15 +1012,6 @@ func specifyEntry(o *Entry) (any, error) { if o.GlobalProtectSatellite.PortalAddress != nil { nestedGlobalProtectSatellite.PortalAddress = o.GlobalProtectSatellite.PortalAddress } - if o.GlobalProtectSatellite.PublishConnectedRoutes != nil { - nestedGlobalProtectSatellite.PublishConnectedRoutes = &GlobalProtectSatellitePublishConnectedRoutesXml{} - if _, ok := o.Misc["GlobalProtectSatellitePublishConnectedRoutes"]; ok { - nestedGlobalProtectSatellite.PublishConnectedRoutes.Misc = o.Misc["GlobalProtectSatellitePublishConnectedRoutes"] - } - if o.GlobalProtectSatellite.PublishConnectedRoutes.Enable != nil { - nestedGlobalProtectSatellite.PublishConnectedRoutes.Enable = util.YesNo(o.GlobalProtectSatellite.PublishConnectedRoutes.Enable, nil) - } - } } entry.GlobalProtectSatellite = nestedGlobalProtectSatellite @@ -1021,6 +1021,9 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["ManualKey"]; ok { nestedManualKey.Misc = o.Misc["ManualKey"] } + if o.ManualKey.RemoteSpi != nil { + nestedManualKey.RemoteSpi = o.ManualKey.RemoteSpi + } if o.ManualKey.LocalAddress != nil { nestedManualKey.LocalAddress = &ManualKeyLocalAddressXml{} if _, ok := o.Misc["ManualKeyLocalAddress"]; ok { @@ -1048,32 +1051,11 @@ func specifyEntry(o *Entry) (any, error) { nestedManualKey.PeerAddress.Ip = o.ManualKey.PeerAddress.Ip } } - if o.ManualKey.RemoteSpi != nil { - nestedManualKey.RemoteSpi = o.ManualKey.RemoteSpi - } if o.ManualKey.Ah != nil { nestedManualKey.Ah = &ManualKeyAhXml{} if _, ok := o.Misc["ManualKeyAh"]; ok { nestedManualKey.Ah.Misc = o.Misc["ManualKeyAh"] } - if o.ManualKey.Ah.Md5 != nil { - nestedManualKey.Ah.Md5 = &ManualKeyAhMd5Xml{} - if _, ok := o.Misc["ManualKeyAhMd5"]; ok { - nestedManualKey.Ah.Md5.Misc = o.Misc["ManualKeyAhMd5"] - } - if o.ManualKey.Ah.Md5.Key != nil { - nestedManualKey.Ah.Md5.Key = o.ManualKey.Ah.Md5.Key - } - } - if o.ManualKey.Ah.Sha1 != nil { - nestedManualKey.Ah.Sha1 = &ManualKeyAhSha1Xml{} - if _, ok := o.Misc["ManualKeyAhSha1"]; ok { - nestedManualKey.Ah.Sha1.Misc = o.Misc["ManualKeyAhSha1"] - } - if o.ManualKey.Ah.Sha1.Key != nil { - nestedManualKey.Ah.Sha1.Key = o.ManualKey.Ah.Sha1.Key - } - } if o.ManualKey.Ah.Sha256 != nil { nestedManualKey.Ah.Sha256 = &ManualKeyAhSha256Xml{} if _, ok := o.Misc["ManualKeyAhSha256"]; ok { @@ -1101,6 +1083,24 @@ func specifyEntry(o *Entry) (any, error) { nestedManualKey.Ah.Sha512.Key = o.ManualKey.Ah.Sha512.Key } } + if o.ManualKey.Ah.Md5 != nil { + nestedManualKey.Ah.Md5 = &ManualKeyAhMd5Xml{} + if _, ok := o.Misc["ManualKeyAhMd5"]; ok { + nestedManualKey.Ah.Md5.Misc = o.Misc["ManualKeyAhMd5"] + } + if o.ManualKey.Ah.Md5.Key != nil { + nestedManualKey.Ah.Md5.Key = o.ManualKey.Ah.Md5.Key + } + } + if o.ManualKey.Ah.Sha1 != nil { + nestedManualKey.Ah.Sha1 = &ManualKeyAhSha1Xml{} + if _, ok := o.Misc["ManualKeyAhSha1"]; ok { + nestedManualKey.Ah.Sha1.Misc = o.Misc["ManualKeyAhSha1"] + } + if o.ManualKey.Ah.Sha1.Key != nil { + nestedManualKey.Ah.Sha1.Key = o.ManualKey.Ah.Sha1.Key + } + } } if o.ManualKey.Esp != nil { nestedManualKey.Esp = &ManualKeyEspXml{} @@ -1112,6 +1112,24 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["ManualKeyEspAuthentication"]; ok { nestedManualKey.Esp.Authentication.Misc = o.Misc["ManualKeyEspAuthentication"] } + if o.ManualKey.Esp.Authentication.Sha1 != nil { + nestedManualKey.Esp.Authentication.Sha1 = &ManualKeyEspAuthenticationSha1Xml{} + if _, ok := o.Misc["ManualKeyEspAuthenticationSha1"]; ok { + nestedManualKey.Esp.Authentication.Sha1.Misc = o.Misc["ManualKeyEspAuthenticationSha1"] + } + if o.ManualKey.Esp.Authentication.Sha1.Key != nil { + nestedManualKey.Esp.Authentication.Sha1.Key = o.ManualKey.Esp.Authentication.Sha1.Key + } + } + if o.ManualKey.Esp.Authentication.Sha256 != nil { + nestedManualKey.Esp.Authentication.Sha256 = &ManualKeyEspAuthenticationSha256Xml{} + if _, ok := o.Misc["ManualKeyEspAuthenticationSha256"]; ok { + nestedManualKey.Esp.Authentication.Sha256.Misc = o.Misc["ManualKeyEspAuthenticationSha256"] + } + if o.ManualKey.Esp.Authentication.Sha256.Key != nil { + nestedManualKey.Esp.Authentication.Sha256.Key = o.ManualKey.Esp.Authentication.Sha256.Key + } + } if o.ManualKey.Esp.Authentication.Sha384 != nil { nestedManualKey.Esp.Authentication.Sha384 = &ManualKeyEspAuthenticationSha384Xml{} if _, ok := o.Misc["ManualKeyEspAuthenticationSha384"]; ok { @@ -1145,36 +1163,18 @@ func specifyEntry(o *Entry) (any, error) { nestedManualKey.Esp.Authentication.None.Misc = o.Misc["ManualKeyEspAuthenticationNone"] } } - if o.ManualKey.Esp.Authentication.Sha1 != nil { - nestedManualKey.Esp.Authentication.Sha1 = &ManualKeyEspAuthenticationSha1Xml{} - if _, ok := o.Misc["ManualKeyEspAuthenticationSha1"]; ok { - nestedManualKey.Esp.Authentication.Sha1.Misc = o.Misc["ManualKeyEspAuthenticationSha1"] - } - if o.ManualKey.Esp.Authentication.Sha1.Key != nil { - nestedManualKey.Esp.Authentication.Sha1.Key = o.ManualKey.Esp.Authentication.Sha1.Key - } - } - if o.ManualKey.Esp.Authentication.Sha256 != nil { - nestedManualKey.Esp.Authentication.Sha256 = &ManualKeyEspAuthenticationSha256Xml{} - if _, ok := o.Misc["ManualKeyEspAuthenticationSha256"]; ok { - nestedManualKey.Esp.Authentication.Sha256.Misc = o.Misc["ManualKeyEspAuthenticationSha256"] - } - if o.ManualKey.Esp.Authentication.Sha256.Key != nil { - nestedManualKey.Esp.Authentication.Sha256.Key = o.ManualKey.Esp.Authentication.Sha256.Key - } - } } if o.ManualKey.Esp.Encryption != nil { nestedManualKey.Esp.Encryption = &ManualKeyEspEncryptionXml{} if _, ok := o.Misc["ManualKeyEspEncryption"]; ok { nestedManualKey.Esp.Encryption.Misc = o.Misc["ManualKeyEspEncryption"] } - if o.ManualKey.Esp.Encryption.Algorithm != nil { - nestedManualKey.Esp.Encryption.Algorithm = o.ManualKey.Esp.Encryption.Algorithm - } if o.ManualKey.Esp.Encryption.Key != nil { nestedManualKey.Esp.Encryption.Key = o.ManualKey.Esp.Encryption.Key } + if o.ManualKey.Esp.Encryption.Algorithm != nil { + nestedManualKey.Esp.Encryption.Algorithm = o.ManualKey.Esp.Encryption.Algorithm + } } } } @@ -1204,6 +1204,9 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { if _, ok := o.Misc["TunnelMonitor"]; ok { nestedTunnelMonitor.Misc = o.Misc["TunnelMonitor"] } + if o.TunnelMonitor.ProxyId != nil { + nestedTunnelMonitor.ProxyId = o.TunnelMonitor.ProxyId + } if o.TunnelMonitor.TunnelMonitorProfile != nil { nestedTunnelMonitor.TunnelMonitorProfile = o.TunnelMonitor.TunnelMonitorProfile } @@ -1213,9 +1216,6 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { if o.TunnelMonitor.Enable != nil { nestedTunnelMonitor.Enable = util.YesNo(o.TunnelMonitor.Enable, nil) } - if o.TunnelMonitor.ProxyId != nil { - nestedTunnelMonitor.ProxyId = o.TunnelMonitor.ProxyId - } } entry.TunnelMonitor = nestedTunnelMonitor @@ -1225,6 +1225,19 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { if _, ok := o.Misc["AutoKey"]; ok { nestedAutoKey.Misc = o.Misc["AutoKey"] } + if o.AutoKey.IkeGateway != nil { + nestedAutoKey.IkeGateway = []AutoKeyIkeGatewayXml_11_0_2{} + for _, oAutoKeyIkeGateway := range o.AutoKey.IkeGateway { + nestedAutoKeyIkeGateway := AutoKeyIkeGatewayXml_11_0_2{} + if _, ok := o.Misc["AutoKeyIkeGateway"]; ok { + nestedAutoKeyIkeGateway.Misc = o.Misc["AutoKeyIkeGateway"] + } + if oAutoKeyIkeGateway.Name != "" { + nestedAutoKeyIkeGateway.Name = oAutoKeyIkeGateway.Name + } + nestedAutoKey.IkeGateway = append(nestedAutoKey.IkeGateway, nestedAutoKeyIkeGateway) + } + } if o.AutoKey.IpsecCryptoProfile != nil { nestedAutoKey.IpsecCryptoProfile = o.AutoKey.IpsecCryptoProfile } @@ -1235,9 +1248,6 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { if _, ok := o.Misc["AutoKeyProxyId"]; ok { nestedAutoKeyProxyId.Misc = o.Misc["AutoKeyProxyId"] } - if oAutoKeyProxyId.Name != "" { - nestedAutoKeyProxyId.Name = oAutoKeyProxyId.Name - } if oAutoKeyProxyId.Local != nil { nestedAutoKeyProxyId.Local = oAutoKeyProxyId.Local } @@ -1249,15 +1259,6 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { if _, ok := o.Misc["AutoKeyProxyIdProtocol"]; ok { nestedAutoKeyProxyId.Protocol.Misc = o.Misc["AutoKeyProxyIdProtocol"] } - if oAutoKeyProxyId.Protocol.Number != nil { - nestedAutoKeyProxyId.Protocol.Number = oAutoKeyProxyId.Protocol.Number - } - if oAutoKeyProxyId.Protocol.Any != nil { - nestedAutoKeyProxyId.Protocol.Any = &AutoKeyProxyIdProtocolAnyXml_11_0_2{} - if _, ok := o.Misc["AutoKeyProxyIdProtocolAny"]; ok { - nestedAutoKeyProxyId.Protocol.Any.Misc = o.Misc["AutoKeyProxyIdProtocolAny"] - } - } if oAutoKeyProxyId.Protocol.Tcp != nil { nestedAutoKeyProxyId.Protocol.Tcp = &AutoKeyProxyIdProtocolTcpXml_11_0_2{} if _, ok := o.Misc["AutoKeyProxyIdProtocolTcp"]; ok { @@ -1282,6 +1283,18 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { nestedAutoKeyProxyId.Protocol.Udp.RemotePort = oAutoKeyProxyId.Protocol.Udp.RemotePort } } + if oAutoKeyProxyId.Protocol.Number != nil { + nestedAutoKeyProxyId.Protocol.Number = oAutoKeyProxyId.Protocol.Number + } + if oAutoKeyProxyId.Protocol.Any != nil { + nestedAutoKeyProxyId.Protocol.Any = &AutoKeyProxyIdProtocolAnyXml_11_0_2{} + if _, ok := o.Misc["AutoKeyProxyIdProtocolAny"]; ok { + nestedAutoKeyProxyId.Protocol.Any.Misc = o.Misc["AutoKeyProxyIdProtocolAny"] + } + } + } + if oAutoKeyProxyId.Name != "" { + nestedAutoKeyProxyId.Name = oAutoKeyProxyId.Name } nestedAutoKey.ProxyId = append(nestedAutoKey.ProxyId, nestedAutoKeyProxyId) } @@ -1304,6 +1317,15 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { if _, ok := o.Misc["AutoKeyProxyIdV6Protocol"]; ok { nestedAutoKeyProxyIdV6.Protocol.Misc = o.Misc["AutoKeyProxyIdV6Protocol"] } + if oAutoKeyProxyIdV6.Protocol.Number != nil { + nestedAutoKeyProxyIdV6.Protocol.Number = oAutoKeyProxyIdV6.Protocol.Number + } + if oAutoKeyProxyIdV6.Protocol.Any != nil { + nestedAutoKeyProxyIdV6.Protocol.Any = &AutoKeyProxyIdV6ProtocolAnyXml_11_0_2{} + if _, ok := o.Misc["AutoKeyProxyIdV6ProtocolAny"]; ok { + nestedAutoKeyProxyIdV6.Protocol.Any.Misc = o.Misc["AutoKeyProxyIdV6ProtocolAny"] + } + } if oAutoKeyProxyIdV6.Protocol.Tcp != nil { nestedAutoKeyProxyIdV6.Protocol.Tcp = &AutoKeyProxyIdV6ProtocolTcpXml_11_0_2{} if _, ok := o.Misc["AutoKeyProxyIdV6ProtocolTcp"]; ok { @@ -1328,15 +1350,6 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { nestedAutoKeyProxyIdV6.Protocol.Udp.RemotePort = oAutoKeyProxyIdV6.Protocol.Udp.RemotePort } } - if oAutoKeyProxyIdV6.Protocol.Number != nil { - nestedAutoKeyProxyIdV6.Protocol.Number = oAutoKeyProxyIdV6.Protocol.Number - } - if oAutoKeyProxyIdV6.Protocol.Any != nil { - nestedAutoKeyProxyIdV6.Protocol.Any = &AutoKeyProxyIdV6ProtocolAnyXml_11_0_2{} - if _, ok := o.Misc["AutoKeyProxyIdV6ProtocolAny"]; ok { - nestedAutoKeyProxyIdV6.Protocol.Any.Misc = o.Misc["AutoKeyProxyIdV6ProtocolAny"] - } - } } if oAutoKeyProxyIdV6.Name != "" { nestedAutoKeyProxyIdV6.Name = oAutoKeyProxyIdV6.Name @@ -1344,19 +1357,6 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { nestedAutoKey.ProxyIdV6 = append(nestedAutoKey.ProxyIdV6, nestedAutoKeyProxyIdV6) } } - if o.AutoKey.IkeGateway != nil { - nestedAutoKey.IkeGateway = []AutoKeyIkeGatewayXml_11_0_2{} - for _, oAutoKeyIkeGateway := range o.AutoKey.IkeGateway { - nestedAutoKeyIkeGateway := AutoKeyIkeGatewayXml_11_0_2{} - if _, ok := o.Misc["AutoKeyIkeGateway"]; ok { - nestedAutoKeyIkeGateway.Misc = o.Misc["AutoKeyIkeGateway"] - } - if oAutoKeyIkeGateway.Name != "" { - nestedAutoKeyIkeGateway.Name = oAutoKeyIkeGateway.Name - } - nestedAutoKey.IkeGateway = append(nestedAutoKey.IkeGateway, nestedAutoKeyIkeGateway) - } - } } entry.AutoKey = nestedAutoKey @@ -1366,6 +1366,18 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { if _, ok := o.Misc["GlobalProtectSatellite"]; ok { nestedGlobalProtectSatellite.Misc = o.Misc["GlobalProtectSatellite"] } + if o.GlobalProtectSatellite.ExternalCa != nil { + nestedGlobalProtectSatellite.ExternalCa = &GlobalProtectSatelliteExternalCaXml_11_0_2{} + if _, ok := o.Misc["GlobalProtectSatelliteExternalCa"]; ok { + nestedGlobalProtectSatellite.ExternalCa.Misc = o.Misc["GlobalProtectSatelliteExternalCa"] + } + if o.GlobalProtectSatellite.ExternalCa.LocalCertificate != nil { + nestedGlobalProtectSatellite.ExternalCa.LocalCertificate = o.GlobalProtectSatellite.ExternalCa.LocalCertificate + } + if o.GlobalProtectSatellite.ExternalCa.CertificateProfile != nil { + nestedGlobalProtectSatellite.ExternalCa.CertificateProfile = o.GlobalProtectSatellite.ExternalCa.CertificateProfile + } + } if o.GlobalProtectSatellite.Ipv6Preferred != nil { nestedGlobalProtectSatellite.Ipv6Preferred = util.YesNo(o.GlobalProtectSatellite.Ipv6Preferred, nil) } @@ -1382,12 +1394,12 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { if _, ok := o.Misc["GlobalProtectSatelliteLocalAddressFloatingIp"]; ok { nestedGlobalProtectSatellite.LocalAddress.FloatingIp.Misc = o.Misc["GlobalProtectSatelliteLocalAddressFloatingIp"] } - if o.GlobalProtectSatellite.LocalAddress.FloatingIp.Ipv4 != nil { - nestedGlobalProtectSatellite.LocalAddress.FloatingIp.Ipv4 = o.GlobalProtectSatellite.LocalAddress.FloatingIp.Ipv4 - } if o.GlobalProtectSatellite.LocalAddress.FloatingIp.Ipv6 != nil { nestedGlobalProtectSatellite.LocalAddress.FloatingIp.Ipv6 = o.GlobalProtectSatellite.LocalAddress.FloatingIp.Ipv6 } + if o.GlobalProtectSatellite.LocalAddress.FloatingIp.Ipv4 != nil { + nestedGlobalProtectSatellite.LocalAddress.FloatingIp.Ipv4 = o.GlobalProtectSatellite.LocalAddress.FloatingIp.Ipv4 + } } if o.GlobalProtectSatellite.LocalAddress.Ip != nil { nestedGlobalProtectSatellite.LocalAddress.Ip = &GlobalProtectSatelliteLocalAddressIpXml_11_0_2{} @@ -1417,18 +1429,6 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { if o.GlobalProtectSatellite.PublishRoutes != nil { nestedGlobalProtectSatellite.PublishRoutes = util.StrToMem(o.GlobalProtectSatellite.PublishRoutes) } - if o.GlobalProtectSatellite.ExternalCa != nil { - nestedGlobalProtectSatellite.ExternalCa = &GlobalProtectSatelliteExternalCaXml_11_0_2{} - if _, ok := o.Misc["GlobalProtectSatelliteExternalCa"]; ok { - nestedGlobalProtectSatellite.ExternalCa.Misc = o.Misc["GlobalProtectSatelliteExternalCa"] - } - if o.GlobalProtectSatellite.ExternalCa.CertificateProfile != nil { - nestedGlobalProtectSatellite.ExternalCa.CertificateProfile = o.GlobalProtectSatellite.ExternalCa.CertificateProfile - } - if o.GlobalProtectSatellite.ExternalCa.LocalCertificate != nil { - nestedGlobalProtectSatellite.ExternalCa.LocalCertificate = o.GlobalProtectSatellite.ExternalCa.LocalCertificate - } - } } entry.GlobalProtectSatellite = nestedGlobalProtectSatellite @@ -1529,34 +1529,10 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { if _, ok := o.Misc["ManualKeyEspAuthentication"]; ok { nestedManualKey.Esp.Authentication.Misc = o.Misc["ManualKeyEspAuthentication"] } - if o.ManualKey.Esp.Authentication.Md5 != nil { - nestedManualKey.Esp.Authentication.Md5 = &ManualKeyEspAuthenticationMd5Xml_11_0_2{} - if _, ok := o.Misc["ManualKeyEspAuthenticationMd5"]; ok { - nestedManualKey.Esp.Authentication.Md5.Misc = o.Misc["ManualKeyEspAuthenticationMd5"] - } - if o.ManualKey.Esp.Authentication.Md5.Key != nil { - nestedManualKey.Esp.Authentication.Md5.Key = o.ManualKey.Esp.Authentication.Md5.Key - } - } - if o.ManualKey.Esp.Authentication.None != nil { - nestedManualKey.Esp.Authentication.None = &ManualKeyEspAuthenticationNoneXml_11_0_2{} - if _, ok := o.Misc["ManualKeyEspAuthenticationNone"]; ok { - nestedManualKey.Esp.Authentication.None.Misc = o.Misc["ManualKeyEspAuthenticationNone"] - } - } - if o.ManualKey.Esp.Authentication.Sha1 != nil { - nestedManualKey.Esp.Authentication.Sha1 = &ManualKeyEspAuthenticationSha1Xml_11_0_2{} - if _, ok := o.Misc["ManualKeyEspAuthenticationSha1"]; ok { - nestedManualKey.Esp.Authentication.Sha1.Misc = o.Misc["ManualKeyEspAuthenticationSha1"] - } - if o.ManualKey.Esp.Authentication.Sha1.Key != nil { - nestedManualKey.Esp.Authentication.Sha1.Key = o.ManualKey.Esp.Authentication.Sha1.Key - } - } - if o.ManualKey.Esp.Authentication.Sha256 != nil { - nestedManualKey.Esp.Authentication.Sha256 = &ManualKeyEspAuthenticationSha256Xml_11_0_2{} - if _, ok := o.Misc["ManualKeyEspAuthenticationSha256"]; ok { - nestedManualKey.Esp.Authentication.Sha256.Misc = o.Misc["ManualKeyEspAuthenticationSha256"] + if o.ManualKey.Esp.Authentication.Sha256 != nil { + nestedManualKey.Esp.Authentication.Sha256 = &ManualKeyEspAuthenticationSha256Xml_11_0_2{} + if _, ok := o.Misc["ManualKeyEspAuthenticationSha256"]; ok { + nestedManualKey.Esp.Authentication.Sha256.Misc = o.Misc["ManualKeyEspAuthenticationSha256"] } if o.ManualKey.Esp.Authentication.Sha256.Key != nil { nestedManualKey.Esp.Authentication.Sha256.Key = o.ManualKey.Esp.Authentication.Sha256.Key @@ -1580,6 +1556,30 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { nestedManualKey.Esp.Authentication.Sha512.Key = o.ManualKey.Esp.Authentication.Sha512.Key } } + if o.ManualKey.Esp.Authentication.Md5 != nil { + nestedManualKey.Esp.Authentication.Md5 = &ManualKeyEspAuthenticationMd5Xml_11_0_2{} + if _, ok := o.Misc["ManualKeyEspAuthenticationMd5"]; ok { + nestedManualKey.Esp.Authentication.Md5.Misc = o.Misc["ManualKeyEspAuthenticationMd5"] + } + if o.ManualKey.Esp.Authentication.Md5.Key != nil { + nestedManualKey.Esp.Authentication.Md5.Key = o.ManualKey.Esp.Authentication.Md5.Key + } + } + if o.ManualKey.Esp.Authentication.None != nil { + nestedManualKey.Esp.Authentication.None = &ManualKeyEspAuthenticationNoneXml_11_0_2{} + if _, ok := o.Misc["ManualKeyEspAuthenticationNone"]; ok { + nestedManualKey.Esp.Authentication.None.Misc = o.Misc["ManualKeyEspAuthenticationNone"] + } + } + if o.ManualKey.Esp.Authentication.Sha1 != nil { + nestedManualKey.Esp.Authentication.Sha1 = &ManualKeyEspAuthenticationSha1Xml_11_0_2{} + if _, ok := o.Misc["ManualKeyEspAuthenticationSha1"]; ok { + nestedManualKey.Esp.Authentication.Sha1.Misc = o.Misc["ManualKeyEspAuthenticationSha1"] + } + if o.ManualKey.Esp.Authentication.Sha1.Key != nil { + nestedManualKey.Esp.Authentication.Sha1.Key = o.ManualKey.Esp.Authentication.Sha1.Key + } + } } if o.ManualKey.Esp.Encryption != nil { nestedManualKey.Esp.Encryption = &ManualKeyEspEncryptionXml_11_0_2{} @@ -1624,18 +1624,18 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.TunnelMonitor.Misc != nil { entry.Misc["TunnelMonitor"] = o.TunnelMonitor.Misc } - if o.TunnelMonitor.ProxyId != nil { - nestedTunnelMonitor.ProxyId = o.TunnelMonitor.ProxyId - } - if o.TunnelMonitor.TunnelMonitorProfile != nil { - nestedTunnelMonitor.TunnelMonitorProfile = o.TunnelMonitor.TunnelMonitorProfile - } if o.TunnelMonitor.DestinationIp != nil { nestedTunnelMonitor.DestinationIp = o.TunnelMonitor.DestinationIp } if o.TunnelMonitor.Enable != nil { nestedTunnelMonitor.Enable = util.AsBool(o.TunnelMonitor.Enable, nil) } + if o.TunnelMonitor.ProxyId != nil { + nestedTunnelMonitor.ProxyId = o.TunnelMonitor.ProxyId + } + if o.TunnelMonitor.TunnelMonitorProfile != nil { + nestedTunnelMonitor.TunnelMonitorProfile = o.TunnelMonitor.TunnelMonitorProfile + } } entry.TunnelMonitor = nestedTunnelMonitor @@ -1645,6 +1645,22 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.AutoKey.Misc != nil { entry.Misc["AutoKey"] = o.AutoKey.Misc } + if o.AutoKey.IkeGateway != nil { + nestedAutoKey.IkeGateway = []AutoKeyIkeGateway{} + for _, oAutoKeyIkeGateway := range o.AutoKey.IkeGateway { + nestedAutoKeyIkeGateway := AutoKeyIkeGateway{} + if oAutoKeyIkeGateway.Misc != nil { + entry.Misc["AutoKeyIkeGateway"] = oAutoKeyIkeGateway.Misc + } + if oAutoKeyIkeGateway.Name != "" { + nestedAutoKeyIkeGateway.Name = oAutoKeyIkeGateway.Name + } + nestedAutoKey.IkeGateway = append(nestedAutoKey.IkeGateway, nestedAutoKeyIkeGateway) + } + } + if o.AutoKey.IpsecCryptoProfile != nil { + nestedAutoKey.IpsecCryptoProfile = o.AutoKey.IpsecCryptoProfile + } if o.AutoKey.ProxyId != nil { nestedAutoKey.ProxyId = []AutoKeyProxyId{} for _, oAutoKeyProxyId := range o.AutoKey.ProxyId { @@ -1663,29 +1679,17 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oAutoKeyProxyId.Protocol.Misc != nil { entry.Misc["AutoKeyProxyIdProtocol"] = oAutoKeyProxyId.Protocol.Misc } - if oAutoKeyProxyId.Protocol.Tcp != nil { - nestedAutoKeyProxyId.Protocol.Tcp = &AutoKeyProxyIdProtocolTcp{} - if oAutoKeyProxyId.Protocol.Tcp.Misc != nil { - entry.Misc["AutoKeyProxyIdProtocolTcp"] = oAutoKeyProxyId.Protocol.Tcp.Misc - } - if oAutoKeyProxyId.Protocol.Tcp.LocalPort != nil { - nestedAutoKeyProxyId.Protocol.Tcp.LocalPort = oAutoKeyProxyId.Protocol.Tcp.LocalPort - } - if oAutoKeyProxyId.Protocol.Tcp.RemotePort != nil { - nestedAutoKeyProxyId.Protocol.Tcp.RemotePort = oAutoKeyProxyId.Protocol.Tcp.RemotePort - } - } if oAutoKeyProxyId.Protocol.Udp != nil { nestedAutoKeyProxyId.Protocol.Udp = &AutoKeyProxyIdProtocolUdp{} if oAutoKeyProxyId.Protocol.Udp.Misc != nil { entry.Misc["AutoKeyProxyIdProtocolUdp"] = oAutoKeyProxyId.Protocol.Udp.Misc } - if oAutoKeyProxyId.Protocol.Udp.LocalPort != nil { - nestedAutoKeyProxyId.Protocol.Udp.LocalPort = oAutoKeyProxyId.Protocol.Udp.LocalPort - } if oAutoKeyProxyId.Protocol.Udp.RemotePort != nil { nestedAutoKeyProxyId.Protocol.Udp.RemotePort = oAutoKeyProxyId.Protocol.Udp.RemotePort } + if oAutoKeyProxyId.Protocol.Udp.LocalPort != nil { + nestedAutoKeyProxyId.Protocol.Udp.LocalPort = oAutoKeyProxyId.Protocol.Udp.LocalPort + } } if oAutoKeyProxyId.Protocol.Number != nil { nestedAutoKeyProxyId.Protocol.Number = oAutoKeyProxyId.Protocol.Number @@ -1696,6 +1700,18 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { entry.Misc["AutoKeyProxyIdProtocolAny"] = oAutoKeyProxyId.Protocol.Any.Misc } } + if oAutoKeyProxyId.Protocol.Tcp != nil { + nestedAutoKeyProxyId.Protocol.Tcp = &AutoKeyProxyIdProtocolTcp{} + if oAutoKeyProxyId.Protocol.Tcp.Misc != nil { + entry.Misc["AutoKeyProxyIdProtocolTcp"] = oAutoKeyProxyId.Protocol.Tcp.Misc + } + if oAutoKeyProxyId.Protocol.Tcp.LocalPort != nil { + nestedAutoKeyProxyId.Protocol.Tcp.LocalPort = oAutoKeyProxyId.Protocol.Tcp.LocalPort + } + if oAutoKeyProxyId.Protocol.Tcp.RemotePort != nil { + nestedAutoKeyProxyId.Protocol.Tcp.RemotePort = oAutoKeyProxyId.Protocol.Tcp.RemotePort + } + } } if oAutoKeyProxyId.Name != "" { nestedAutoKeyProxyId.Name = oAutoKeyProxyId.Name @@ -1761,22 +1777,6 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { nestedAutoKey.ProxyIdV6 = append(nestedAutoKey.ProxyIdV6, nestedAutoKeyProxyIdV6) } } - if o.AutoKey.IkeGateway != nil { - nestedAutoKey.IkeGateway = []AutoKeyIkeGateway{} - for _, oAutoKeyIkeGateway := range o.AutoKey.IkeGateway { - nestedAutoKeyIkeGateway := AutoKeyIkeGateway{} - if oAutoKeyIkeGateway.Misc != nil { - entry.Misc["AutoKeyIkeGateway"] = oAutoKeyIkeGateway.Misc - } - if oAutoKeyIkeGateway.Name != "" { - nestedAutoKeyIkeGateway.Name = oAutoKeyIkeGateway.Name - } - nestedAutoKey.IkeGateway = append(nestedAutoKey.IkeGateway, nestedAutoKeyIkeGateway) - } - } - if o.AutoKey.IpsecCryptoProfile != nil { - nestedAutoKey.IpsecCryptoProfile = o.AutoKey.IpsecCryptoProfile - } } entry.AutoKey = nestedAutoKey @@ -1811,12 +1811,12 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.GlobalProtectSatellite.LocalAddress.Ip.Misc != nil { entry.Misc["GlobalProtectSatelliteLocalAddressIp"] = o.GlobalProtectSatellite.LocalAddress.Ip.Misc } - if o.GlobalProtectSatellite.LocalAddress.Ip.Ipv4 != nil { - nestedGlobalProtectSatellite.LocalAddress.Ip.Ipv4 = o.GlobalProtectSatellite.LocalAddress.Ip.Ipv4 - } if o.GlobalProtectSatellite.LocalAddress.Ip.Ipv6 != nil { nestedGlobalProtectSatellite.LocalAddress.Ip.Ipv6 = o.GlobalProtectSatellite.LocalAddress.Ip.Ipv6 } + if o.GlobalProtectSatellite.LocalAddress.Ip.Ipv4 != nil { + nestedGlobalProtectSatellite.LocalAddress.Ip.Ipv4 = o.GlobalProtectSatellite.LocalAddress.Ip.Ipv4 + } } } if o.GlobalProtectSatellite.PortalAddress != nil { @@ -1858,21 +1858,6 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.ManualKey.Misc != nil { entry.Misc["ManualKey"] = o.ManualKey.Misc } - if o.ManualKey.LocalAddress != nil { - nestedManualKey.LocalAddress = &ManualKeyLocalAddress{} - if o.ManualKey.LocalAddress.Misc != nil { - entry.Misc["ManualKeyLocalAddress"] = o.ManualKey.LocalAddress.Misc - } - if o.ManualKey.LocalAddress.Interface != nil { - nestedManualKey.LocalAddress.Interface = o.ManualKey.LocalAddress.Interface - } - if o.ManualKey.LocalAddress.Ip != nil { - nestedManualKey.LocalAddress.Ip = o.ManualKey.LocalAddress.Ip - } - if o.ManualKey.LocalAddress.FloatingIp != nil { - nestedManualKey.LocalAddress.FloatingIp = o.ManualKey.LocalAddress.FloatingIp - } - } if o.ManualKey.LocalSpi != nil { nestedManualKey.LocalSpi = o.ManualKey.LocalSpi } @@ -1888,11 +1873,44 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.ManualKey.RemoteSpi != nil { nestedManualKey.RemoteSpi = o.ManualKey.RemoteSpi } + if o.ManualKey.LocalAddress != nil { + nestedManualKey.LocalAddress = &ManualKeyLocalAddress{} + if o.ManualKey.LocalAddress.Misc != nil { + entry.Misc["ManualKeyLocalAddress"] = o.ManualKey.LocalAddress.Misc + } + if o.ManualKey.LocalAddress.Interface != nil { + nestedManualKey.LocalAddress.Interface = o.ManualKey.LocalAddress.Interface + } + if o.ManualKey.LocalAddress.Ip != nil { + nestedManualKey.LocalAddress.Ip = o.ManualKey.LocalAddress.Ip + } + if o.ManualKey.LocalAddress.FloatingIp != nil { + nestedManualKey.LocalAddress.FloatingIp = o.ManualKey.LocalAddress.FloatingIp + } + } if o.ManualKey.Ah != nil { nestedManualKey.Ah = &ManualKeyAh{} if o.ManualKey.Ah.Misc != nil { entry.Misc["ManualKeyAh"] = o.ManualKey.Ah.Misc } + if o.ManualKey.Ah.Md5 != nil { + nestedManualKey.Ah.Md5 = &ManualKeyAhMd5{} + if o.ManualKey.Ah.Md5.Misc != nil { + entry.Misc["ManualKeyAhMd5"] = o.ManualKey.Ah.Md5.Misc + } + if o.ManualKey.Ah.Md5.Key != nil { + nestedManualKey.Ah.Md5.Key = o.ManualKey.Ah.Md5.Key + } + } + if o.ManualKey.Ah.Sha1 != nil { + nestedManualKey.Ah.Sha1 = &ManualKeyAhSha1{} + if o.ManualKey.Ah.Sha1.Misc != nil { + entry.Misc["ManualKeyAhSha1"] = o.ManualKey.Ah.Sha1.Misc + } + if o.ManualKey.Ah.Sha1.Key != nil { + nestedManualKey.Ah.Sha1.Key = o.ManualKey.Ah.Sha1.Key + } + } if o.ManualKey.Ah.Sha256 != nil { nestedManualKey.Ah.Sha256 = &ManualKeyAhSha256{} if o.ManualKey.Ah.Sha256.Misc != nil { @@ -1920,56 +1938,17 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { nestedManualKey.Ah.Sha512.Key = o.ManualKey.Ah.Sha512.Key } } - if o.ManualKey.Ah.Md5 != nil { - nestedManualKey.Ah.Md5 = &ManualKeyAhMd5{} - if o.ManualKey.Ah.Md5.Misc != nil { - entry.Misc["ManualKeyAhMd5"] = o.ManualKey.Ah.Md5.Misc - } - if o.ManualKey.Ah.Md5.Key != nil { - nestedManualKey.Ah.Md5.Key = o.ManualKey.Ah.Md5.Key - } - } - if o.ManualKey.Ah.Sha1 != nil { - nestedManualKey.Ah.Sha1 = &ManualKeyAhSha1{} - if o.ManualKey.Ah.Sha1.Misc != nil { - entry.Misc["ManualKeyAhSha1"] = o.ManualKey.Ah.Sha1.Misc - } - if o.ManualKey.Ah.Sha1.Key != nil { - nestedManualKey.Ah.Sha1.Key = o.ManualKey.Ah.Sha1.Key - } - } } if o.ManualKey.Esp != nil { nestedManualKey.Esp = &ManualKeyEsp{} if o.ManualKey.Esp.Misc != nil { entry.Misc["ManualKeyEsp"] = o.ManualKey.Esp.Misc } - if o.ManualKey.Esp.Encryption != nil { - nestedManualKey.Esp.Encryption = &ManualKeyEspEncryption{} - if o.ManualKey.Esp.Encryption.Misc != nil { - entry.Misc["ManualKeyEspEncryption"] = o.ManualKey.Esp.Encryption.Misc - } - if o.ManualKey.Esp.Encryption.Algorithm != nil { - nestedManualKey.Esp.Encryption.Algorithm = o.ManualKey.Esp.Encryption.Algorithm - } - if o.ManualKey.Esp.Encryption.Key != nil { - nestedManualKey.Esp.Encryption.Key = o.ManualKey.Esp.Encryption.Key - } - } if o.ManualKey.Esp.Authentication != nil { nestedManualKey.Esp.Authentication = &ManualKeyEspAuthentication{} if o.ManualKey.Esp.Authentication.Misc != nil { entry.Misc["ManualKeyEspAuthentication"] = o.ManualKey.Esp.Authentication.Misc } - if o.ManualKey.Esp.Authentication.Sha512 != nil { - nestedManualKey.Esp.Authentication.Sha512 = &ManualKeyEspAuthenticationSha512{} - if o.ManualKey.Esp.Authentication.Sha512.Misc != nil { - entry.Misc["ManualKeyEspAuthenticationSha512"] = o.ManualKey.Esp.Authentication.Sha512.Misc - } - if o.ManualKey.Esp.Authentication.Sha512.Key != nil { - nestedManualKey.Esp.Authentication.Sha512.Key = o.ManualKey.Esp.Authentication.Sha512.Key - } - } if o.ManualKey.Esp.Authentication.Md5 != nil { nestedManualKey.Esp.Authentication.Md5 = &ManualKeyEspAuthenticationMd5{} if o.ManualKey.Esp.Authentication.Md5.Misc != nil { @@ -2012,6 +1991,27 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { nestedManualKey.Esp.Authentication.Sha384.Key = o.ManualKey.Esp.Authentication.Sha384.Key } } + if o.ManualKey.Esp.Authentication.Sha512 != nil { + nestedManualKey.Esp.Authentication.Sha512 = &ManualKeyEspAuthenticationSha512{} + if o.ManualKey.Esp.Authentication.Sha512.Misc != nil { + entry.Misc["ManualKeyEspAuthenticationSha512"] = o.ManualKey.Esp.Authentication.Sha512.Misc + } + if o.ManualKey.Esp.Authentication.Sha512.Key != nil { + nestedManualKey.Esp.Authentication.Sha512.Key = o.ManualKey.Esp.Authentication.Sha512.Key + } + } + } + if o.ManualKey.Esp.Encryption != nil { + nestedManualKey.Esp.Encryption = &ManualKeyEspEncryption{} + if o.ManualKey.Esp.Encryption.Misc != nil { + entry.Misc["ManualKeyEspEncryption"] = o.ManualKey.Esp.Encryption.Misc + } + if o.ManualKey.Esp.Encryption.Algorithm != nil { + nestedManualKey.Esp.Encryption.Algorithm = o.ManualKey.Esp.Encryption.Algorithm + } + if o.ManualKey.Esp.Encryption.Key != nil { + nestedManualKey.Esp.Encryption.Key = o.ManualKey.Esp.Encryption.Key + } } } } @@ -2068,22 +2068,6 @@ func (c *entryXmlContainer_11_0_2) Normalize() ([]*Entry, error) { if o.AutoKey.Misc != nil { entry.Misc["AutoKey"] = o.AutoKey.Misc } - if o.AutoKey.IkeGateway != nil { - nestedAutoKey.IkeGateway = []AutoKeyIkeGateway{} - for _, oAutoKeyIkeGateway := range o.AutoKey.IkeGateway { - nestedAutoKeyIkeGateway := AutoKeyIkeGateway{} - if oAutoKeyIkeGateway.Misc != nil { - entry.Misc["AutoKeyIkeGateway"] = oAutoKeyIkeGateway.Misc - } - if oAutoKeyIkeGateway.Name != "" { - nestedAutoKeyIkeGateway.Name = oAutoKeyIkeGateway.Name - } - nestedAutoKey.IkeGateway = append(nestedAutoKey.IkeGateway, nestedAutoKeyIkeGateway) - } - } - if o.AutoKey.IpsecCryptoProfile != nil { - nestedAutoKey.IpsecCryptoProfile = o.AutoKey.IpsecCryptoProfile - } if o.AutoKey.ProxyId != nil { nestedAutoKey.ProxyId = []AutoKeyProxyId{} for _, oAutoKeyProxyId := range o.AutoKey.ProxyId { @@ -2091,9 +2075,6 @@ func (c *entryXmlContainer_11_0_2) Normalize() ([]*Entry, error) { if oAutoKeyProxyId.Misc != nil { entry.Misc["AutoKeyProxyId"] = oAutoKeyProxyId.Misc } - if oAutoKeyProxyId.Local != nil { - nestedAutoKeyProxyId.Local = oAutoKeyProxyId.Local - } if oAutoKeyProxyId.Remote != nil { nestedAutoKeyProxyId.Remote = oAutoKeyProxyId.Remote } @@ -2102,21 +2083,6 @@ func (c *entryXmlContainer_11_0_2) Normalize() ([]*Entry, error) { if oAutoKeyProxyId.Protocol.Misc != nil { entry.Misc["AutoKeyProxyIdProtocol"] = oAutoKeyProxyId.Protocol.Misc } - if oAutoKeyProxyId.Protocol.Udp != nil { - nestedAutoKeyProxyId.Protocol.Udp = &AutoKeyProxyIdProtocolUdp{} - if oAutoKeyProxyId.Protocol.Udp.Misc != nil { - entry.Misc["AutoKeyProxyIdProtocolUdp"] = oAutoKeyProxyId.Protocol.Udp.Misc - } - if oAutoKeyProxyId.Protocol.Udp.LocalPort != nil { - nestedAutoKeyProxyId.Protocol.Udp.LocalPort = oAutoKeyProxyId.Protocol.Udp.LocalPort - } - if oAutoKeyProxyId.Protocol.Udp.RemotePort != nil { - nestedAutoKeyProxyId.Protocol.Udp.RemotePort = oAutoKeyProxyId.Protocol.Udp.RemotePort - } - } - if oAutoKeyProxyId.Protocol.Number != nil { - nestedAutoKeyProxyId.Protocol.Number = oAutoKeyProxyId.Protocol.Number - } if oAutoKeyProxyId.Protocol.Any != nil { nestedAutoKeyProxyId.Protocol.Any = &AutoKeyProxyIdProtocolAny{} if oAutoKeyProxyId.Protocol.Any.Misc != nil { @@ -2135,10 +2101,28 @@ func (c *entryXmlContainer_11_0_2) Normalize() ([]*Entry, error) { nestedAutoKeyProxyId.Protocol.Tcp.RemotePort = oAutoKeyProxyId.Protocol.Tcp.RemotePort } } + if oAutoKeyProxyId.Protocol.Udp != nil { + nestedAutoKeyProxyId.Protocol.Udp = &AutoKeyProxyIdProtocolUdp{} + if oAutoKeyProxyId.Protocol.Udp.Misc != nil { + entry.Misc["AutoKeyProxyIdProtocolUdp"] = oAutoKeyProxyId.Protocol.Udp.Misc + } + if oAutoKeyProxyId.Protocol.Udp.LocalPort != nil { + nestedAutoKeyProxyId.Protocol.Udp.LocalPort = oAutoKeyProxyId.Protocol.Udp.LocalPort + } + if oAutoKeyProxyId.Protocol.Udp.RemotePort != nil { + nestedAutoKeyProxyId.Protocol.Udp.RemotePort = oAutoKeyProxyId.Protocol.Udp.RemotePort + } + } + if oAutoKeyProxyId.Protocol.Number != nil { + nestedAutoKeyProxyId.Protocol.Number = oAutoKeyProxyId.Protocol.Number + } } if oAutoKeyProxyId.Name != "" { nestedAutoKeyProxyId.Name = oAutoKeyProxyId.Name } + if oAutoKeyProxyId.Local != nil { + nestedAutoKeyProxyId.Local = oAutoKeyProxyId.Local + } nestedAutoKey.ProxyId = append(nestedAutoKey.ProxyId, nestedAutoKeyProxyId) } } @@ -2186,12 +2170,12 @@ func (c *entryXmlContainer_11_0_2) Normalize() ([]*Entry, error) { if oAutoKeyProxyIdV6.Protocol.Udp.Misc != nil { entry.Misc["AutoKeyProxyIdV6ProtocolUdp"] = oAutoKeyProxyIdV6.Protocol.Udp.Misc } - if oAutoKeyProxyIdV6.Protocol.Udp.RemotePort != nil { - nestedAutoKeyProxyIdV6.Protocol.Udp.RemotePort = oAutoKeyProxyIdV6.Protocol.Udp.RemotePort - } if oAutoKeyProxyIdV6.Protocol.Udp.LocalPort != nil { nestedAutoKeyProxyIdV6.Protocol.Udp.LocalPort = oAutoKeyProxyIdV6.Protocol.Udp.LocalPort } + if oAutoKeyProxyIdV6.Protocol.Udp.RemotePort != nil { + nestedAutoKeyProxyIdV6.Protocol.Udp.RemotePort = oAutoKeyProxyIdV6.Protocol.Udp.RemotePort + } } } if oAutoKeyProxyIdV6.Name != "" { @@ -2200,6 +2184,22 @@ func (c *entryXmlContainer_11_0_2) Normalize() ([]*Entry, error) { nestedAutoKey.ProxyIdV6 = append(nestedAutoKey.ProxyIdV6, nestedAutoKeyProxyIdV6) } } + if o.AutoKey.IkeGateway != nil { + nestedAutoKey.IkeGateway = []AutoKeyIkeGateway{} + for _, oAutoKeyIkeGateway := range o.AutoKey.IkeGateway { + nestedAutoKeyIkeGateway := AutoKeyIkeGateway{} + if oAutoKeyIkeGateway.Misc != nil { + entry.Misc["AutoKeyIkeGateway"] = oAutoKeyIkeGateway.Misc + } + if oAutoKeyIkeGateway.Name != "" { + nestedAutoKeyIkeGateway.Name = oAutoKeyIkeGateway.Name + } + nestedAutoKey.IkeGateway = append(nestedAutoKey.IkeGateway, nestedAutoKeyIkeGateway) + } + } + if o.AutoKey.IpsecCryptoProfile != nil { + nestedAutoKey.IpsecCryptoProfile = o.AutoKey.IpsecCryptoProfile + } } entry.AutoKey = nestedAutoKey @@ -2249,12 +2249,12 @@ func (c *entryXmlContainer_11_0_2) Normalize() ([]*Entry, error) { if o.GlobalProtectSatellite.LocalAddress.Ip.Misc != nil { entry.Misc["GlobalProtectSatelliteLocalAddressIp"] = o.GlobalProtectSatellite.LocalAddress.Ip.Misc } - if o.GlobalProtectSatellite.LocalAddress.Ip.Ipv4 != nil { - nestedGlobalProtectSatellite.LocalAddress.Ip.Ipv4 = o.GlobalProtectSatellite.LocalAddress.Ip.Ipv4 - } if o.GlobalProtectSatellite.LocalAddress.Ip.Ipv6 != nil { nestedGlobalProtectSatellite.LocalAddress.Ip.Ipv6 = o.GlobalProtectSatellite.LocalAddress.Ip.Ipv6 } + if o.GlobalProtectSatellite.LocalAddress.Ip.Ipv4 != nil { + nestedGlobalProtectSatellite.LocalAddress.Ip.Ipv4 = o.GlobalProtectSatellite.LocalAddress.Ip.Ipv4 + } } } if o.GlobalProtectSatellite.PortalAddress != nil { @@ -2311,6 +2311,57 @@ func (c *entryXmlContainer_11_0_2) Normalize() ([]*Entry, error) { if o.ManualKey.RemoteSpi != nil { nestedManualKey.RemoteSpi = o.ManualKey.RemoteSpi } + if o.ManualKey.Ah != nil { + nestedManualKey.Ah = &ManualKeyAh{} + if o.ManualKey.Ah.Misc != nil { + entry.Misc["ManualKeyAh"] = o.ManualKey.Ah.Misc + } + if o.ManualKey.Ah.Md5 != nil { + nestedManualKey.Ah.Md5 = &ManualKeyAhMd5{} + if o.ManualKey.Ah.Md5.Misc != nil { + entry.Misc["ManualKeyAhMd5"] = o.ManualKey.Ah.Md5.Misc + } + if o.ManualKey.Ah.Md5.Key != nil { + nestedManualKey.Ah.Md5.Key = o.ManualKey.Ah.Md5.Key + } + } + if o.ManualKey.Ah.Sha1 != nil { + nestedManualKey.Ah.Sha1 = &ManualKeyAhSha1{} + if o.ManualKey.Ah.Sha1.Misc != nil { + entry.Misc["ManualKeyAhSha1"] = o.ManualKey.Ah.Sha1.Misc + } + if o.ManualKey.Ah.Sha1.Key != nil { + nestedManualKey.Ah.Sha1.Key = o.ManualKey.Ah.Sha1.Key + } + } + if o.ManualKey.Ah.Sha256 != nil { + nestedManualKey.Ah.Sha256 = &ManualKeyAhSha256{} + if o.ManualKey.Ah.Sha256.Misc != nil { + entry.Misc["ManualKeyAhSha256"] = o.ManualKey.Ah.Sha256.Misc + } + if o.ManualKey.Ah.Sha256.Key != nil { + nestedManualKey.Ah.Sha256.Key = o.ManualKey.Ah.Sha256.Key + } + } + if o.ManualKey.Ah.Sha384 != nil { + nestedManualKey.Ah.Sha384 = &ManualKeyAhSha384{} + if o.ManualKey.Ah.Sha384.Misc != nil { + entry.Misc["ManualKeyAhSha384"] = o.ManualKey.Ah.Sha384.Misc + } + if o.ManualKey.Ah.Sha384.Key != nil { + nestedManualKey.Ah.Sha384.Key = o.ManualKey.Ah.Sha384.Key + } + } + if o.ManualKey.Ah.Sha512 != nil { + nestedManualKey.Ah.Sha512 = &ManualKeyAhSha512{} + if o.ManualKey.Ah.Sha512.Misc != nil { + entry.Misc["ManualKeyAhSha512"] = o.ManualKey.Ah.Sha512.Misc + } + if o.ManualKey.Ah.Sha512.Key != nil { + nestedManualKey.Ah.Sha512.Key = o.ManualKey.Ah.Sha512.Key + } + } + } if o.ManualKey.Esp != nil { nestedManualKey.Esp = &ManualKeyEsp{} if o.ManualKey.Esp.Misc != nil { @@ -2386,57 +2437,6 @@ func (c *entryXmlContainer_11_0_2) Normalize() ([]*Entry, error) { } } } - if o.ManualKey.Ah != nil { - nestedManualKey.Ah = &ManualKeyAh{} - if o.ManualKey.Ah.Misc != nil { - entry.Misc["ManualKeyAh"] = o.ManualKey.Ah.Misc - } - if o.ManualKey.Ah.Sha256 != nil { - nestedManualKey.Ah.Sha256 = &ManualKeyAhSha256{} - if o.ManualKey.Ah.Sha256.Misc != nil { - entry.Misc["ManualKeyAhSha256"] = o.ManualKey.Ah.Sha256.Misc - } - if o.ManualKey.Ah.Sha256.Key != nil { - nestedManualKey.Ah.Sha256.Key = o.ManualKey.Ah.Sha256.Key - } - } - if o.ManualKey.Ah.Sha384 != nil { - nestedManualKey.Ah.Sha384 = &ManualKeyAhSha384{} - if o.ManualKey.Ah.Sha384.Misc != nil { - entry.Misc["ManualKeyAhSha384"] = o.ManualKey.Ah.Sha384.Misc - } - if o.ManualKey.Ah.Sha384.Key != nil { - nestedManualKey.Ah.Sha384.Key = o.ManualKey.Ah.Sha384.Key - } - } - if o.ManualKey.Ah.Sha512 != nil { - nestedManualKey.Ah.Sha512 = &ManualKeyAhSha512{} - if o.ManualKey.Ah.Sha512.Misc != nil { - entry.Misc["ManualKeyAhSha512"] = o.ManualKey.Ah.Sha512.Misc - } - if o.ManualKey.Ah.Sha512.Key != nil { - nestedManualKey.Ah.Sha512.Key = o.ManualKey.Ah.Sha512.Key - } - } - if o.ManualKey.Ah.Md5 != nil { - nestedManualKey.Ah.Md5 = &ManualKeyAhMd5{} - if o.ManualKey.Ah.Md5.Misc != nil { - entry.Misc["ManualKeyAhMd5"] = o.ManualKey.Ah.Md5.Misc - } - if o.ManualKey.Ah.Md5.Key != nil { - nestedManualKey.Ah.Md5.Key = o.ManualKey.Ah.Md5.Key - } - } - if o.ManualKey.Ah.Sha1 != nil { - nestedManualKey.Ah.Sha1 = &ManualKeyAhSha1{} - if o.ManualKey.Ah.Sha1.Misc != nil { - entry.Misc["ManualKeyAhSha1"] = o.ManualKey.Ah.Sha1.Misc - } - if o.ManualKey.Ah.Sha1.Key != nil { - nestedManualKey.Ah.Sha1.Key = o.ManualKey.Ah.Sha1.Key - } - } - } } entry.ManualKey = nestedManualKey @@ -2508,348 +2508,250 @@ func matchTunnelMonitor(a *TunnelMonitor, b *TunnelMonitor) bool { } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.ProxyId, b.ProxyId) { + if !util.StringsMatch(a.DestinationIp, b.DestinationIp) { return false } - if !util.StringsMatch(a.TunnelMonitorProfile, b.TunnelMonitorProfile) { + if !util.BoolsMatch(a.Enable, b.Enable) { return false } - if !util.StringsMatch(a.DestinationIp, b.DestinationIp) { + if !util.StringsMatch(a.ProxyId, b.ProxyId) { return false } - if !util.BoolsMatch(a.Enable, b.Enable) { + if !util.StringsMatch(a.TunnelMonitorProfile, b.TunnelMonitorProfile) { return false } return true } -func matchAutoKeyProxyIdV6ProtocolAny(a *AutoKeyProxyIdV6ProtocolAny, b *AutoKeyProxyIdV6ProtocolAny) bool { +func matchGlobalProtectSatelliteExternalCa(a *GlobalProtectSatelliteExternalCa, b *GlobalProtectSatelliteExternalCa) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } + if !util.StringsMatch(a.CertificateProfile, b.CertificateProfile) { + return false + } + if !util.StringsMatch(a.LocalCertificate, b.LocalCertificate) { + return false + } return true } -func matchAutoKeyProxyIdV6ProtocolTcp(a *AutoKeyProxyIdV6ProtocolTcp, b *AutoKeyProxyIdV6ProtocolTcp) bool { +func matchGlobalProtectSatelliteLocalAddressFloatingIp(a *GlobalProtectSatelliteLocalAddressFloatingIp, b *GlobalProtectSatelliteLocalAddressFloatingIp) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.Ints64Match(a.LocalPort, b.LocalPort) { + if !util.StringsMatch(a.Ipv4, b.Ipv4) { return false } - if !util.Ints64Match(a.RemotePort, b.RemotePort) { + if !util.StringsMatch(a.Ipv6, b.Ipv6) { return false } return true } -func matchAutoKeyProxyIdV6ProtocolUdp(a *AutoKeyProxyIdV6ProtocolUdp, b *AutoKeyProxyIdV6ProtocolUdp) bool { +func matchGlobalProtectSatelliteLocalAddressIp(a *GlobalProtectSatelliteLocalAddressIp, b *GlobalProtectSatelliteLocalAddressIp) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.Ints64Match(a.LocalPort, b.LocalPort) { + if !util.StringsMatch(a.Ipv4, b.Ipv4) { return false } - if !util.Ints64Match(a.RemotePort, b.RemotePort) { + if !util.StringsMatch(a.Ipv6, b.Ipv6) { return false } return true } -func matchAutoKeyProxyIdV6Protocol(a *AutoKeyProxyIdV6Protocol, b *AutoKeyProxyIdV6Protocol) bool { +func matchGlobalProtectSatelliteLocalAddress(a *GlobalProtectSatelliteLocalAddress, b *GlobalProtectSatelliteLocalAddress) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.Ints64Match(a.Number, b.Number) { - return false - } - if !matchAutoKeyProxyIdV6ProtocolAny(a.Any, b.Any) { + if !util.StringsMatch(a.Interface, b.Interface) { return false } - if !matchAutoKeyProxyIdV6ProtocolTcp(a.Tcp, b.Tcp) { + if !matchGlobalProtectSatelliteLocalAddressFloatingIp(a.FloatingIp, b.FloatingIp) { return false } - if !matchAutoKeyProxyIdV6ProtocolUdp(a.Udp, b.Udp) { + if !matchGlobalProtectSatelliteLocalAddressIp(a.Ip, b.Ip) { return false } return true } -func matchAutoKeyProxyIdV6(a []AutoKeyProxyIdV6, b []AutoKeyProxyIdV6) bool { +func matchGlobalProtectSatellitePublishConnectedRoutes(a *GlobalProtectSatellitePublishConnectedRoutes, b *GlobalProtectSatellitePublishConnectedRoutes) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - for _, a := range a { - for _, b := range b { - if !util.StringsEqual(a.Name, b.Name) { - return false - } - if !util.StringsMatch(a.Local, b.Local) { - return false - } - if !util.StringsMatch(a.Remote, b.Remote) { - return false - } - if !matchAutoKeyProxyIdV6Protocol(a.Protocol, b.Protocol) { - return false - } - } + if !util.BoolsMatch(a.Enable, b.Enable) { + return false } return true } -func matchAutoKeyIkeGateway(a []AutoKeyIkeGateway, b []AutoKeyIkeGateway) bool { +func matchGlobalProtectSatellite(a *GlobalProtectSatellite, b *GlobalProtectSatellite) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - for _, a := range a { - for _, b := range b { - if !util.StringsEqual(a.Name, b.Name) { - return false - } - } + if !matchGlobalProtectSatelliteExternalCa(a.ExternalCa, b.ExternalCa) { + return false } - return true -} -func matchAutoKeyProxyIdProtocolAny(a *AutoKeyProxyIdProtocolAny, b *AutoKeyProxyIdProtocolAny) bool { - if a == nil && b != nil || a != nil && b == nil { + if !util.BoolsMatch(a.Ipv6Preferred, b.Ipv6Preferred) { return false - } else if a == nil && b == nil { - return true } - return true -} -func matchAutoKeyProxyIdProtocolTcp(a *AutoKeyProxyIdProtocolTcp, b *AutoKeyProxyIdProtocolTcp) bool { - if a == nil && b != nil || a != nil && b == nil { + if !matchGlobalProtectSatelliteLocalAddress(a.LocalAddress, b.LocalAddress) { return false - } else if a == nil && b == nil { - return true } - if !util.Ints64Match(a.LocalPort, b.LocalPort) { + if !util.StringsMatch(a.PortalAddress, b.PortalAddress) { return false } - if !util.Ints64Match(a.RemotePort, b.RemotePort) { + if !matchGlobalProtectSatellitePublishConnectedRoutes(a.PublishConnectedRoutes, b.PublishConnectedRoutes) { + return false + } + if !util.OrderedListsMatch(a.PublishRoutes, b.PublishRoutes) { return false } return true } -func matchAutoKeyProxyIdProtocolUdp(a *AutoKeyProxyIdProtocolUdp, b *AutoKeyProxyIdProtocolUdp) bool { +func matchManualKeyLocalAddress(a *ManualKeyLocalAddress, b *ManualKeyLocalAddress) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.Ints64Match(a.LocalPort, b.LocalPort) { + if !util.StringsMatch(a.Interface, b.Interface) { return false } - if !util.Ints64Match(a.RemotePort, b.RemotePort) { - return false - } - return true -} -func matchAutoKeyProxyIdProtocol(a *AutoKeyProxyIdProtocol, b *AutoKeyProxyIdProtocol) bool { - if a == nil && b != nil || a != nil && b == nil { - return false - } else if a == nil && b == nil { - return true - } - if !util.Ints64Match(a.Number, b.Number) { - return false - } - if !matchAutoKeyProxyIdProtocolAny(a.Any, b.Any) { - return false - } - if !matchAutoKeyProxyIdProtocolTcp(a.Tcp, b.Tcp) { + if !util.StringsMatch(a.Ip, b.Ip) { return false } - if !matchAutoKeyProxyIdProtocolUdp(a.Udp, b.Udp) { + if !util.StringsMatch(a.FloatingIp, b.FloatingIp) { return false } return true } -func matchAutoKeyProxyId(a []AutoKeyProxyId, b []AutoKeyProxyId) bool { - if a == nil && b != nil || a != nil && b == nil { - return false - } else if a == nil && b == nil { - return true - } - for _, a := range a { - for _, b := range b { - if !util.StringsMatch(a.Local, b.Local) { - return false - } - if !util.StringsMatch(a.Remote, b.Remote) { - return false - } - if !matchAutoKeyProxyIdProtocol(a.Protocol, b.Protocol) { - return false - } - if !util.StringsEqual(a.Name, b.Name) { - return false - } - } - } - return true -} -func matchAutoKey(a *AutoKey, b *AutoKey) bool { +func matchManualKeyPeerAddress(a *ManualKeyPeerAddress, b *ManualKeyPeerAddress) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchAutoKeyProxyId(a.ProxyId, b.ProxyId) { - return false - } - if !matchAutoKeyProxyIdV6(a.ProxyIdV6, b.ProxyIdV6) { - return false - } - if !matchAutoKeyIkeGateway(a.IkeGateway, b.IkeGateway) { - return false - } - if !util.StringsMatch(a.IpsecCryptoProfile, b.IpsecCryptoProfile) { + if !util.StringsMatch(a.Ip, b.Ip) { return false } return true } -func matchGlobalProtectSatelliteLocalAddressIp(a *GlobalProtectSatelliteLocalAddressIp, b *GlobalProtectSatelliteLocalAddressIp) bool { +func matchManualKeyAhMd5(a *ManualKeyAhMd5, b *ManualKeyAhMd5) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Ipv4, b.Ipv4) { - return false - } - if !util.StringsMatch(a.Ipv6, b.Ipv6) { + if !util.StringsMatch(a.Key, b.Key) { return false } return true } -func matchGlobalProtectSatelliteLocalAddressFloatingIp(a *GlobalProtectSatelliteLocalAddressFloatingIp, b *GlobalProtectSatelliteLocalAddressFloatingIp) bool { +func matchManualKeyAhSha1(a *ManualKeyAhSha1, b *ManualKeyAhSha1) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Ipv4, b.Ipv4) { - return false - } - if !util.StringsMatch(a.Ipv6, b.Ipv6) { + if !util.StringsMatch(a.Key, b.Key) { return false } return true } -func matchGlobalProtectSatelliteLocalAddress(a *GlobalProtectSatelliteLocalAddress, b *GlobalProtectSatelliteLocalAddress) bool { +func matchManualKeyAhSha256(a *ManualKeyAhSha256, b *ManualKeyAhSha256) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Interface, b.Interface) { - return false - } - if !matchGlobalProtectSatelliteLocalAddressFloatingIp(a.FloatingIp, b.FloatingIp) { - return false - } - if !matchGlobalProtectSatelliteLocalAddressIp(a.Ip, b.Ip) { + if !util.StringsMatch(a.Key, b.Key) { return false } return true } -func matchGlobalProtectSatellitePublishConnectedRoutes(a *GlobalProtectSatellitePublishConnectedRoutes, b *GlobalProtectSatellitePublishConnectedRoutes) bool { +func matchManualKeyAhSha384(a *ManualKeyAhSha384, b *ManualKeyAhSha384) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.BoolsMatch(a.Enable, b.Enable) { + if !util.StringsMatch(a.Key, b.Key) { return false } return true } -func matchGlobalProtectSatelliteExternalCa(a *GlobalProtectSatelliteExternalCa, b *GlobalProtectSatelliteExternalCa) bool { +func matchManualKeyAhSha512(a *ManualKeyAhSha512, b *ManualKeyAhSha512) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.CertificateProfile, b.CertificateProfile) { - return false - } - if !util.StringsMatch(a.LocalCertificate, b.LocalCertificate) { + if !util.StringsMatch(a.Key, b.Key) { return false } return true } -func matchGlobalProtectSatellite(a *GlobalProtectSatellite, b *GlobalProtectSatellite) bool { +func matchManualKeyAh(a *ManualKeyAh, b *ManualKeyAh) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchGlobalProtectSatelliteExternalCa(a.ExternalCa, b.ExternalCa) { - return false - } - if !util.BoolsMatch(a.Ipv6Preferred, b.Ipv6Preferred) { + if !matchManualKeyAhMd5(a.Md5, b.Md5) { return false } - if !matchGlobalProtectSatelliteLocalAddress(a.LocalAddress, b.LocalAddress) { + if !matchManualKeyAhSha1(a.Sha1, b.Sha1) { return false } - if !util.StringsMatch(a.PortalAddress, b.PortalAddress) { + if !matchManualKeyAhSha256(a.Sha256, b.Sha256) { return false } - if !matchGlobalProtectSatellitePublishConnectedRoutes(a.PublishConnectedRoutes, b.PublishConnectedRoutes) { + if !matchManualKeyAhSha384(a.Sha384, b.Sha384) { return false } - if !util.OrderedListsMatch(a.PublishRoutes, b.PublishRoutes) { + if !matchManualKeyAhSha512(a.Sha512, b.Sha512) { return false } return true } -func matchManualKeyLocalAddress(a *ManualKeyLocalAddress, b *ManualKeyLocalAddress) bool { +func matchManualKeyEspAuthenticationSha256(a *ManualKeyEspAuthenticationSha256, b *ManualKeyEspAuthenticationSha256) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Interface, b.Interface) { - return false - } - if !util.StringsMatch(a.FloatingIp, b.FloatingIp) { - return false - } - if !util.StringsMatch(a.Ip, b.Ip) { + if !util.StringsMatch(a.Key, b.Key) { return false } return true } -func matchManualKeyPeerAddress(a *ManualKeyPeerAddress, b *ManualKeyPeerAddress) bool { +func matchManualKeyEspAuthenticationSha384(a *ManualKeyEspAuthenticationSha384, b *ManualKeyEspAuthenticationSha384) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Ip, b.Ip) { + if !util.StringsMatch(a.Key, b.Key) { return false } return true } -func matchManualKeyEspEncryption(a *ManualKeyEspEncryption, b *ManualKeyEspEncryption) bool { +func matchManualKeyEspAuthenticationSha512(a *ManualKeyEspAuthenticationSha512, b *ManualKeyEspAuthenticationSha512) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Algorithm, b.Algorithm) { - return false - } if !util.StringsMatch(a.Key, b.Key) { return false } @@ -2885,179 +2787,277 @@ func matchManualKeyEspAuthenticationSha1(a *ManualKeyEspAuthenticationSha1, b *M } return true } -func matchManualKeyEspAuthenticationSha256(a *ManualKeyEspAuthenticationSha256, b *ManualKeyEspAuthenticationSha256) bool { +func matchManualKeyEspAuthentication(a *ManualKeyEspAuthentication, b *ManualKeyEspAuthentication) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Key, b.Key) { + if !matchManualKeyEspAuthenticationSha256(a.Sha256, b.Sha256) { + return false + } + if !matchManualKeyEspAuthenticationSha384(a.Sha384, b.Sha384) { + return false + } + if !matchManualKeyEspAuthenticationSha512(a.Sha512, b.Sha512) { + return false + } + if !matchManualKeyEspAuthenticationMd5(a.Md5, b.Md5) { + return false + } + if !matchManualKeyEspAuthenticationNone(a.None, b.None) { + return false + } + if !matchManualKeyEspAuthenticationSha1(a.Sha1, b.Sha1) { return false } return true } -func matchManualKeyEspAuthenticationSha384(a *ManualKeyEspAuthenticationSha384, b *ManualKeyEspAuthenticationSha384) bool { +func matchManualKeyEspEncryption(a *ManualKeyEspEncryption, b *ManualKeyEspEncryption) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } + if !util.StringsMatch(a.Algorithm, b.Algorithm) { + return false + } if !util.StringsMatch(a.Key, b.Key) { return false } return true } -func matchManualKeyEspAuthenticationSha512(a *ManualKeyEspAuthenticationSha512, b *ManualKeyEspAuthenticationSha512) bool { +func matchManualKeyEsp(a *ManualKeyEsp, b *ManualKeyEsp) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Key, b.Key) { + if !matchManualKeyEspAuthentication(a.Authentication, b.Authentication) { + return false + } + if !matchManualKeyEspEncryption(a.Encryption, b.Encryption) { return false } return true } -func matchManualKeyEspAuthentication(a *ManualKeyEspAuthentication, b *ManualKeyEspAuthentication) bool { +func matchManualKey(a *ManualKey, b *ManualKey) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchManualKeyEspAuthenticationMd5(a.Md5, b.Md5) { + if !matchManualKeyLocalAddress(a.LocalAddress, b.LocalAddress) { return false } - if !matchManualKeyEspAuthenticationNone(a.None, b.None) { + if !util.StringsMatch(a.LocalSpi, b.LocalSpi) { return false } - if !matchManualKeyEspAuthenticationSha1(a.Sha1, b.Sha1) { + if !matchManualKeyPeerAddress(a.PeerAddress, b.PeerAddress) { return false } - if !matchManualKeyEspAuthenticationSha256(a.Sha256, b.Sha256) { + if !util.StringsMatch(a.RemoteSpi, b.RemoteSpi) { return false } - if !matchManualKeyEspAuthenticationSha384(a.Sha384, b.Sha384) { + if !matchManualKeyAh(a.Ah, b.Ah) { return false } - if !matchManualKeyEspAuthenticationSha512(a.Sha512, b.Sha512) { + if !matchManualKeyEsp(a.Esp, b.Esp) { return false } return true } -func matchManualKeyEsp(a *ManualKeyEsp, b *ManualKeyEsp) bool { +func matchAutoKeyIkeGateway(a []AutoKeyIkeGateway, b []AutoKeyIkeGateway) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchManualKeyEspAuthentication(a.Authentication, b.Authentication) { + for _, a := range a { + for _, b := range b { + if !util.StringsEqual(a.Name, b.Name) { + return false + } + } + } + return true +} +func matchAutoKeyProxyIdProtocolUdp(a *AutoKeyProxyIdProtocolUdp, b *AutoKeyProxyIdProtocolUdp) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } - if !matchManualKeyEspEncryption(a.Encryption, b.Encryption) { + if !util.Ints64Match(a.LocalPort, b.LocalPort) { + return false + } + if !util.Ints64Match(a.RemotePort, b.RemotePort) { return false } return true } -func matchManualKeyAhSha1(a *ManualKeyAhSha1, b *ManualKeyAhSha1) bool { +func matchAutoKeyProxyIdProtocolAny(a *AutoKeyProxyIdProtocolAny, b *AutoKeyProxyIdProtocolAny) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Key, b.Key) { - return false - } return true } -func matchManualKeyAhSha256(a *ManualKeyAhSha256, b *ManualKeyAhSha256) bool { +func matchAutoKeyProxyIdProtocolTcp(a *AutoKeyProxyIdProtocolTcp, b *AutoKeyProxyIdProtocolTcp) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Key, b.Key) { + if !util.Ints64Match(a.LocalPort, b.LocalPort) { + return false + } + if !util.Ints64Match(a.RemotePort, b.RemotePort) { return false } return true } -func matchManualKeyAhSha384(a *ManualKeyAhSha384, b *ManualKeyAhSha384) bool { +func matchAutoKeyProxyIdProtocol(a *AutoKeyProxyIdProtocol, b *AutoKeyProxyIdProtocol) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Key, b.Key) { + if !matchAutoKeyProxyIdProtocolAny(a.Any, b.Any) { + return false + } + if !matchAutoKeyProxyIdProtocolTcp(a.Tcp, b.Tcp) { + return false + } + if !matchAutoKeyProxyIdProtocolUdp(a.Udp, b.Udp) { + return false + } + if !util.Ints64Match(a.Number, b.Number) { return false } return true } -func matchManualKeyAhSha512(a *ManualKeyAhSha512, b *ManualKeyAhSha512) bool { +func matchAutoKeyProxyId(a []AutoKeyProxyId, b []AutoKeyProxyId) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Key, b.Key) { + for _, a := range a { + for _, b := range b { + if !matchAutoKeyProxyIdProtocol(a.Protocol, b.Protocol) { + return false + } + if !util.StringsEqual(a.Name, b.Name) { + return false + } + if !util.StringsMatch(a.Local, b.Local) { + return false + } + if !util.StringsMatch(a.Remote, b.Remote) { + return false + } + } + } + return true +} +func matchAutoKeyProxyIdV6ProtocolAny(a *AutoKeyProxyIdV6ProtocolAny, b *AutoKeyProxyIdV6ProtocolAny) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } return true } -func matchManualKeyAhMd5(a *ManualKeyAhMd5, b *ManualKeyAhMd5) bool { +func matchAutoKeyProxyIdV6ProtocolTcp(a *AutoKeyProxyIdV6ProtocolTcp, b *AutoKeyProxyIdV6ProtocolTcp) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Key, b.Key) { + if !util.Ints64Match(a.LocalPort, b.LocalPort) { + return false + } + if !util.Ints64Match(a.RemotePort, b.RemotePort) { return false } return true } -func matchManualKeyAh(a *ManualKeyAh, b *ManualKeyAh) bool { +func matchAutoKeyProxyIdV6ProtocolUdp(a *AutoKeyProxyIdV6ProtocolUdp, b *AutoKeyProxyIdV6ProtocolUdp) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchManualKeyAhMd5(a.Md5, b.Md5) { + if !util.Ints64Match(a.LocalPort, b.LocalPort) { return false } - if !matchManualKeyAhSha1(a.Sha1, b.Sha1) { + if !util.Ints64Match(a.RemotePort, b.RemotePort) { return false } - if !matchManualKeyAhSha256(a.Sha256, b.Sha256) { + return true +} +func matchAutoKeyProxyIdV6Protocol(a *AutoKeyProxyIdV6Protocol, b *AutoKeyProxyIdV6Protocol) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } - if !matchManualKeyAhSha384(a.Sha384, b.Sha384) { + if !util.Ints64Match(a.Number, b.Number) { return false } - if !matchManualKeyAhSha512(a.Sha512, b.Sha512) { + if !matchAutoKeyProxyIdV6ProtocolAny(a.Any, b.Any) { + return false + } + if !matchAutoKeyProxyIdV6ProtocolTcp(a.Tcp, b.Tcp) { + return false + } + if !matchAutoKeyProxyIdV6ProtocolUdp(a.Udp, b.Udp) { return false } return true } -func matchManualKey(a *ManualKey, b *ManualKey) bool { +func matchAutoKeyProxyIdV6(a []AutoKeyProxyIdV6, b []AutoKeyProxyIdV6) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchManualKeyLocalAddress(a.LocalAddress, b.LocalAddress) { - return false + for _, a := range a { + for _, b := range b { + if !util.StringsMatch(a.Local, b.Local) { + return false + } + if !util.StringsMatch(a.Remote, b.Remote) { + return false + } + if !matchAutoKeyProxyIdV6Protocol(a.Protocol, b.Protocol) { + return false + } + if !util.StringsEqual(a.Name, b.Name) { + return false + } + } } - if !util.StringsMatch(a.LocalSpi, b.LocalSpi) { + return true +} +func matchAutoKey(a *AutoKey, b *AutoKey) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } - if !matchManualKeyPeerAddress(a.PeerAddress, b.PeerAddress) { + if !matchAutoKeyIkeGateway(a.IkeGateway, b.IkeGateway) { return false } - if !util.StringsMatch(a.RemoteSpi, b.RemoteSpi) { + if !util.StringsMatch(a.IpsecCryptoProfile, b.IpsecCryptoProfile) { return false } - if !matchManualKeyAh(a.Ah, b.Ah) { + if !matchAutoKeyProxyId(a.ProxyId, b.ProxyId) { return false } - if !matchManualKeyEsp(a.Esp, b.Esp) { + if !matchAutoKeyProxyIdV6(a.ProxyIdV6, b.ProxyIdV6) { return false } return true diff --git a/network/virtual_router/entry.go b/network/virtual_router/entry.go index aa7db07..3d1308f 100644 --- a/network/virtual_router/entry.go +++ b/network/virtual_router/entry.go @@ -3034,29 +3034,29 @@ func specifyEntry(o *Entry) (any, error) { if o.AdminDists.OspfExt != nil { nestedAdminDists.OspfExt = o.AdminDists.OspfExt } - if o.AdminDists.OspfInt != nil { - nestedAdminDists.OspfInt = o.AdminDists.OspfInt - } if o.AdminDists.Ospfv3Ext != nil { nestedAdminDists.Ospfv3Ext = o.AdminDists.Ospfv3Ext } + if o.AdminDists.Ospfv3Int != nil { + nestedAdminDists.Ospfv3Int = o.AdminDists.Ospfv3Int + } if o.AdminDists.Rip != nil { nestedAdminDists.Rip = o.AdminDists.Rip } - if o.AdminDists.StaticIpv6 != nil { - nestedAdminDists.StaticIpv6 = o.AdminDists.StaticIpv6 + if o.AdminDists.Ebgp != nil { + nestedAdminDists.Ebgp = o.AdminDists.Ebgp } if o.AdminDists.Ibgp != nil { nestedAdminDists.Ibgp = o.AdminDists.Ibgp } - if o.AdminDists.Ospfv3Int != nil { - nestedAdminDists.Ospfv3Int = o.AdminDists.Ospfv3Int + if o.AdminDists.OspfInt != nil { + nestedAdminDists.OspfInt = o.AdminDists.OspfInt } if o.AdminDists.Static != nil { nestedAdminDists.Static = o.AdminDists.Static } - if o.AdminDists.Ebgp != nil { - nestedAdminDists.Ebgp = o.AdminDists.Ebgp + if o.AdminDists.StaticIpv6 != nil { + nestedAdminDists.StaticIpv6 = o.AdminDists.StaticIpv6 } } entry.AdminDists = nestedAdminDists @@ -3067,12 +3067,6 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["Ecmp"]; ok { nestedEcmp.Misc = o.Misc["Ecmp"] } - if o.Ecmp.StrictSourcePath != nil { - nestedEcmp.StrictSourcePath = util.YesNo(o.Ecmp.StrictSourcePath, nil) - } - if o.Ecmp.SymmetricReturn != nil { - nestedEcmp.SymmetricReturn = util.YesNo(o.Ecmp.SymmetricReturn, nil) - } if o.Ecmp.Algorithm != nil { nestedEcmp.Algorithm = &EcmpAlgorithmXml{} if _, ok := o.Misc["EcmpAlgorithm"]; ok { @@ -3134,6 +3128,12 @@ func specifyEntry(o *Entry) (any, error) { if o.Ecmp.MaxPath != nil { nestedEcmp.MaxPath = o.Ecmp.MaxPath } + if o.Ecmp.StrictSourcePath != nil { + nestedEcmp.StrictSourcePath = util.YesNo(o.Ecmp.StrictSourcePath, nil) + } + if o.Ecmp.SymmetricReturn != nil { + nestedEcmp.SymmetricReturn = util.YesNo(o.Ecmp.SymmetricReturn, nil) + } } entry.Ecmp = nestedEcmp @@ -3144,28 +3144,6 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["Multicast"]; ok { nestedMulticast.Misc = o.Misc["Multicast"] } - if o.Multicast.SsmAddressSpace != nil { - nestedMulticast.SsmAddressSpace = []MulticastSsmAddressSpaceXml{} - for _, oMulticastSsmAddressSpace := range o.Multicast.SsmAddressSpace { - nestedMulticastSsmAddressSpace := MulticastSsmAddressSpaceXml{} - if _, ok := o.Misc["MulticastSsmAddressSpace"]; ok { - nestedMulticastSsmAddressSpace.Misc = o.Misc["MulticastSsmAddressSpace"] - } - if oMulticastSsmAddressSpace.GroupAddress != nil { - nestedMulticastSsmAddressSpace.GroupAddress = oMulticastSsmAddressSpace.GroupAddress - } - if oMulticastSsmAddressSpace.Included != nil { - nestedMulticastSsmAddressSpace.Included = util.YesNo(oMulticastSsmAddressSpace.Included, nil) - } - if oMulticastSsmAddressSpace.Name != "" { - nestedMulticastSsmAddressSpace.Name = oMulticastSsmAddressSpace.Name - } - nestedMulticast.SsmAddressSpace = append(nestedMulticast.SsmAddressSpace, nestedMulticastSsmAddressSpace) - } - } - if o.Multicast.Enable != nil { - nestedMulticast.Enable = util.YesNo(o.Multicast.Enable, nil) - } if o.Multicast.InterfaceGroup != nil { nestedMulticast.InterfaceGroup = []MulticastInterfaceGroupXml{} for _, oMulticastInterfaceGroup := range o.Multicast.InterfaceGroup { @@ -3173,9 +3151,6 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["MulticastInterfaceGroup"]; ok { nestedMulticastInterfaceGroup.Misc = o.Misc["MulticastInterfaceGroup"] } - if oMulticastInterfaceGroup.Interface != nil { - nestedMulticastInterfaceGroup.Interface = util.StrToMem(oMulticastInterfaceGroup.Interface) - } if oMulticastInterfaceGroup.GroupPermission != nil { nestedMulticastInterfaceGroup.GroupPermission = &MulticastInterfaceGroupGroupPermissionXml{} if _, ok := o.Misc["MulticastInterfaceGroupGroupPermission"]; ok { @@ -3228,36 +3203,36 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["MulticastInterfaceGroupIgmp"]; ok { nestedMulticastInterfaceGroup.Igmp.Misc = o.Misc["MulticastInterfaceGroupIgmp"] } - if oMulticastInterfaceGroup.Igmp.Enable != nil { - nestedMulticastInterfaceGroup.Igmp.Enable = util.YesNo(oMulticastInterfaceGroup.Igmp.Enable, nil) + if oMulticastInterfaceGroup.Igmp.RouterAlertPolicing != nil { + nestedMulticastInterfaceGroup.Igmp.RouterAlertPolicing = util.YesNo(oMulticastInterfaceGroup.Igmp.RouterAlertPolicing, nil) } if oMulticastInterfaceGroup.Igmp.Version != nil { nestedMulticastInterfaceGroup.Igmp.Version = oMulticastInterfaceGroup.Igmp.Version } - if oMulticastInterfaceGroup.Igmp.LastMemberQueryInterval != nil { - nestedMulticastInterfaceGroup.Igmp.LastMemberQueryInterval = oMulticastInterfaceGroup.Igmp.LastMemberQueryInterval - } - if oMulticastInterfaceGroup.Igmp.Robustness != nil { - nestedMulticastInterfaceGroup.Igmp.Robustness = oMulticastInterfaceGroup.Igmp.Robustness - } - if oMulticastInterfaceGroup.Igmp.RouterAlertPolicing != nil { - nestedMulticastInterfaceGroup.Igmp.RouterAlertPolicing = util.YesNo(oMulticastInterfaceGroup.Igmp.RouterAlertPolicing, nil) - } if oMulticastInterfaceGroup.Igmp.MaxQueryResponseTime != nil { nestedMulticastInterfaceGroup.Igmp.MaxQueryResponseTime = oMulticastInterfaceGroup.Igmp.MaxQueryResponseTime } - if oMulticastInterfaceGroup.Igmp.QueryInterval != nil { - nestedMulticastInterfaceGroup.Igmp.QueryInterval = oMulticastInterfaceGroup.Igmp.QueryInterval + if oMulticastInterfaceGroup.Igmp.MaxGroups != nil { + nestedMulticastInterfaceGroup.Igmp.MaxGroups = oMulticastInterfaceGroup.Igmp.MaxGroups } if oMulticastInterfaceGroup.Igmp.ImmediateLeave != nil { nestedMulticastInterfaceGroup.Igmp.ImmediateLeave = util.YesNo(oMulticastInterfaceGroup.Igmp.ImmediateLeave, nil) } - if oMulticastInterfaceGroup.Igmp.MaxGroups != nil { - nestedMulticastInterfaceGroup.Igmp.MaxGroups = oMulticastInterfaceGroup.Igmp.MaxGroups + if oMulticastInterfaceGroup.Igmp.Robustness != nil { + nestedMulticastInterfaceGroup.Igmp.Robustness = oMulticastInterfaceGroup.Igmp.Robustness } if oMulticastInterfaceGroup.Igmp.MaxSources != nil { nestedMulticastInterfaceGroup.Igmp.MaxSources = oMulticastInterfaceGroup.Igmp.MaxSources } + if oMulticastInterfaceGroup.Igmp.Enable != nil { + nestedMulticastInterfaceGroup.Igmp.Enable = util.YesNo(oMulticastInterfaceGroup.Igmp.Enable, nil) + } + if oMulticastInterfaceGroup.Igmp.QueryInterval != nil { + nestedMulticastInterfaceGroup.Igmp.QueryInterval = oMulticastInterfaceGroup.Igmp.QueryInterval + } + if oMulticastInterfaceGroup.Igmp.LastMemberQueryInterval != nil { + nestedMulticastInterfaceGroup.Igmp.LastMemberQueryInterval = oMulticastInterfaceGroup.Igmp.LastMemberQueryInterval + } } if oMulticastInterfaceGroup.Pim != nil { nestedMulticastInterfaceGroup.Pim = &MulticastInterfaceGroupPimXml{} @@ -3302,6 +3277,9 @@ func specifyEntry(o *Entry) (any, error) { if oMulticastInterfaceGroup.Description != nil { nestedMulticastInterfaceGroup.Description = oMulticastInterfaceGroup.Description } + if oMulticastInterfaceGroup.Interface != nil { + nestedMulticastInterfaceGroup.Interface = util.StrToMem(oMulticastInterfaceGroup.Interface) + } nestedMulticast.InterfaceGroup = append(nestedMulticast.InterfaceGroup, nestedMulticastInterfaceGroup) } } @@ -3363,9 +3341,6 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["MulticastRpLocalRpStaticRp"]; ok { nestedMulticast.Rp.LocalRp.StaticRp.Misc = o.Misc["MulticastRpLocalRpStaticRp"] } - if o.Multicast.Rp.LocalRp.StaticRp.Interface != nil { - nestedMulticast.Rp.LocalRp.StaticRp.Interface = o.Multicast.Rp.LocalRp.StaticRp.Interface - } if o.Multicast.Rp.LocalRp.StaticRp.Override != nil { nestedMulticast.Rp.LocalRp.StaticRp.Override = util.YesNo(o.Multicast.Rp.LocalRp.StaticRp.Override, nil) } @@ -3375,6 +3350,9 @@ func specifyEntry(o *Entry) (any, error) { if o.Multicast.Rp.LocalRp.StaticRp.GroupAddresses != nil { nestedMulticast.Rp.LocalRp.StaticRp.GroupAddresses = util.StrToMem(o.Multicast.Rp.LocalRp.StaticRp.GroupAddresses) } + if o.Multicast.Rp.LocalRp.StaticRp.Interface != nil { + nestedMulticast.Rp.LocalRp.StaticRp.Interface = o.Multicast.Rp.LocalRp.StaticRp.Interface + } } } } @@ -3385,15 +3363,37 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["MulticastSptThreshold"]; ok { nestedMulticastSptThreshold.Misc = o.Misc["MulticastSptThreshold"] } - if oMulticastSptThreshold.Name != "" { - nestedMulticastSptThreshold.Name = oMulticastSptThreshold.Name - } if oMulticastSptThreshold.Threshold != nil { nestedMulticastSptThreshold.Threshold = oMulticastSptThreshold.Threshold } + if oMulticastSptThreshold.Name != "" { + nestedMulticastSptThreshold.Name = oMulticastSptThreshold.Name + } nestedMulticast.SptThreshold = append(nestedMulticast.SptThreshold, nestedMulticastSptThreshold) } } + if o.Multicast.SsmAddressSpace != nil { + nestedMulticast.SsmAddressSpace = []MulticastSsmAddressSpaceXml{} + for _, oMulticastSsmAddressSpace := range o.Multicast.SsmAddressSpace { + nestedMulticastSsmAddressSpace := MulticastSsmAddressSpaceXml{} + if _, ok := o.Misc["MulticastSsmAddressSpace"]; ok { + nestedMulticastSsmAddressSpace.Misc = o.Misc["MulticastSsmAddressSpace"] + } + if oMulticastSsmAddressSpace.Included != nil { + nestedMulticastSsmAddressSpace.Included = util.YesNo(oMulticastSsmAddressSpace.Included, nil) + } + if oMulticastSsmAddressSpace.Name != "" { + nestedMulticastSsmAddressSpace.Name = oMulticastSsmAddressSpace.Name + } + if oMulticastSsmAddressSpace.GroupAddress != nil { + nestedMulticastSsmAddressSpace.GroupAddress = oMulticastSsmAddressSpace.GroupAddress + } + nestedMulticast.SsmAddressSpace = append(nestedMulticast.SsmAddressSpace, nestedMulticastSsmAddressSpace) + } + } + if o.Multicast.Enable != nil { + nestedMulticast.Enable = util.YesNo(o.Multicast.Enable, nil) + } } entry.Multicast = nestedMulticast @@ -3403,317 +3403,235 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["Protocol"]; ok { nestedProtocol.Misc = o.Misc["Protocol"] } - if o.Protocol.Bgp != nil { - nestedProtocol.Bgp = &ProtocolBgpXml{} - if _, ok := o.Misc["ProtocolBgp"]; ok { - nestedProtocol.Bgp.Misc = o.Misc["ProtocolBgp"] - } - if o.Protocol.Bgp.AuthProfile != nil { - nestedProtocol.Bgp.AuthProfile = []ProtocolBgpAuthProfileXml{} - for _, oProtocolBgpAuthProfile := range o.Protocol.Bgp.AuthProfile { - nestedProtocolBgpAuthProfile := ProtocolBgpAuthProfileXml{} - if _, ok := o.Misc["ProtocolBgpAuthProfile"]; ok { - nestedProtocolBgpAuthProfile.Misc = o.Misc["ProtocolBgpAuthProfile"] - } - if oProtocolBgpAuthProfile.Secret != nil { - nestedProtocolBgpAuthProfile.Secret = oProtocolBgpAuthProfile.Secret - } - if oProtocolBgpAuthProfile.Name != "" { - nestedProtocolBgpAuthProfile.Name = oProtocolBgpAuthProfile.Name - } - nestedProtocol.Bgp.AuthProfile = append(nestedProtocol.Bgp.AuthProfile, nestedProtocolBgpAuthProfile) - } - } - if o.Protocol.Bgp.Enable != nil { - nestedProtocol.Bgp.Enable = util.YesNo(o.Protocol.Bgp.Enable, nil) - } - if o.Protocol.Bgp.InstallRoute != nil { - nestedProtocol.Bgp.InstallRoute = util.YesNo(o.Protocol.Bgp.InstallRoute, nil) - } - if o.Protocol.Bgp.RoutingOptions != nil { - nestedProtocol.Bgp.RoutingOptions = &ProtocolBgpRoutingOptionsXml{} - if _, ok := o.Misc["ProtocolBgpRoutingOptions"]; ok { - nestedProtocol.Bgp.RoutingOptions.Misc = o.Misc["ProtocolBgpRoutingOptions"] + if o.Protocol.RedistProfileIpv6 != nil { + nestedProtocol.RedistProfileIpv6 = []ProtocolRedistProfileIpv6Xml{} + for _, oProtocolRedistProfileIpv6 := range o.Protocol.RedistProfileIpv6 { + nestedProtocolRedistProfileIpv6 := ProtocolRedistProfileIpv6Xml{} + if _, ok := o.Misc["ProtocolRedistProfileIpv6"]; ok { + nestedProtocolRedistProfileIpv6.Misc = o.Misc["ProtocolRedistProfileIpv6"] } - if o.Protocol.Bgp.RoutingOptions.DefaultLocalPreference != nil { - nestedProtocol.Bgp.RoutingOptions.DefaultLocalPreference = o.Protocol.Bgp.RoutingOptions.DefaultLocalPreference + if oProtocolRedistProfileIpv6.Priority != nil { + nestedProtocolRedistProfileIpv6.Priority = oProtocolRedistProfileIpv6.Priority } - if o.Protocol.Bgp.RoutingOptions.GracefulRestart != nil { - nestedProtocol.Bgp.RoutingOptions.GracefulRestart = &ProtocolBgpRoutingOptionsGracefulRestartXml{} - if _, ok := o.Misc["ProtocolBgpRoutingOptionsGracefulRestart"]; ok { - nestedProtocol.Bgp.RoutingOptions.GracefulRestart.Misc = o.Misc["ProtocolBgpRoutingOptionsGracefulRestart"] - } - if o.Protocol.Bgp.RoutingOptions.GracefulRestart.Enable != nil { - nestedProtocol.Bgp.RoutingOptions.GracefulRestart.Enable = util.YesNo(o.Protocol.Bgp.RoutingOptions.GracefulRestart.Enable, nil) + if oProtocolRedistProfileIpv6.Filter != nil { + nestedProtocolRedistProfileIpv6.Filter = &ProtocolRedistProfileIpv6FilterXml{} + if _, ok := o.Misc["ProtocolRedistProfileIpv6Filter"]; ok { + nestedProtocolRedistProfileIpv6.Filter.Misc = o.Misc["ProtocolRedistProfileIpv6Filter"] } - if o.Protocol.Bgp.RoutingOptions.GracefulRestart.LocalRestartTime != nil { - nestedProtocol.Bgp.RoutingOptions.GracefulRestart.LocalRestartTime = o.Protocol.Bgp.RoutingOptions.GracefulRestart.LocalRestartTime + if oProtocolRedistProfileIpv6.Filter.Bgp != nil { + nestedProtocolRedistProfileIpv6.Filter.Bgp = &ProtocolRedistProfileIpv6FilterBgpXml{} + if _, ok := o.Misc["ProtocolRedistProfileIpv6FilterBgp"]; ok { + nestedProtocolRedistProfileIpv6.Filter.Bgp.Misc = o.Misc["ProtocolRedistProfileIpv6FilterBgp"] + } + if oProtocolRedistProfileIpv6.Filter.Bgp.Community != nil { + nestedProtocolRedistProfileIpv6.Filter.Bgp.Community = util.StrToMem(oProtocolRedistProfileIpv6.Filter.Bgp.Community) + } + if oProtocolRedistProfileIpv6.Filter.Bgp.ExtendedCommunity != nil { + nestedProtocolRedistProfileIpv6.Filter.Bgp.ExtendedCommunity = util.StrToMem(oProtocolRedistProfileIpv6.Filter.Bgp.ExtendedCommunity) + } } - if o.Protocol.Bgp.RoutingOptions.GracefulRestart.MaxPeerRestartTime != nil { - nestedProtocol.Bgp.RoutingOptions.GracefulRestart.MaxPeerRestartTime = o.Protocol.Bgp.RoutingOptions.GracefulRestart.MaxPeerRestartTime + if oProtocolRedistProfileIpv6.Filter.Type != nil { + nestedProtocolRedistProfileIpv6.Filter.Type = util.StrToMem(oProtocolRedistProfileIpv6.Filter.Type) } - if o.Protocol.Bgp.RoutingOptions.GracefulRestart.StaleRouteTime != nil { - nestedProtocol.Bgp.RoutingOptions.GracefulRestart.StaleRouteTime = o.Protocol.Bgp.RoutingOptions.GracefulRestart.StaleRouteTime + if oProtocolRedistProfileIpv6.Filter.Interface != nil { + nestedProtocolRedistProfileIpv6.Filter.Interface = util.StrToMem(oProtocolRedistProfileIpv6.Filter.Interface) } - } - if o.Protocol.Bgp.RoutingOptions.Med != nil { - nestedProtocol.Bgp.RoutingOptions.Med = &ProtocolBgpRoutingOptionsMedXml{} - if _, ok := o.Misc["ProtocolBgpRoutingOptionsMed"]; ok { - nestedProtocol.Bgp.RoutingOptions.Med.Misc = o.Misc["ProtocolBgpRoutingOptionsMed"] + if oProtocolRedistProfileIpv6.Filter.Destination != nil { + nestedProtocolRedistProfileIpv6.Filter.Destination = util.StrToMem(oProtocolRedistProfileIpv6.Filter.Destination) } - if o.Protocol.Bgp.RoutingOptions.Med.AlwaysCompareMed != nil { - nestedProtocol.Bgp.RoutingOptions.Med.AlwaysCompareMed = util.YesNo(o.Protocol.Bgp.RoutingOptions.Med.AlwaysCompareMed, nil) + if oProtocolRedistProfileIpv6.Filter.Nexthop != nil { + nestedProtocolRedistProfileIpv6.Filter.Nexthop = util.StrToMem(oProtocolRedistProfileIpv6.Filter.Nexthop) } - if o.Protocol.Bgp.RoutingOptions.Med.DeterministicMedComparison != nil { - nestedProtocol.Bgp.RoutingOptions.Med.DeterministicMedComparison = util.YesNo(o.Protocol.Bgp.RoutingOptions.Med.DeterministicMedComparison, nil) + if oProtocolRedistProfileIpv6.Filter.Ospfv3 != nil { + nestedProtocolRedistProfileIpv6.Filter.Ospfv3 = &ProtocolRedistProfileIpv6FilterOspfv3Xml{} + if _, ok := o.Misc["ProtocolRedistProfileIpv6FilterOspfv3"]; ok { + nestedProtocolRedistProfileIpv6.Filter.Ospfv3.Misc = o.Misc["ProtocolRedistProfileIpv6FilterOspfv3"] + } + if oProtocolRedistProfileIpv6.Filter.Ospfv3.Area != nil { + nestedProtocolRedistProfileIpv6.Filter.Ospfv3.Area = util.StrToMem(oProtocolRedistProfileIpv6.Filter.Ospfv3.Area) + } + if oProtocolRedistProfileIpv6.Filter.Ospfv3.Tag != nil { + nestedProtocolRedistProfileIpv6.Filter.Ospfv3.Tag = util.StrToMem(oProtocolRedistProfileIpv6.Filter.Ospfv3.Tag) + } + if oProtocolRedistProfileIpv6.Filter.Ospfv3.PathType != nil { + nestedProtocolRedistProfileIpv6.Filter.Ospfv3.PathType = util.StrToMem(oProtocolRedistProfileIpv6.Filter.Ospfv3.PathType) + } } } - if o.Protocol.Bgp.RoutingOptions.ReflectorClusterId != nil { - nestedProtocol.Bgp.RoutingOptions.ReflectorClusterId = o.Protocol.Bgp.RoutingOptions.ReflectorClusterId - } - if o.Protocol.Bgp.RoutingOptions.Aggregate != nil { - nestedProtocol.Bgp.RoutingOptions.Aggregate = &ProtocolBgpRoutingOptionsAggregateXml{} - if _, ok := o.Misc["ProtocolBgpRoutingOptionsAggregate"]; ok { - nestedProtocol.Bgp.RoutingOptions.Aggregate.Misc = o.Misc["ProtocolBgpRoutingOptionsAggregate"] + if oProtocolRedistProfileIpv6.Action != nil { + nestedProtocolRedistProfileIpv6.Action = &ProtocolRedistProfileIpv6ActionXml{} + if _, ok := o.Misc["ProtocolRedistProfileIpv6Action"]; ok { + nestedProtocolRedistProfileIpv6.Action.Misc = o.Misc["ProtocolRedistProfileIpv6Action"] } - if o.Protocol.Bgp.RoutingOptions.Aggregate.AggregateMed != nil { - nestedProtocol.Bgp.RoutingOptions.Aggregate.AggregateMed = util.YesNo(o.Protocol.Bgp.RoutingOptions.Aggregate.AggregateMed, nil) + if oProtocolRedistProfileIpv6.Action.NoRedist != nil { + nestedProtocolRedistProfileIpv6.Action.NoRedist = &ProtocolRedistProfileIpv6ActionNoRedistXml{} + if _, ok := o.Misc["ProtocolRedistProfileIpv6ActionNoRedist"]; ok { + nestedProtocolRedistProfileIpv6.Action.NoRedist.Misc = o.Misc["ProtocolRedistProfileIpv6ActionNoRedist"] + } + } + if oProtocolRedistProfileIpv6.Action.Redist != nil { + nestedProtocolRedistProfileIpv6.Action.Redist = &ProtocolRedistProfileIpv6ActionRedistXml{} + if _, ok := o.Misc["ProtocolRedistProfileIpv6ActionRedist"]; ok { + nestedProtocolRedistProfileIpv6.Action.Redist.Misc = o.Misc["ProtocolRedistProfileIpv6ActionRedist"] + } } } - if o.Protocol.Bgp.RoutingOptions.AsFormat != nil { - nestedProtocol.Bgp.RoutingOptions.AsFormat = o.Protocol.Bgp.RoutingOptions.AsFormat - } - if o.Protocol.Bgp.RoutingOptions.ConfederationMemberAs != nil { - nestedProtocol.Bgp.RoutingOptions.ConfederationMemberAs = o.Protocol.Bgp.RoutingOptions.ConfederationMemberAs + if oProtocolRedistProfileIpv6.Name != "" { + nestedProtocolRedistProfileIpv6.Name = oProtocolRedistProfileIpv6.Name } + nestedProtocol.RedistProfileIpv6 = append(nestedProtocol.RedistProfileIpv6, nestedProtocolRedistProfileIpv6) } - if o.Protocol.Bgp.AllowRedistDefaultRoute != nil { - nestedProtocol.Bgp.AllowRedistDefaultRoute = util.YesNo(o.Protocol.Bgp.AllowRedistDefaultRoute, nil) - } - if o.Protocol.Bgp.EcmpMultiAs != nil { - nestedProtocol.Bgp.EcmpMultiAs = util.YesNo(o.Protocol.Bgp.EcmpMultiAs, nil) + } + if o.Protocol.Rip != nil { + nestedProtocol.Rip = &ProtocolRipXml{} + if _, ok := o.Misc["ProtocolRip"]; ok { + nestedProtocol.Rip.Misc = o.Misc["ProtocolRip"] } - if o.Protocol.Bgp.GlobalBfd != nil { - nestedProtocol.Bgp.GlobalBfd = &ProtocolBgpGlobalBfdXml{} - if _, ok := o.Misc["ProtocolBgpGlobalBfd"]; ok { - nestedProtocol.Bgp.GlobalBfd.Misc = o.Misc["ProtocolBgpGlobalBfd"] + if o.Protocol.Rip.GlobalBfd != nil { + nestedProtocol.Rip.GlobalBfd = &ProtocolRipGlobalBfdXml{} + if _, ok := o.Misc["ProtocolRipGlobalBfd"]; ok { + nestedProtocol.Rip.GlobalBfd.Misc = o.Misc["ProtocolRipGlobalBfd"] } - if o.Protocol.Bgp.GlobalBfd.Profile != nil { - nestedProtocol.Bgp.GlobalBfd.Profile = o.Protocol.Bgp.GlobalBfd.Profile + if o.Protocol.Rip.GlobalBfd.Profile != nil { + nestedProtocol.Rip.GlobalBfd.Profile = o.Protocol.Rip.GlobalBfd.Profile } } - if o.Protocol.Bgp.LocalAs != nil { - nestedProtocol.Bgp.LocalAs = o.Protocol.Bgp.LocalAs - } - if o.Protocol.Bgp.RouterId != nil { - nestedProtocol.Bgp.RouterId = o.Protocol.Bgp.RouterId - } - if o.Protocol.Bgp.EnforceFirstAs != nil { - nestedProtocol.Bgp.EnforceFirstAs = util.YesNo(o.Protocol.Bgp.EnforceFirstAs, nil) - } - if o.Protocol.Bgp.PeerGroup != nil { - nestedProtocol.Bgp.PeerGroup = []ProtocolBgpPeerGroupXml{} - for _, oProtocolBgpPeerGroup := range o.Protocol.Bgp.PeerGroup { - nestedProtocolBgpPeerGroup := ProtocolBgpPeerGroupXml{} - if _, ok := o.Misc["ProtocolBgpPeerGroup"]; ok { - nestedProtocolBgpPeerGroup.Misc = o.Misc["ProtocolBgpPeerGroup"] + if o.Protocol.Rip.Interface != nil { + nestedProtocol.Rip.Interface = []ProtocolRipInterfaceXml{} + for _, oProtocolRipInterface := range o.Protocol.Rip.Interface { + nestedProtocolRipInterface := ProtocolRipInterfaceXml{} + if _, ok := o.Misc["ProtocolRipInterface"]; ok { + nestedProtocolRipInterface.Misc = o.Misc["ProtocolRipInterface"] } - if oProtocolBgpPeerGroup.Enable != nil { - nestedProtocolBgpPeerGroup.Enable = util.YesNo(oProtocolBgpPeerGroup.Enable, nil) + if oProtocolRipInterface.Enable != nil { + nestedProtocolRipInterface.Enable = util.YesNo(oProtocolRipInterface.Enable, nil) } - if oProtocolBgpPeerGroup.AggregatedConfedAsPath != nil { - nestedProtocolBgpPeerGroup.AggregatedConfedAsPath = util.YesNo(oProtocolBgpPeerGroup.AggregatedConfedAsPath, nil) + if oProtocolRipInterface.Authentication != nil { + nestedProtocolRipInterface.Authentication = oProtocolRipInterface.Authentication } - if oProtocolBgpPeerGroup.SoftResetWithStoredInfo != nil { - nestedProtocolBgpPeerGroup.SoftResetWithStoredInfo = util.YesNo(oProtocolBgpPeerGroup.SoftResetWithStoredInfo, nil) + if oProtocolRipInterface.Mode != nil { + nestedProtocolRipInterface.Mode = oProtocolRipInterface.Mode } - if oProtocolBgpPeerGroup.Type != nil { - nestedProtocolBgpPeerGroup.Type = &ProtocolBgpPeerGroupTypeXml{} - if _, ok := o.Misc["ProtocolBgpPeerGroupType"]; ok { - nestedProtocolBgpPeerGroup.Type.Misc = o.Misc["ProtocolBgpPeerGroupType"] + if oProtocolRipInterface.DefaultRoute != nil { + nestedProtocolRipInterface.DefaultRoute = &ProtocolRipInterfaceDefaultRouteXml{} + if _, ok := o.Misc["ProtocolRipInterfaceDefaultRoute"]; ok { + nestedProtocolRipInterface.DefaultRoute.Misc = o.Misc["ProtocolRipInterfaceDefaultRoute"] } - if oProtocolBgpPeerGroup.Type.Ibgp != nil { - nestedProtocolBgpPeerGroup.Type.Ibgp = &ProtocolBgpPeerGroupTypeIbgpXml{} - if _, ok := o.Misc["ProtocolBgpPeerGroupTypeIbgp"]; ok { - nestedProtocolBgpPeerGroup.Type.Ibgp.Misc = o.Misc["ProtocolBgpPeerGroupTypeIbgp"] - } - if oProtocolBgpPeerGroup.Type.Ibgp.ExportNexthop != nil { - nestedProtocolBgpPeerGroup.Type.Ibgp.ExportNexthop = oProtocolBgpPeerGroup.Type.Ibgp.ExportNexthop + if oProtocolRipInterface.DefaultRoute.Disable != nil { + nestedProtocolRipInterface.DefaultRoute.Disable = &ProtocolRipInterfaceDefaultRouteDisableXml{} + if _, ok := o.Misc["ProtocolRipInterfaceDefaultRouteDisable"]; ok { + nestedProtocolRipInterface.DefaultRoute.Disable.Misc = o.Misc["ProtocolRipInterfaceDefaultRouteDisable"] } } - if oProtocolBgpPeerGroup.Type.EbgpConfed != nil { - nestedProtocolBgpPeerGroup.Type.EbgpConfed = &ProtocolBgpPeerGroupTypeEbgpConfedXml{} - if _, ok := o.Misc["ProtocolBgpPeerGroupTypeEbgpConfed"]; ok { - nestedProtocolBgpPeerGroup.Type.EbgpConfed.Misc = o.Misc["ProtocolBgpPeerGroupTypeEbgpConfed"] + if oProtocolRipInterface.DefaultRoute.Advertise != nil { + nestedProtocolRipInterface.DefaultRoute.Advertise = &ProtocolRipInterfaceDefaultRouteAdvertiseXml{} + if _, ok := o.Misc["ProtocolRipInterfaceDefaultRouteAdvertise"]; ok { + nestedProtocolRipInterface.DefaultRoute.Advertise.Misc = o.Misc["ProtocolRipInterfaceDefaultRouteAdvertise"] } - if oProtocolBgpPeerGroup.Type.EbgpConfed.ExportNexthop != nil { - nestedProtocolBgpPeerGroup.Type.EbgpConfed.ExportNexthop = oProtocolBgpPeerGroup.Type.EbgpConfed.ExportNexthop + if oProtocolRipInterface.DefaultRoute.Advertise.Metric != nil { + nestedProtocolRipInterface.DefaultRoute.Advertise.Metric = oProtocolRipInterface.DefaultRoute.Advertise.Metric } } - if oProtocolBgpPeerGroup.Type.IbgpConfed != nil { - nestedProtocolBgpPeerGroup.Type.IbgpConfed = &ProtocolBgpPeerGroupTypeIbgpConfedXml{} - if _, ok := o.Misc["ProtocolBgpPeerGroupTypeIbgpConfed"]; ok { - nestedProtocolBgpPeerGroup.Type.IbgpConfed.Misc = o.Misc["ProtocolBgpPeerGroupTypeIbgpConfed"] - } - if oProtocolBgpPeerGroup.Type.IbgpConfed.ExportNexthop != nil { - nestedProtocolBgpPeerGroup.Type.IbgpConfed.ExportNexthop = oProtocolBgpPeerGroup.Type.IbgpConfed.ExportNexthop - } + } + if oProtocolRipInterface.Bfd != nil { + nestedProtocolRipInterface.Bfd = &ProtocolRipInterfaceBfdXml{} + if _, ok := o.Misc["ProtocolRipInterfaceBfd"]; ok { + nestedProtocolRipInterface.Bfd.Misc = o.Misc["ProtocolRipInterfaceBfd"] } - if oProtocolBgpPeerGroup.Type.Ebgp != nil { - nestedProtocolBgpPeerGroup.Type.Ebgp = &ProtocolBgpPeerGroupTypeEbgpXml{} - if _, ok := o.Misc["ProtocolBgpPeerGroupTypeEbgp"]; ok { - nestedProtocolBgpPeerGroup.Type.Ebgp.Misc = o.Misc["ProtocolBgpPeerGroupTypeEbgp"] - } - if oProtocolBgpPeerGroup.Type.Ebgp.ImportNexthop != nil { - nestedProtocolBgpPeerGroup.Type.Ebgp.ImportNexthop = oProtocolBgpPeerGroup.Type.Ebgp.ImportNexthop - } - if oProtocolBgpPeerGroup.Type.Ebgp.ExportNexthop != nil { - nestedProtocolBgpPeerGroup.Type.Ebgp.ExportNexthop = oProtocolBgpPeerGroup.Type.Ebgp.ExportNexthop - } - if oProtocolBgpPeerGroup.Type.Ebgp.RemovePrivateAs != nil { - nestedProtocolBgpPeerGroup.Type.Ebgp.RemovePrivateAs = util.YesNo(oProtocolBgpPeerGroup.Type.Ebgp.RemovePrivateAs, nil) - } + if oProtocolRipInterface.Bfd.Profile != nil { + nestedProtocolRipInterface.Bfd.Profile = oProtocolRipInterface.Bfd.Profile } } - if oProtocolBgpPeerGroup.Peer != nil { - nestedProtocolBgpPeerGroup.Peer = []ProtocolBgpPeerGroupPeerXml{} - for _, oProtocolBgpPeerGroupPeer := range oProtocolBgpPeerGroup.Peer { - nestedProtocolBgpPeerGroupPeer := ProtocolBgpPeerGroupPeerXml{} - if _, ok := o.Misc["ProtocolBgpPeerGroupPeer"]; ok { - nestedProtocolBgpPeerGroupPeer.Misc = o.Misc["ProtocolBgpPeerGroupPeer"] - } - if oProtocolBgpPeerGroupPeer.ConnectionOptions != nil { - nestedProtocolBgpPeerGroupPeer.ConnectionOptions = &ProtocolBgpPeerGroupPeerConnectionOptionsXml{} - if _, ok := o.Misc["ProtocolBgpPeerGroupPeerConnectionOptions"]; ok { - nestedProtocolBgpPeerGroupPeer.ConnectionOptions.Misc = o.Misc["ProtocolBgpPeerGroupPeerConnectionOptions"] - } - if oProtocolBgpPeerGroupPeer.ConnectionOptions.OutgoingBgpConnection != nil { - nestedProtocolBgpPeerGroupPeer.ConnectionOptions.OutgoingBgpConnection = &ProtocolBgpPeerGroupPeerConnectionOptionsOutgoingBgpConnectionXml{} - if _, ok := o.Misc["ProtocolBgpPeerGroupPeerConnectionOptionsOutgoingBgpConnection"]; ok { - nestedProtocolBgpPeerGroupPeer.ConnectionOptions.OutgoingBgpConnection.Misc = o.Misc["ProtocolBgpPeerGroupPeerConnectionOptionsOutgoingBgpConnection"] - } - if oProtocolBgpPeerGroupPeer.ConnectionOptions.OutgoingBgpConnection.LocalPort != nil { - nestedProtocolBgpPeerGroupPeer.ConnectionOptions.OutgoingBgpConnection.LocalPort = oProtocolBgpPeerGroupPeer.ConnectionOptions.OutgoingBgpConnection.LocalPort - } - if oProtocolBgpPeerGroupPeer.ConnectionOptions.OutgoingBgpConnection.Allow != nil { - nestedProtocolBgpPeerGroupPeer.ConnectionOptions.OutgoingBgpConnection.Allow = util.YesNo(oProtocolBgpPeerGroupPeer.ConnectionOptions.OutgoingBgpConnection.Allow, nil) - } - } - if oProtocolBgpPeerGroupPeer.ConnectionOptions.Authentication != nil { - nestedProtocolBgpPeerGroupPeer.ConnectionOptions.Authentication = oProtocolBgpPeerGroupPeer.ConnectionOptions.Authentication - } - if oProtocolBgpPeerGroupPeer.ConnectionOptions.MinRouteAdvInterval != nil { - nestedProtocolBgpPeerGroupPeer.ConnectionOptions.MinRouteAdvInterval = oProtocolBgpPeerGroupPeer.ConnectionOptions.MinRouteAdvInterval - } - if oProtocolBgpPeerGroupPeer.ConnectionOptions.Multihop != nil { - nestedProtocolBgpPeerGroupPeer.ConnectionOptions.Multihop = oProtocolBgpPeerGroupPeer.ConnectionOptions.Multihop - } - if oProtocolBgpPeerGroupPeer.ConnectionOptions.OpenDelayTime != nil { - nestedProtocolBgpPeerGroupPeer.ConnectionOptions.OpenDelayTime = oProtocolBgpPeerGroupPeer.ConnectionOptions.OpenDelayTime - } - if oProtocolBgpPeerGroupPeer.ConnectionOptions.KeepAliveInterval != nil { - nestedProtocolBgpPeerGroupPeer.ConnectionOptions.KeepAliveInterval = oProtocolBgpPeerGroupPeer.ConnectionOptions.KeepAliveInterval - } - if oProtocolBgpPeerGroupPeer.ConnectionOptions.HoldTime != nil { - nestedProtocolBgpPeerGroupPeer.ConnectionOptions.HoldTime = oProtocolBgpPeerGroupPeer.ConnectionOptions.HoldTime - } - if oProtocolBgpPeerGroupPeer.ConnectionOptions.IdleHoldTime != nil { - nestedProtocolBgpPeerGroupPeer.ConnectionOptions.IdleHoldTime = oProtocolBgpPeerGroupPeer.ConnectionOptions.IdleHoldTime - } - if oProtocolBgpPeerGroupPeer.ConnectionOptions.IncomingBgpConnection != nil { - nestedProtocolBgpPeerGroupPeer.ConnectionOptions.IncomingBgpConnection = &ProtocolBgpPeerGroupPeerConnectionOptionsIncomingBgpConnectionXml{} - if _, ok := o.Misc["ProtocolBgpPeerGroupPeerConnectionOptionsIncomingBgpConnection"]; ok { - nestedProtocolBgpPeerGroupPeer.ConnectionOptions.IncomingBgpConnection.Misc = o.Misc["ProtocolBgpPeerGroupPeerConnectionOptionsIncomingBgpConnection"] - } - if oProtocolBgpPeerGroupPeer.ConnectionOptions.IncomingBgpConnection.RemotePort != nil { - nestedProtocolBgpPeerGroupPeer.ConnectionOptions.IncomingBgpConnection.RemotePort = oProtocolBgpPeerGroupPeer.ConnectionOptions.IncomingBgpConnection.RemotePort - } - if oProtocolBgpPeerGroupPeer.ConnectionOptions.IncomingBgpConnection.Allow != nil { - nestedProtocolBgpPeerGroupPeer.ConnectionOptions.IncomingBgpConnection.Allow = util.YesNo(oProtocolBgpPeerGroupPeer.ConnectionOptions.IncomingBgpConnection.Allow, nil) - } - } - } - if oProtocolBgpPeerGroupPeer.PeerAs != nil { - nestedProtocolBgpPeerGroupPeer.PeerAs = oProtocolBgpPeerGroupPeer.PeerAs - } - if oProtocolBgpPeerGroupPeer.ReflectorClient != nil { - nestedProtocolBgpPeerGroupPeer.ReflectorClient = oProtocolBgpPeerGroupPeer.ReflectorClient - } - if oProtocolBgpPeerGroupPeer.SubsequentAddressFamilyIdentifier != nil { - nestedProtocolBgpPeerGroupPeer.SubsequentAddressFamilyIdentifier = &ProtocolBgpPeerGroupPeerSubsequentAddressFamilyIdentifierXml{} - if _, ok := o.Misc["ProtocolBgpPeerGroupPeerSubsequentAddressFamilyIdentifier"]; ok { - nestedProtocolBgpPeerGroupPeer.SubsequentAddressFamilyIdentifier.Misc = o.Misc["ProtocolBgpPeerGroupPeerSubsequentAddressFamilyIdentifier"] - } - if oProtocolBgpPeerGroupPeer.SubsequentAddressFamilyIdentifier.Unicast != nil { - nestedProtocolBgpPeerGroupPeer.SubsequentAddressFamilyIdentifier.Unicast = util.YesNo(oProtocolBgpPeerGroupPeer.SubsequentAddressFamilyIdentifier.Unicast, nil) - } - if oProtocolBgpPeerGroupPeer.SubsequentAddressFamilyIdentifier.Multicast != nil { - nestedProtocolBgpPeerGroupPeer.SubsequentAddressFamilyIdentifier.Multicast = util.YesNo(oProtocolBgpPeerGroupPeer.SubsequentAddressFamilyIdentifier.Multicast, nil) - } - } - if oProtocolBgpPeerGroupPeer.EnableMpBgp != nil { - nestedProtocolBgpPeerGroupPeer.EnableMpBgp = util.YesNo(oProtocolBgpPeerGroupPeer.EnableMpBgp, nil) + if oProtocolRipInterface.Name != "" { + nestedProtocolRipInterface.Name = oProtocolRipInterface.Name + } + nestedProtocol.Rip.Interface = append(nestedProtocol.Rip.Interface, nestedProtocolRipInterface) + } + } + if o.Protocol.Rip.RejectDefaultRoute != nil { + nestedProtocol.Rip.RejectDefaultRoute = util.YesNo(o.Protocol.Rip.RejectDefaultRoute, nil) + } + if o.Protocol.Rip.Timers != nil { + nestedProtocol.Rip.Timers = &ProtocolRipTimersXml{} + if _, ok := o.Misc["ProtocolRipTimers"]; ok { + nestedProtocol.Rip.Timers.Misc = o.Misc["ProtocolRipTimers"] + } + if o.Protocol.Rip.Timers.DeleteIntervals != nil { + nestedProtocol.Rip.Timers.DeleteIntervals = o.Protocol.Rip.Timers.DeleteIntervals + } + if o.Protocol.Rip.Timers.ExpireIntervals != nil { + nestedProtocol.Rip.Timers.ExpireIntervals = o.Protocol.Rip.Timers.ExpireIntervals + } + if o.Protocol.Rip.Timers.IntervalSeconds != nil { + nestedProtocol.Rip.Timers.IntervalSeconds = o.Protocol.Rip.Timers.IntervalSeconds + } + if o.Protocol.Rip.Timers.UpdateIntervals != nil { + nestedProtocol.Rip.Timers.UpdateIntervals = o.Protocol.Rip.Timers.UpdateIntervals + } + } + if o.Protocol.Rip.AllowRedistDefaultRoute != nil { + nestedProtocol.Rip.AllowRedistDefaultRoute = util.YesNo(o.Protocol.Rip.AllowRedistDefaultRoute, nil) + } + if o.Protocol.Rip.AuthProfile != nil { + nestedProtocol.Rip.AuthProfile = []ProtocolRipAuthProfileXml{} + for _, oProtocolRipAuthProfile := range o.Protocol.Rip.AuthProfile { + nestedProtocolRipAuthProfile := ProtocolRipAuthProfileXml{} + if _, ok := o.Misc["ProtocolRipAuthProfile"]; ok { + nestedProtocolRipAuthProfile.Misc = o.Misc["ProtocolRipAuthProfile"] + } + if oProtocolRipAuthProfile.Name != "" { + nestedProtocolRipAuthProfile.Name = oProtocolRipAuthProfile.Name + } + if oProtocolRipAuthProfile.Password != nil { + nestedProtocolRipAuthProfile.Password = oProtocolRipAuthProfile.Password + } + if oProtocolRipAuthProfile.Md5 != nil { + nestedProtocolRipAuthProfile.Md5 = []ProtocolRipAuthProfileMd5Xml{} + for _, oProtocolRipAuthProfileMd5 := range oProtocolRipAuthProfile.Md5 { + nestedProtocolRipAuthProfileMd5 := ProtocolRipAuthProfileMd5Xml{} + if _, ok := o.Misc["ProtocolRipAuthProfileMd5"]; ok { + nestedProtocolRipAuthProfileMd5.Misc = o.Misc["ProtocolRipAuthProfileMd5"] } - if oProtocolBgpPeerGroupPeer.AddressFamilyIdentifier != nil { - nestedProtocolBgpPeerGroupPeer.AddressFamilyIdentifier = oProtocolBgpPeerGroupPeer.AddressFamilyIdentifier + if oProtocolRipAuthProfileMd5.Key != nil { + nestedProtocolRipAuthProfileMd5.Key = oProtocolRipAuthProfileMd5.Key } - if oProtocolBgpPeerGroupPeer.Name != "" { - nestedProtocolBgpPeerGroupPeer.Name = oProtocolBgpPeerGroupPeer.Name + if oProtocolRipAuthProfileMd5.Preferred != nil { + nestedProtocolRipAuthProfileMd5.Preferred = util.YesNo(oProtocolRipAuthProfileMd5.Preferred, nil) } - if oProtocolBgpPeerGroupPeer.MaxPrefixes != nil { - nestedProtocolBgpPeerGroupPeer.MaxPrefixes = oProtocolBgpPeerGroupPeer.MaxPrefixes + if oProtocolRipAuthProfileMd5.Name != "" { + nestedProtocolRipAuthProfileMd5.Name = oProtocolRipAuthProfileMd5.Name } - if oProtocolBgpPeerGroupPeer.PeerAddress != nil { - nestedProtocolBgpPeerGroupPeer.PeerAddress = &ProtocolBgpPeerGroupPeerPeerAddressXml{} - if _, ok := o.Misc["ProtocolBgpPeerGroupPeerPeerAddress"]; ok { - nestedProtocolBgpPeerGroupPeer.PeerAddress.Misc = o.Misc["ProtocolBgpPeerGroupPeerPeerAddress"] - } - if oProtocolBgpPeerGroupPeer.PeerAddress.Ip != nil { - nestedProtocolBgpPeerGroupPeer.PeerAddress.Ip = oProtocolBgpPeerGroupPeer.PeerAddress.Ip - } - if oProtocolBgpPeerGroupPeer.PeerAddress.Fqdn != nil { - nestedProtocolBgpPeerGroupPeer.PeerAddress.Fqdn = oProtocolBgpPeerGroupPeer.PeerAddress.Fqdn - } - } - if oProtocolBgpPeerGroupPeer.Bfd != nil { - nestedProtocolBgpPeerGroupPeer.Bfd = &ProtocolBgpPeerGroupPeerBfdXml{} - if _, ok := o.Misc["ProtocolBgpPeerGroupPeerBfd"]; ok { - nestedProtocolBgpPeerGroupPeer.Bfd.Misc = o.Misc["ProtocolBgpPeerGroupPeerBfd"] - } - if oProtocolBgpPeerGroupPeer.Bfd.Profile != nil { - nestedProtocolBgpPeerGroupPeer.Bfd.Profile = oProtocolBgpPeerGroupPeer.Bfd.Profile - } - } - if oProtocolBgpPeerGroupPeer.LocalAddress != nil { - nestedProtocolBgpPeerGroupPeer.LocalAddress = &ProtocolBgpPeerGroupPeerLocalAddressXml{} - if _, ok := o.Misc["ProtocolBgpPeerGroupPeerLocalAddress"]; ok { - nestedProtocolBgpPeerGroupPeer.LocalAddress.Misc = o.Misc["ProtocolBgpPeerGroupPeerLocalAddress"] - } - if oProtocolBgpPeerGroupPeer.LocalAddress.Interface != nil { - nestedProtocolBgpPeerGroupPeer.LocalAddress.Interface = oProtocolBgpPeerGroupPeer.LocalAddress.Interface - } - if oProtocolBgpPeerGroupPeer.LocalAddress.Ip != nil { - nestedProtocolBgpPeerGroupPeer.LocalAddress.Ip = oProtocolBgpPeerGroupPeer.LocalAddress.Ip - } - } - if oProtocolBgpPeerGroupPeer.Enable != nil { - nestedProtocolBgpPeerGroupPeer.Enable = util.YesNo(oProtocolBgpPeerGroupPeer.Enable, nil) - } - if oProtocolBgpPeerGroupPeer.EnableSenderSideLoopDetection != nil { - nestedProtocolBgpPeerGroupPeer.EnableSenderSideLoopDetection = util.YesNo(oProtocolBgpPeerGroupPeer.EnableSenderSideLoopDetection, nil) - } - if oProtocolBgpPeerGroupPeer.PeeringType != nil { - nestedProtocolBgpPeerGroupPeer.PeeringType = oProtocolBgpPeerGroupPeer.PeeringType - } - nestedProtocolBgpPeerGroup.Peer = append(nestedProtocolBgpPeerGroup.Peer, nestedProtocolBgpPeerGroupPeer) + nestedProtocolRipAuthProfile.Md5 = append(nestedProtocolRipAuthProfile.Md5, nestedProtocolRipAuthProfileMd5) } } - if oProtocolBgpPeerGroup.Name != "" { - nestedProtocolBgpPeerGroup.Name = oProtocolBgpPeerGroup.Name + nestedProtocol.Rip.AuthProfile = append(nestedProtocol.Rip.AuthProfile, nestedProtocolRipAuthProfile) + } + } + if o.Protocol.Rip.Enable != nil { + nestedProtocol.Rip.Enable = util.YesNo(o.Protocol.Rip.Enable, nil) + } + if o.Protocol.Rip.ExportRules != nil { + nestedProtocol.Rip.ExportRules = []ProtocolRipExportRulesXml{} + for _, oProtocolRipExportRules := range o.Protocol.Rip.ExportRules { + nestedProtocolRipExportRules := ProtocolRipExportRulesXml{} + if _, ok := o.Misc["ProtocolRipExportRules"]; ok { + nestedProtocolRipExportRules.Misc = o.Misc["ProtocolRipExportRules"] } - nestedProtocol.Bgp.PeerGroup = append(nestedProtocol.Bgp.PeerGroup, nestedProtocolBgpPeerGroup) + if oProtocolRipExportRules.Metric != nil { + nestedProtocolRipExportRules.Metric = oProtocolRipExportRules.Metric + } + if oProtocolRipExportRules.Name != "" { + nestedProtocolRipExportRules.Name = oProtocolRipExportRules.Name + } + nestedProtocol.Rip.ExportRules = append(nestedProtocol.Rip.ExportRules, nestedProtocolRipExportRules) } } + } + if o.Protocol.Bgp != nil { + nestedProtocol.Bgp = &ProtocolBgpXml{} + if _, ok := o.Misc["ProtocolBgp"]; ok { + nestedProtocol.Bgp.Misc = o.Misc["ProtocolBgp"] + } if o.Protocol.Bgp.RedistRules != nil { nestedProtocol.Bgp.RedistRules = []ProtocolBgpRedistRulesXml{} for _, oProtocolBgpRedistRules := range o.Protocol.Bgp.RedistRules { @@ -3721,20 +3639,20 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["ProtocolBgpRedistRules"]; ok { nestedProtocolBgpRedistRules.Misc = o.Misc["ProtocolBgpRedistRules"] } - if oProtocolBgpRedistRules.RouteTable != nil { - nestedProtocolBgpRedistRules.RouteTable = oProtocolBgpRedistRules.RouteTable + if oProtocolBgpRedistRules.Name != "" { + nestedProtocolBgpRedistRules.Name = oProtocolBgpRedistRules.Name + } + if oProtocolBgpRedistRules.AddressFamilyIdentifier != nil { + nestedProtocolBgpRedistRules.AddressFamilyIdentifier = oProtocolBgpRedistRules.AddressFamilyIdentifier } if oProtocolBgpRedistRules.Enable != nil { nestedProtocolBgpRedistRules.Enable = util.YesNo(oProtocolBgpRedistRules.Enable, nil) } - if oProtocolBgpRedistRules.SetMed != nil { - nestedProtocolBgpRedistRules.SetMed = oProtocolBgpRedistRules.SetMed - } if oProtocolBgpRedistRules.SetLocalPreference != nil { nestedProtocolBgpRedistRules.SetLocalPreference = oProtocolBgpRedistRules.SetLocalPreference } - if oProtocolBgpRedistRules.SetAsPathLimit != nil { - nestedProtocolBgpRedistRules.SetAsPathLimit = oProtocolBgpRedistRules.SetAsPathLimit + if oProtocolBgpRedistRules.SetExtendedCommunity != nil { + nestedProtocolBgpRedistRules.SetExtendedCommunity = util.StrToMem(oProtocolBgpRedistRules.SetExtendedCommunity) } if oProtocolBgpRedistRules.Metric != nil { nestedProtocolBgpRedistRules.Metric = oProtocolBgpRedistRules.Metric @@ -3742,55 +3660,121 @@ func specifyEntry(o *Entry) (any, error) { if oProtocolBgpRedistRules.SetCommunity != nil { nestedProtocolBgpRedistRules.SetCommunity = util.StrToMem(oProtocolBgpRedistRules.SetCommunity) } - if oProtocolBgpRedistRules.AddressFamilyIdentifier != nil { - nestedProtocolBgpRedistRules.AddressFamilyIdentifier = oProtocolBgpRedistRules.AddressFamilyIdentifier + if oProtocolBgpRedistRules.RouteTable != nil { + nestedProtocolBgpRedistRules.RouteTable = oProtocolBgpRedistRules.RouteTable } if oProtocolBgpRedistRules.SetOrigin != nil { nestedProtocolBgpRedistRules.SetOrigin = oProtocolBgpRedistRules.SetOrigin } - if oProtocolBgpRedistRules.SetExtendedCommunity != nil { - nestedProtocolBgpRedistRules.SetExtendedCommunity = util.StrToMem(oProtocolBgpRedistRules.SetExtendedCommunity) + if oProtocolBgpRedistRules.SetMed != nil { + nestedProtocolBgpRedistRules.SetMed = oProtocolBgpRedistRules.SetMed } - if oProtocolBgpRedistRules.Name != "" { - nestedProtocolBgpRedistRules.Name = oProtocolBgpRedistRules.Name + if oProtocolBgpRedistRules.SetAsPathLimit != nil { + nestedProtocolBgpRedistRules.SetAsPathLimit = oProtocolBgpRedistRules.SetAsPathLimit } nestedProtocol.Bgp.RedistRules = append(nestedProtocol.Bgp.RedistRules, nestedProtocolBgpRedistRules) } } - if o.Protocol.Bgp.RejectDefaultRoute != nil { - nestedProtocol.Bgp.RejectDefaultRoute = util.YesNo(o.Protocol.Bgp.RejectDefaultRoute, nil) + if o.Protocol.Bgp.RouterId != nil { + nestedProtocol.Bgp.RouterId = o.Protocol.Bgp.RouterId } - if o.Protocol.Bgp.DampeningProfile != nil { - nestedProtocol.Bgp.DampeningProfile = []ProtocolBgpDampeningProfileXml{} - for _, oProtocolBgpDampeningProfile := range o.Protocol.Bgp.DampeningProfile { - nestedProtocolBgpDampeningProfile := ProtocolBgpDampeningProfileXml{} - if _, ok := o.Misc["ProtocolBgpDampeningProfile"]; ok { - nestedProtocolBgpDampeningProfile.Misc = o.Misc["ProtocolBgpDampeningProfile"] + if o.Protocol.Bgp.AllowRedistDefaultRoute != nil { + nestedProtocol.Bgp.AllowRedistDefaultRoute = util.YesNo(o.Protocol.Bgp.AllowRedistDefaultRoute, nil) + } + if o.Protocol.Bgp.EnforceFirstAs != nil { + nestedProtocol.Bgp.EnforceFirstAs = util.YesNo(o.Protocol.Bgp.EnforceFirstAs, nil) + } + if o.Protocol.Bgp.GlobalBfd != nil { + nestedProtocol.Bgp.GlobalBfd = &ProtocolBgpGlobalBfdXml{} + if _, ok := o.Misc["ProtocolBgpGlobalBfd"]; ok { + nestedProtocol.Bgp.GlobalBfd.Misc = o.Misc["ProtocolBgpGlobalBfd"] + } + if o.Protocol.Bgp.GlobalBfd.Profile != nil { + nestedProtocol.Bgp.GlobalBfd.Profile = o.Protocol.Bgp.GlobalBfd.Profile + } + } + if o.Protocol.Bgp.LocalAs != nil { + nestedProtocol.Bgp.LocalAs = o.Protocol.Bgp.LocalAs + } + if o.Protocol.Bgp.RoutingOptions != nil { + nestedProtocol.Bgp.RoutingOptions = &ProtocolBgpRoutingOptionsXml{} + if _, ok := o.Misc["ProtocolBgpRoutingOptions"]; ok { + nestedProtocol.Bgp.RoutingOptions.Misc = o.Misc["ProtocolBgpRoutingOptions"] + } + if o.Protocol.Bgp.RoutingOptions.ReflectorClusterId != nil { + nestedProtocol.Bgp.RoutingOptions.ReflectorClusterId = o.Protocol.Bgp.RoutingOptions.ReflectorClusterId + } + if o.Protocol.Bgp.RoutingOptions.Aggregate != nil { + nestedProtocol.Bgp.RoutingOptions.Aggregate = &ProtocolBgpRoutingOptionsAggregateXml{} + if _, ok := o.Misc["ProtocolBgpRoutingOptionsAggregate"]; ok { + nestedProtocol.Bgp.RoutingOptions.Aggregate.Misc = o.Misc["ProtocolBgpRoutingOptionsAggregate"] } - if oProtocolBgpDampeningProfile.Enable != nil { - nestedProtocolBgpDampeningProfile.Enable = util.YesNo(oProtocolBgpDampeningProfile.Enable, nil) + if o.Protocol.Bgp.RoutingOptions.Aggregate.AggregateMed != nil { + nestedProtocol.Bgp.RoutingOptions.Aggregate.AggregateMed = util.YesNo(o.Protocol.Bgp.RoutingOptions.Aggregate.AggregateMed, nil) } - if oProtocolBgpDampeningProfile.Cutoff != nil { - nestedProtocolBgpDampeningProfile.Cutoff = oProtocolBgpDampeningProfile.Cutoff + } + if o.Protocol.Bgp.RoutingOptions.AsFormat != nil { + nestedProtocol.Bgp.RoutingOptions.AsFormat = o.Protocol.Bgp.RoutingOptions.AsFormat + } + if o.Protocol.Bgp.RoutingOptions.ConfederationMemberAs != nil { + nestedProtocol.Bgp.RoutingOptions.ConfederationMemberAs = o.Protocol.Bgp.RoutingOptions.ConfederationMemberAs + } + if o.Protocol.Bgp.RoutingOptions.DefaultLocalPreference != nil { + nestedProtocol.Bgp.RoutingOptions.DefaultLocalPreference = o.Protocol.Bgp.RoutingOptions.DefaultLocalPreference + } + if o.Protocol.Bgp.RoutingOptions.GracefulRestart != nil { + nestedProtocol.Bgp.RoutingOptions.GracefulRestart = &ProtocolBgpRoutingOptionsGracefulRestartXml{} + if _, ok := o.Misc["ProtocolBgpRoutingOptionsGracefulRestart"]; ok { + nestedProtocol.Bgp.RoutingOptions.GracefulRestart.Misc = o.Misc["ProtocolBgpRoutingOptionsGracefulRestart"] } - if oProtocolBgpDampeningProfile.Reuse != nil { - nestedProtocolBgpDampeningProfile.Reuse = oProtocolBgpDampeningProfile.Reuse + if o.Protocol.Bgp.RoutingOptions.GracefulRestart.Enable != nil { + nestedProtocol.Bgp.RoutingOptions.GracefulRestart.Enable = util.YesNo(o.Protocol.Bgp.RoutingOptions.GracefulRestart.Enable, nil) } - if oProtocolBgpDampeningProfile.MaxHoldTime != nil { - nestedProtocolBgpDampeningProfile.MaxHoldTime = oProtocolBgpDampeningProfile.MaxHoldTime + if o.Protocol.Bgp.RoutingOptions.GracefulRestart.LocalRestartTime != nil { + nestedProtocol.Bgp.RoutingOptions.GracefulRestart.LocalRestartTime = o.Protocol.Bgp.RoutingOptions.GracefulRestart.LocalRestartTime } - if oProtocolBgpDampeningProfile.DecayHalfLifeReachable != nil { - nestedProtocolBgpDampeningProfile.DecayHalfLifeReachable = oProtocolBgpDampeningProfile.DecayHalfLifeReachable + if o.Protocol.Bgp.RoutingOptions.GracefulRestart.MaxPeerRestartTime != nil { + nestedProtocol.Bgp.RoutingOptions.GracefulRestart.MaxPeerRestartTime = o.Protocol.Bgp.RoutingOptions.GracefulRestart.MaxPeerRestartTime } - if oProtocolBgpDampeningProfile.DecayHalfLifeUnreachable != nil { - nestedProtocolBgpDampeningProfile.DecayHalfLifeUnreachable = oProtocolBgpDampeningProfile.DecayHalfLifeUnreachable + if o.Protocol.Bgp.RoutingOptions.GracefulRestart.StaleRouteTime != nil { + nestedProtocol.Bgp.RoutingOptions.GracefulRestart.StaleRouteTime = o.Protocol.Bgp.RoutingOptions.GracefulRestart.StaleRouteTime } - if oProtocolBgpDampeningProfile.Name != "" { - nestedProtocolBgpDampeningProfile.Name = oProtocolBgpDampeningProfile.Name + } + if o.Protocol.Bgp.RoutingOptions.Med != nil { + nestedProtocol.Bgp.RoutingOptions.Med = &ProtocolBgpRoutingOptionsMedXml{} + if _, ok := o.Misc["ProtocolBgpRoutingOptionsMed"]; ok { + nestedProtocol.Bgp.RoutingOptions.Med.Misc = o.Misc["ProtocolBgpRoutingOptionsMed"] } - nestedProtocol.Bgp.DampeningProfile = append(nestedProtocol.Bgp.DampeningProfile, nestedProtocolBgpDampeningProfile) + if o.Protocol.Bgp.RoutingOptions.Med.AlwaysCompareMed != nil { + nestedProtocol.Bgp.RoutingOptions.Med.AlwaysCompareMed = util.YesNo(o.Protocol.Bgp.RoutingOptions.Med.AlwaysCompareMed, nil) + } + if o.Protocol.Bgp.RoutingOptions.Med.DeterministicMedComparison != nil { + nestedProtocol.Bgp.RoutingOptions.Med.DeterministicMedComparison = util.YesNo(o.Protocol.Bgp.RoutingOptions.Med.DeterministicMedComparison, nil) + } + } + } + if o.Protocol.Bgp.AuthProfile != nil { + nestedProtocol.Bgp.AuthProfile = []ProtocolBgpAuthProfileXml{} + for _, oProtocolBgpAuthProfile := range o.Protocol.Bgp.AuthProfile { + nestedProtocolBgpAuthProfile := ProtocolBgpAuthProfileXml{} + if _, ok := o.Misc["ProtocolBgpAuthProfile"]; ok { + nestedProtocolBgpAuthProfile.Misc = o.Misc["ProtocolBgpAuthProfile"] + } + if oProtocolBgpAuthProfile.Secret != nil { + nestedProtocolBgpAuthProfile.Secret = oProtocolBgpAuthProfile.Secret + } + if oProtocolBgpAuthProfile.Name != "" { + nestedProtocolBgpAuthProfile.Name = oProtocolBgpAuthProfile.Name + } + nestedProtocol.Bgp.AuthProfile = append(nestedProtocol.Bgp.AuthProfile, nestedProtocolBgpAuthProfile) } } + if o.Protocol.Bgp.Enable != nil { + nestedProtocol.Bgp.Enable = util.YesNo(o.Protocol.Bgp.Enable, nil) + } + if o.Protocol.Bgp.InstallRoute != nil { + nestedProtocol.Bgp.InstallRoute = util.YesNo(o.Protocol.Bgp.InstallRoute, nil) + } if o.Protocol.Bgp.Policy != nil { nestedProtocol.Bgp.Policy = &ProtocolBgpPolicyXml{} if _, ok := o.Misc["ProtocolBgpPolicy"]; ok { @@ -3808,9 +3792,6 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["ProtocolBgpPolicyAggregationAddress"]; ok { nestedProtocolBgpPolicyAggregationAddress.Misc = o.Misc["ProtocolBgpPolicyAggregationAddress"] } - if oProtocolBgpPolicyAggregationAddress.Name != "" { - nestedProtocolBgpPolicyAggregationAddress.Name = oProtocolBgpPolicyAggregationAddress.Name - } if oProtocolBgpPolicyAggregationAddress.Prefix != nil { nestedProtocolBgpPolicyAggregationAddress.Prefix = oProtocolBgpPolicyAggregationAddress.Prefix } @@ -3831,9 +3812,6 @@ func specifyEntry(o *Entry) (any, error) { if oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.LocalPreference != nil { nestedProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.LocalPreference = oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.LocalPreference } - if oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.Med != nil { - nestedProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.Med = oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.Med - } if oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.Weight != nil { nestedProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.Weight = oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.Weight } @@ -3843,17 +3821,11 @@ func specifyEntry(o *Entry) (any, error) { if oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.Origin != nil { nestedProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.Origin = oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.Origin } - if oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.AsPathLimit != nil { - nestedProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.AsPathLimit = oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.AsPathLimit - } if oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.AsPath != nil { nestedProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.AsPath = &ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesAsPathXml{} if _, ok := o.Misc["ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesAsPath"]; ok { nestedProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.AsPath.Misc = o.Misc["ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesAsPath"] } - if oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.AsPath.Prepend != nil { - nestedProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.AsPath.Prepend = oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.AsPath.Prepend - } if oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.AsPath.None != nil { nestedProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.AsPath.None = &ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesAsPathNoneXml{} if _, ok := o.Misc["ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesAsPathNone"]; ok { @@ -3866,12 +3838,24 @@ func specifyEntry(o *Entry) (any, error) { nestedProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.AsPath.Remove.Misc = o.Misc["ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesAsPathRemove"] } } + if oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.AsPath.Prepend != nil { + nestedProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.AsPath.Prepend = oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.AsPath.Prepend + } } if oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.Community != nil { nestedProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.Community = &ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesCommunityXml{} if _, ok := o.Misc["ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesCommunity"]; ok { nestedProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.Community.Misc = o.Misc["ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesCommunity"] } + if oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.Community.RemoveAll != nil { + nestedProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.Community.RemoveAll = &ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesCommunityRemoveAllXml{} + if _, ok := o.Misc["ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesCommunityRemoveAll"]; ok { + nestedProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.Community.RemoveAll.Misc = o.Misc["ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesCommunityRemoveAll"] + } + } + if oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.Community.RemoveRegex != nil { + nestedProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.Community.RemoveRegex = oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.Community.RemoveRegex + } if oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.Community.Append != nil { nestedProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.Community.Append = util.StrToMem(oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.Community.Append) } @@ -3884,15 +3868,12 @@ func specifyEntry(o *Entry) (any, error) { nestedProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.Community.None.Misc = o.Misc["ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesCommunityNone"] } } - if oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.Community.RemoveAll != nil { - nestedProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.Community.RemoveAll = &ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesCommunityRemoveAllXml{} - if _, ok := o.Misc["ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesCommunityRemoveAll"]; ok { - nestedProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.Community.RemoveAll.Misc = o.Misc["ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesCommunityRemoveAll"] - } - } - if oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.Community.RemoveRegex != nil { - nestedProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.Community.RemoveRegex = oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.Community.RemoveRegex - } + } + if oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.Med != nil { + nestedProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.Med = oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.Med + } + if oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.AsPathLimit != nil { + nestedProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.AsPathLimit = oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.AsPathLimit } if oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.ExtendedCommunity != nil { nestedProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.ExtendedCommunity = &ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesExtendedCommunityXml{} @@ -3929,32 +3910,14 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["ProtocolBgpPolicyAggregationAddressSuppressFilters"]; ok { nestedProtocolBgpPolicyAggregationAddressSuppressFilters.Misc = o.Misc["ProtocolBgpPolicyAggregationAddressSuppressFilters"] } + if oProtocolBgpPolicyAggregationAddressSuppressFilters.Enable != nil { + nestedProtocolBgpPolicyAggregationAddressSuppressFilters.Enable = util.YesNo(oProtocolBgpPolicyAggregationAddressSuppressFilters.Enable, nil) + } if oProtocolBgpPolicyAggregationAddressSuppressFilters.Match != nil { nestedProtocolBgpPolicyAggregationAddressSuppressFilters.Match = &ProtocolBgpPolicyAggregationAddressSuppressFiltersMatchXml{} if _, ok := o.Misc["ProtocolBgpPolicyAggregationAddressSuppressFiltersMatch"]; ok { nestedProtocolBgpPolicyAggregationAddressSuppressFilters.Match.Misc = o.Misc["ProtocolBgpPolicyAggregationAddressSuppressFiltersMatch"] } - if oProtocolBgpPolicyAggregationAddressSuppressFilters.Match.Community != nil { - nestedProtocolBgpPolicyAggregationAddressSuppressFilters.Match.Community = &ProtocolBgpPolicyAggregationAddressSuppressFiltersMatchCommunityXml{} - if _, ok := o.Misc["ProtocolBgpPolicyAggregationAddressSuppressFiltersMatchCommunity"]; ok { - nestedProtocolBgpPolicyAggregationAddressSuppressFilters.Match.Community.Misc = o.Misc["ProtocolBgpPolicyAggregationAddressSuppressFiltersMatchCommunity"] - } - if oProtocolBgpPolicyAggregationAddressSuppressFilters.Match.Community.Regex != nil { - nestedProtocolBgpPolicyAggregationAddressSuppressFilters.Match.Community.Regex = oProtocolBgpPolicyAggregationAddressSuppressFilters.Match.Community.Regex - } - } - if oProtocolBgpPolicyAggregationAddressSuppressFilters.Match.ExtendedCommunity != nil { - nestedProtocolBgpPolicyAggregationAddressSuppressFilters.Match.ExtendedCommunity = &ProtocolBgpPolicyAggregationAddressSuppressFiltersMatchExtendedCommunityXml{} - if _, ok := o.Misc["ProtocolBgpPolicyAggregationAddressSuppressFiltersMatchExtendedCommunity"]; ok { - nestedProtocolBgpPolicyAggregationAddressSuppressFilters.Match.ExtendedCommunity.Misc = o.Misc["ProtocolBgpPolicyAggregationAddressSuppressFiltersMatchExtendedCommunity"] - } - if oProtocolBgpPolicyAggregationAddressSuppressFilters.Match.ExtendedCommunity.Regex != nil { - nestedProtocolBgpPolicyAggregationAddressSuppressFilters.Match.ExtendedCommunity.Regex = oProtocolBgpPolicyAggregationAddressSuppressFilters.Match.ExtendedCommunity.Regex - } - } - if oProtocolBgpPolicyAggregationAddressSuppressFilters.Match.RouteTable != nil { - nestedProtocolBgpPolicyAggregationAddressSuppressFilters.Match.RouteTable = oProtocolBgpPolicyAggregationAddressSuppressFilters.Match.RouteTable - } if oProtocolBgpPolicyAggregationAddressSuppressFilters.Match.Med != nil { nestedProtocolBgpPolicyAggregationAddressSuppressFilters.Match.Med = oProtocolBgpPolicyAggregationAddressSuppressFilters.Match.Med } @@ -3989,13 +3952,31 @@ func specifyEntry(o *Entry) (any, error) { nestedProtocolBgpPolicyAggregationAddressSuppressFilters.Match.AsPath.Regex = oProtocolBgpPolicyAggregationAddressSuppressFilters.Match.AsPath.Regex } } + if oProtocolBgpPolicyAggregationAddressSuppressFilters.Match.Community != nil { + nestedProtocolBgpPolicyAggregationAddressSuppressFilters.Match.Community = &ProtocolBgpPolicyAggregationAddressSuppressFiltersMatchCommunityXml{} + if _, ok := o.Misc["ProtocolBgpPolicyAggregationAddressSuppressFiltersMatchCommunity"]; ok { + nestedProtocolBgpPolicyAggregationAddressSuppressFilters.Match.Community.Misc = o.Misc["ProtocolBgpPolicyAggregationAddressSuppressFiltersMatchCommunity"] + } + if oProtocolBgpPolicyAggregationAddressSuppressFilters.Match.Community.Regex != nil { + nestedProtocolBgpPolicyAggregationAddressSuppressFilters.Match.Community.Regex = oProtocolBgpPolicyAggregationAddressSuppressFilters.Match.Community.Regex + } + } + if oProtocolBgpPolicyAggregationAddressSuppressFilters.Match.ExtendedCommunity != nil { + nestedProtocolBgpPolicyAggregationAddressSuppressFilters.Match.ExtendedCommunity = &ProtocolBgpPolicyAggregationAddressSuppressFiltersMatchExtendedCommunityXml{} + if _, ok := o.Misc["ProtocolBgpPolicyAggregationAddressSuppressFiltersMatchExtendedCommunity"]; ok { + nestedProtocolBgpPolicyAggregationAddressSuppressFilters.Match.ExtendedCommunity.Misc = o.Misc["ProtocolBgpPolicyAggregationAddressSuppressFiltersMatchExtendedCommunity"] + } + if oProtocolBgpPolicyAggregationAddressSuppressFilters.Match.ExtendedCommunity.Regex != nil { + nestedProtocolBgpPolicyAggregationAddressSuppressFilters.Match.ExtendedCommunity.Regex = oProtocolBgpPolicyAggregationAddressSuppressFilters.Match.ExtendedCommunity.Regex + } + } + if oProtocolBgpPolicyAggregationAddressSuppressFilters.Match.RouteTable != nil { + nestedProtocolBgpPolicyAggregationAddressSuppressFilters.Match.RouteTable = oProtocolBgpPolicyAggregationAddressSuppressFilters.Match.RouteTable + } } if oProtocolBgpPolicyAggregationAddressSuppressFilters.Name != "" { nestedProtocolBgpPolicyAggregationAddressSuppressFilters.Name = oProtocolBgpPolicyAggregationAddressSuppressFilters.Name } - if oProtocolBgpPolicyAggregationAddressSuppressFilters.Enable != nil { - nestedProtocolBgpPolicyAggregationAddressSuppressFilters.Enable = util.YesNo(oProtocolBgpPolicyAggregationAddressSuppressFilters.Enable, nil) - } nestedProtocolBgpPolicyAggregationAddress.SuppressFilters = append(nestedProtocolBgpPolicyAggregationAddress.SuppressFilters, nestedProtocolBgpPolicyAggregationAddressSuppressFilters) } } @@ -4006,6 +3987,9 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["ProtocolBgpPolicyAggregationAddressAdvertiseFilters"]; ok { nestedProtocolBgpPolicyAggregationAddressAdvertiseFilters.Misc = o.Misc["ProtocolBgpPolicyAggregationAddressAdvertiseFilters"] } + if oProtocolBgpPolicyAggregationAddressAdvertiseFilters.Name != "" { + nestedProtocolBgpPolicyAggregationAddressAdvertiseFilters.Name = oProtocolBgpPolicyAggregationAddressAdvertiseFilters.Name + } if oProtocolBgpPolicyAggregationAddressAdvertiseFilters.Enable != nil { nestedProtocolBgpPolicyAggregationAddressAdvertiseFilters.Enable = util.YesNo(oProtocolBgpPolicyAggregationAddressAdvertiseFilters.Enable, nil) } @@ -4014,6 +3998,31 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["ProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatch"]; ok { nestedProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.Misc = o.Misc["ProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatch"] } + if oProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.Med != nil { + nestedProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.Med = oProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.Med + } + if oProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.AddressPrefix != nil { + nestedProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.AddressPrefix = []ProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefixXml{} + for _, oProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix := range oProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.AddressPrefix { + nestedProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix := ProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefixXml{} + if _, ok := o.Misc["ProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix"]; ok { + nestedProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix.Misc = o.Misc["ProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix"] + } + if oProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix.Name != "" { + nestedProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix.Name = oProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix.Name + } + if oProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix.Exact != nil { + nestedProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix.Exact = util.YesNo(oProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix.Exact, nil) + } + nestedProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.AddressPrefix = append(nestedProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.AddressPrefix, nestedProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix) + } + } + if oProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.Nexthop != nil { + nestedProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.Nexthop = util.StrToMem(oProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.Nexthop) + } + if oProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.FromPeer != nil { + nestedProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.FromPeer = util.StrToMem(oProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.FromPeer) + } if oProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.AsPath != nil { nestedProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.AsPath = &ProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAsPathXml{} if _, ok := o.Misc["ProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAsPath"]; ok { @@ -4044,38 +4053,13 @@ func specifyEntry(o *Entry) (any, error) { if oProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.RouteTable != nil { nestedProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.RouteTable = oProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.RouteTable } - if oProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.Med != nil { - nestedProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.Med = oProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.Med - } - if oProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.AddressPrefix != nil { - nestedProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.AddressPrefix = []ProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefixXml{} - for _, oProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix := range oProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.AddressPrefix { - nestedProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix := ProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefixXml{} - if _, ok := o.Misc["ProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix"]; ok { - nestedProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix.Misc = o.Misc["ProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix"] - } - if oProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix.Exact != nil { - nestedProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix.Exact = util.YesNo(oProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix.Exact, nil) - } - if oProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix.Name != "" { - nestedProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix.Name = oProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix.Name - } - nestedProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.AddressPrefix = append(nestedProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.AddressPrefix, nestedProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix) - } - } - if oProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.Nexthop != nil { - nestedProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.Nexthop = util.StrToMem(oProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.Nexthop) - } - if oProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.FromPeer != nil { - nestedProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.FromPeer = util.StrToMem(oProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.FromPeer) - } - } - if oProtocolBgpPolicyAggregationAddressAdvertiseFilters.Name != "" { - nestedProtocolBgpPolicyAggregationAddressAdvertiseFilters.Name = oProtocolBgpPolicyAggregationAddressAdvertiseFilters.Name } nestedProtocolBgpPolicyAggregationAddress.AdvertiseFilters = append(nestedProtocolBgpPolicyAggregationAddress.AdvertiseFilters, nestedProtocolBgpPolicyAggregationAddressAdvertiseFilters) } } + if oProtocolBgpPolicyAggregationAddress.Name != "" { + nestedProtocolBgpPolicyAggregationAddress.Name = oProtocolBgpPolicyAggregationAddress.Name + } nestedProtocol.Bgp.Policy.Aggregation.Address = append(nestedProtocol.Bgp.Policy.Aggregation.Address, nestedProtocolBgpPolicyAggregationAddress) } } @@ -4092,12 +4076,6 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["ProtocolBgpPolicyConditionalAdvertisementPolicy"]; ok { nestedProtocolBgpPolicyConditionalAdvertisementPolicy.Misc = o.Misc["ProtocolBgpPolicyConditionalAdvertisementPolicy"] } - if oProtocolBgpPolicyConditionalAdvertisementPolicy.Enable != nil { - nestedProtocolBgpPolicyConditionalAdvertisementPolicy.Enable = util.YesNo(oProtocolBgpPolicyConditionalAdvertisementPolicy.Enable, nil) - } - if oProtocolBgpPolicyConditionalAdvertisementPolicy.UsedBy != nil { - nestedProtocolBgpPolicyConditionalAdvertisementPolicy.UsedBy = util.StrToMem(oProtocolBgpPolicyConditionalAdvertisementPolicy.UsedBy) - } if oProtocolBgpPolicyConditionalAdvertisementPolicy.NonExistFilters != nil { nestedProtocolBgpPolicyConditionalAdvertisementPolicy.NonExistFilters = []ProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFiltersXml{} for _, oProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters := range oProtocolBgpPolicyConditionalAdvertisementPolicy.NonExistFilters { @@ -4113,6 +4091,21 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["ProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFiltersMatch"]; ok { nestedProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters.Match.Misc = o.Misc["ProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFiltersMatch"] } + if oProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters.Match.Nexthop != nil { + nestedProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters.Match.Nexthop = util.StrToMem(oProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters.Match.Nexthop) + } + if oProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters.Match.FromPeer != nil { + nestedProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters.Match.FromPeer = util.StrToMem(oProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters.Match.FromPeer) + } + if oProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters.Match.AsPath != nil { + nestedProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters.Match.AsPath = &ProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFiltersMatchAsPathXml{} + if _, ok := o.Misc["ProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFiltersMatchAsPath"]; ok { + nestedProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters.Match.AsPath.Misc = o.Misc["ProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFiltersMatchAsPath"] + } + if oProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters.Match.AsPath.Regex != nil { + nestedProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters.Match.AsPath.Regex = oProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters.Match.AsPath.Regex + } + } if oProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters.Match.Community != nil { nestedProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters.Match.Community = &ProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFiltersMatchCommunityXml{} if _, ok := o.Misc["ProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFiltersMatchCommunity"]; ok { @@ -4150,21 +4143,6 @@ func specifyEntry(o *Entry) (any, error) { nestedProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters.Match.AddressPrefix = append(nestedProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters.Match.AddressPrefix, nestedProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFiltersMatchAddressPrefix) } } - if oProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters.Match.Nexthop != nil { - nestedProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters.Match.Nexthop = util.StrToMem(oProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters.Match.Nexthop) - } - if oProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters.Match.FromPeer != nil { - nestedProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters.Match.FromPeer = util.StrToMem(oProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters.Match.FromPeer) - } - if oProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters.Match.AsPath != nil { - nestedProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters.Match.AsPath = &ProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFiltersMatchAsPathXml{} - if _, ok := o.Misc["ProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFiltersMatchAsPath"]; ok { - nestedProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters.Match.AsPath.Misc = o.Misc["ProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFiltersMatchAsPath"] - } - if oProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters.Match.AsPath.Regex != nil { - nestedProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters.Match.AsPath.Regex = oProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters.Match.AsPath.Regex - } - } } if oProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters.Name != "" { nestedProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters.Name = oProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters.Name @@ -4187,21 +4165,6 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatch"]; ok { nestedProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.Misc = o.Misc["ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatch"] } - if oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.ExtendedCommunity != nil { - nestedProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.ExtendedCommunity = &ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchExtendedCommunityXml{} - if _, ok := o.Misc["ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchExtendedCommunity"]; ok { - nestedProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.ExtendedCommunity.Misc = o.Misc["ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchExtendedCommunity"] - } - if oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.ExtendedCommunity.Regex != nil { - nestedProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.ExtendedCommunity.Regex = oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.ExtendedCommunity.Regex - } - } - if oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.RouteTable != nil { - nestedProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.RouteTable = oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.RouteTable - } - if oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.Med != nil { - nestedProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.Med = oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.Med - } if oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.AddressPrefix != nil { nestedProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.AddressPrefix = []ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchAddressPrefixXml{} for _, oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchAddressPrefix := range oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.AddressPrefix { @@ -4239,6 +4202,21 @@ func specifyEntry(o *Entry) (any, error) { nestedProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.Community.Regex = oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.Community.Regex } } + if oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.ExtendedCommunity != nil { + nestedProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.ExtendedCommunity = &ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchExtendedCommunityXml{} + if _, ok := o.Misc["ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchExtendedCommunity"]; ok { + nestedProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.ExtendedCommunity.Misc = o.Misc["ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchExtendedCommunity"] + } + if oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.ExtendedCommunity.Regex != nil { + nestedProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.ExtendedCommunity.Regex = oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.ExtendedCommunity.Regex + } + } + if oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.RouteTable != nil { + nestedProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.RouteTable = oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.RouteTable + } + if oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.Med != nil { + nestedProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.Med = oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.Med + } } if oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Name != "" { nestedProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Name = oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Name @@ -4249,6 +4227,12 @@ func specifyEntry(o *Entry) (any, error) { if oProtocolBgpPolicyConditionalAdvertisementPolicy.Name != "" { nestedProtocolBgpPolicyConditionalAdvertisementPolicy.Name = oProtocolBgpPolicyConditionalAdvertisementPolicy.Name } + if oProtocolBgpPolicyConditionalAdvertisementPolicy.Enable != nil { + nestedProtocolBgpPolicyConditionalAdvertisementPolicy.Enable = util.YesNo(oProtocolBgpPolicyConditionalAdvertisementPolicy.Enable, nil) + } + if oProtocolBgpPolicyConditionalAdvertisementPolicy.UsedBy != nil { + nestedProtocolBgpPolicyConditionalAdvertisementPolicy.UsedBy = util.StrToMem(oProtocolBgpPolicyConditionalAdvertisementPolicy.UsedBy) + } nestedProtocol.Bgp.Policy.ConditionalAdvertisement.Policy = append(nestedProtocol.Bgp.Policy.ConditionalAdvertisement.Policy, nestedProtocolBgpPolicyConditionalAdvertisementPolicy) } } @@ -4265,6 +4249,9 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["ProtocolBgpPolicyExportRules"]; ok { nestedProtocolBgpPolicyExportRules.Misc = o.Misc["ProtocolBgpPolicyExportRules"] } + if oProtocolBgpPolicyExportRules.Name != "" { + nestedProtocolBgpPolicyExportRules.Name = oProtocolBgpPolicyExportRules.Name + } if oProtocolBgpPolicyExportRules.Enable != nil { nestedProtocolBgpPolicyExportRules.Enable = util.YesNo(oProtocolBgpPolicyExportRules.Enable, nil) } @@ -4276,25 +4263,6 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["ProtocolBgpPolicyExportRulesMatch"]; ok { nestedProtocolBgpPolicyExportRules.Match.Misc = o.Misc["ProtocolBgpPolicyExportRulesMatch"] } - if oProtocolBgpPolicyExportRules.Match.AddressPrefix != nil { - nestedProtocolBgpPolicyExportRules.Match.AddressPrefix = []ProtocolBgpPolicyExportRulesMatchAddressPrefixXml{} - for _, oProtocolBgpPolicyExportRulesMatchAddressPrefix := range oProtocolBgpPolicyExportRules.Match.AddressPrefix { - nestedProtocolBgpPolicyExportRulesMatchAddressPrefix := ProtocolBgpPolicyExportRulesMatchAddressPrefixXml{} - if _, ok := o.Misc["ProtocolBgpPolicyExportRulesMatchAddressPrefix"]; ok { - nestedProtocolBgpPolicyExportRulesMatchAddressPrefix.Misc = o.Misc["ProtocolBgpPolicyExportRulesMatchAddressPrefix"] - } - if oProtocolBgpPolicyExportRulesMatchAddressPrefix.Exact != nil { - nestedProtocolBgpPolicyExportRulesMatchAddressPrefix.Exact = util.YesNo(oProtocolBgpPolicyExportRulesMatchAddressPrefix.Exact, nil) - } - if oProtocolBgpPolicyExportRulesMatchAddressPrefix.Name != "" { - nestedProtocolBgpPolicyExportRulesMatchAddressPrefix.Name = oProtocolBgpPolicyExportRulesMatchAddressPrefix.Name - } - nestedProtocolBgpPolicyExportRules.Match.AddressPrefix = append(nestedProtocolBgpPolicyExportRules.Match.AddressPrefix, nestedProtocolBgpPolicyExportRulesMatchAddressPrefix) - } - } - if oProtocolBgpPolicyExportRules.Match.Nexthop != nil { - nestedProtocolBgpPolicyExportRules.Match.Nexthop = util.StrToMem(oProtocolBgpPolicyExportRules.Match.Nexthop) - } if oProtocolBgpPolicyExportRules.Match.FromPeer != nil { nestedProtocolBgpPolicyExportRules.Match.FromPeer = util.StrToMem(oProtocolBgpPolicyExportRules.Match.FromPeer) } @@ -4331,18 +4299,31 @@ func specifyEntry(o *Entry) (any, error) { if oProtocolBgpPolicyExportRules.Match.Med != nil { nestedProtocolBgpPolicyExportRules.Match.Med = oProtocolBgpPolicyExportRules.Match.Med } + if oProtocolBgpPolicyExportRules.Match.AddressPrefix != nil { + nestedProtocolBgpPolicyExportRules.Match.AddressPrefix = []ProtocolBgpPolicyExportRulesMatchAddressPrefixXml{} + for _, oProtocolBgpPolicyExportRulesMatchAddressPrefix := range oProtocolBgpPolicyExportRules.Match.AddressPrefix { + nestedProtocolBgpPolicyExportRulesMatchAddressPrefix := ProtocolBgpPolicyExportRulesMatchAddressPrefixXml{} + if _, ok := o.Misc["ProtocolBgpPolicyExportRulesMatchAddressPrefix"]; ok { + nestedProtocolBgpPolicyExportRulesMatchAddressPrefix.Misc = o.Misc["ProtocolBgpPolicyExportRulesMatchAddressPrefix"] + } + if oProtocolBgpPolicyExportRulesMatchAddressPrefix.Exact != nil { + nestedProtocolBgpPolicyExportRulesMatchAddressPrefix.Exact = util.YesNo(oProtocolBgpPolicyExportRulesMatchAddressPrefix.Exact, nil) + } + if oProtocolBgpPolicyExportRulesMatchAddressPrefix.Name != "" { + nestedProtocolBgpPolicyExportRulesMatchAddressPrefix.Name = oProtocolBgpPolicyExportRulesMatchAddressPrefix.Name + } + nestedProtocolBgpPolicyExportRules.Match.AddressPrefix = append(nestedProtocolBgpPolicyExportRules.Match.AddressPrefix, nestedProtocolBgpPolicyExportRulesMatchAddressPrefix) + } + } + if oProtocolBgpPolicyExportRules.Match.Nexthop != nil { + nestedProtocolBgpPolicyExportRules.Match.Nexthop = util.StrToMem(oProtocolBgpPolicyExportRules.Match.Nexthop) + } } if oProtocolBgpPolicyExportRules.Action != nil { nestedProtocolBgpPolicyExportRules.Action = &ProtocolBgpPolicyExportRulesActionXml{} if _, ok := o.Misc["ProtocolBgpPolicyExportRulesAction"]; ok { nestedProtocolBgpPolicyExportRules.Action.Misc = o.Misc["ProtocolBgpPolicyExportRulesAction"] } - if oProtocolBgpPolicyExportRules.Action.Deny != nil { - nestedProtocolBgpPolicyExportRules.Action.Deny = &ProtocolBgpPolicyExportRulesActionDenyXml{} - if _, ok := o.Misc["ProtocolBgpPolicyExportRulesActionDeny"]; ok { - nestedProtocolBgpPolicyExportRules.Action.Deny.Misc = o.Misc["ProtocolBgpPolicyExportRulesActionDeny"] - } - } if oProtocolBgpPolicyExportRules.Action.Allow != nil { nestedProtocolBgpPolicyExportRules.Action.Allow = &ProtocolBgpPolicyExportRulesActionAllowXml{} if _, ok := o.Misc["ProtocolBgpPolicyExportRulesActionAllow"]; ok { @@ -4353,18 +4334,6 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["ProtocolBgpPolicyExportRulesActionAllowUpdate"]; ok { nestedProtocolBgpPolicyExportRules.Action.Allow.Update.Misc = o.Misc["ProtocolBgpPolicyExportRulesActionAllowUpdate"] } - if oProtocolBgpPolicyExportRules.Action.Allow.Update.Med != nil { - nestedProtocolBgpPolicyExportRules.Action.Allow.Update.Med = oProtocolBgpPolicyExportRules.Action.Allow.Update.Med - } - if oProtocolBgpPolicyExportRules.Action.Allow.Update.Nexthop != nil { - nestedProtocolBgpPolicyExportRules.Action.Allow.Update.Nexthop = oProtocolBgpPolicyExportRules.Action.Allow.Update.Nexthop - } - if oProtocolBgpPolicyExportRules.Action.Allow.Update.Origin != nil { - nestedProtocolBgpPolicyExportRules.Action.Allow.Update.Origin = oProtocolBgpPolicyExportRules.Action.Allow.Update.Origin - } - if oProtocolBgpPolicyExportRules.Action.Allow.Update.AsPathLimit != nil { - nestedProtocolBgpPolicyExportRules.Action.Allow.Update.AsPathLimit = oProtocolBgpPolicyExportRules.Action.Allow.Update.AsPathLimit - } if oProtocolBgpPolicyExportRules.Action.Allow.Update.AsPath != nil { nestedProtocolBgpPolicyExportRules.Action.Allow.Update.AsPath = &ProtocolBgpPolicyExportRulesActionAllowUpdateAsPathXml{} if _, ok := o.Misc["ProtocolBgpPolicyExportRulesActionAllowUpdateAsPath"]; ok { @@ -4421,6 +4390,12 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["ProtocolBgpPolicyExportRulesActionAllowUpdateExtendedCommunity"]; ok { nestedProtocolBgpPolicyExportRules.Action.Allow.Update.ExtendedCommunity.Misc = o.Misc["ProtocolBgpPolicyExportRulesActionAllowUpdateExtendedCommunity"] } + if oProtocolBgpPolicyExportRules.Action.Allow.Update.ExtendedCommunity.Append != nil { + nestedProtocolBgpPolicyExportRules.Action.Allow.Update.ExtendedCommunity.Append = util.StrToMem(oProtocolBgpPolicyExportRules.Action.Allow.Update.ExtendedCommunity.Append) + } + if oProtocolBgpPolicyExportRules.Action.Allow.Update.ExtendedCommunity.Overwrite != nil { + nestedProtocolBgpPolicyExportRules.Action.Allow.Update.ExtendedCommunity.Overwrite = util.StrToMem(oProtocolBgpPolicyExportRules.Action.Allow.Update.ExtendedCommunity.Overwrite) + } if oProtocolBgpPolicyExportRules.Action.Allow.Update.ExtendedCommunity.None != nil { nestedProtocolBgpPolicyExportRules.Action.Allow.Update.ExtendedCommunity.None = &ProtocolBgpPolicyExportRulesActionAllowUpdateExtendedCommunityNoneXml{} if _, ok := o.Misc["ProtocolBgpPolicyExportRulesActionAllowUpdateExtendedCommunityNone"]; ok { @@ -4436,23 +4411,32 @@ func specifyEntry(o *Entry) (any, error) { if oProtocolBgpPolicyExportRules.Action.Allow.Update.ExtendedCommunity.RemoveRegex != nil { nestedProtocolBgpPolicyExportRules.Action.Allow.Update.ExtendedCommunity.RemoveRegex = oProtocolBgpPolicyExportRules.Action.Allow.Update.ExtendedCommunity.RemoveRegex } - if oProtocolBgpPolicyExportRules.Action.Allow.Update.ExtendedCommunity.Append != nil { - nestedProtocolBgpPolicyExportRules.Action.Allow.Update.ExtendedCommunity.Append = util.StrToMem(oProtocolBgpPolicyExportRules.Action.Allow.Update.ExtendedCommunity.Append) - } - if oProtocolBgpPolicyExportRules.Action.Allow.Update.ExtendedCommunity.Overwrite != nil { - nestedProtocolBgpPolicyExportRules.Action.Allow.Update.ExtendedCommunity.Overwrite = util.StrToMem(oProtocolBgpPolicyExportRules.Action.Allow.Update.ExtendedCommunity.Overwrite) - } } if oProtocolBgpPolicyExportRules.Action.Allow.Update.LocalPreference != nil { nestedProtocolBgpPolicyExportRules.Action.Allow.Update.LocalPreference = oProtocolBgpPolicyExportRules.Action.Allow.Update.LocalPreference } + if oProtocolBgpPolicyExportRules.Action.Allow.Update.Med != nil { + nestedProtocolBgpPolicyExportRules.Action.Allow.Update.Med = oProtocolBgpPolicyExportRules.Action.Allow.Update.Med + } + if oProtocolBgpPolicyExportRules.Action.Allow.Update.Nexthop != nil { + nestedProtocolBgpPolicyExportRules.Action.Allow.Update.Nexthop = oProtocolBgpPolicyExportRules.Action.Allow.Update.Nexthop + } + if oProtocolBgpPolicyExportRules.Action.Allow.Update.Origin != nil { + nestedProtocolBgpPolicyExportRules.Action.Allow.Update.Origin = oProtocolBgpPolicyExportRules.Action.Allow.Update.Origin + } + if oProtocolBgpPolicyExportRules.Action.Allow.Update.AsPathLimit != nil { + nestedProtocolBgpPolicyExportRules.Action.Allow.Update.AsPathLimit = oProtocolBgpPolicyExportRules.Action.Allow.Update.AsPathLimit + } } } - } - if oProtocolBgpPolicyExportRules.Name != "" { - nestedProtocolBgpPolicyExportRules.Name = oProtocolBgpPolicyExportRules.Name - } - nestedProtocol.Bgp.Policy.Export.Rules = append(nestedProtocol.Bgp.Policy.Export.Rules, nestedProtocolBgpPolicyExportRules) + if oProtocolBgpPolicyExportRules.Action.Deny != nil { + nestedProtocolBgpPolicyExportRules.Action.Deny = &ProtocolBgpPolicyExportRulesActionDenyXml{} + if _, ok := o.Misc["ProtocolBgpPolicyExportRulesActionDeny"]; ok { + nestedProtocolBgpPolicyExportRules.Action.Deny.Misc = o.Misc["ProtocolBgpPolicyExportRulesActionDeny"] + } + } + } + nestedProtocol.Bgp.Policy.Export.Rules = append(nestedProtocol.Bgp.Policy.Export.Rules, nestedProtocolBgpPolicyExportRules) } } } @@ -4468,9 +4452,6 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["ProtocolBgpPolicyImportRules"]; ok { nestedProtocolBgpPolicyImportRules.Misc = o.Misc["ProtocolBgpPolicyImportRules"] } - if oProtocolBgpPolicyImportRules.Name != "" { - nestedProtocolBgpPolicyImportRules.Name = oProtocolBgpPolicyImportRules.Name - } if oProtocolBgpPolicyImportRules.Enable != nil { nestedProtocolBgpPolicyImportRules.Enable = util.YesNo(oProtocolBgpPolicyImportRules.Enable, nil) } @@ -4482,6 +4463,31 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["ProtocolBgpPolicyImportRulesMatch"]; ok { nestedProtocolBgpPolicyImportRules.Match.Misc = o.Misc["ProtocolBgpPolicyImportRulesMatch"] } + if oProtocolBgpPolicyImportRules.Match.RouteTable != nil { + nestedProtocolBgpPolicyImportRules.Match.RouteTable = oProtocolBgpPolicyImportRules.Match.RouteTable + } + if oProtocolBgpPolicyImportRules.Match.Med != nil { + nestedProtocolBgpPolicyImportRules.Match.Med = oProtocolBgpPolicyImportRules.Match.Med + } + if oProtocolBgpPolicyImportRules.Match.AddressPrefix != nil { + nestedProtocolBgpPolicyImportRules.Match.AddressPrefix = []ProtocolBgpPolicyImportRulesMatchAddressPrefixXml{} + for _, oProtocolBgpPolicyImportRulesMatchAddressPrefix := range oProtocolBgpPolicyImportRules.Match.AddressPrefix { + nestedProtocolBgpPolicyImportRulesMatchAddressPrefix := ProtocolBgpPolicyImportRulesMatchAddressPrefixXml{} + if _, ok := o.Misc["ProtocolBgpPolicyImportRulesMatchAddressPrefix"]; ok { + nestedProtocolBgpPolicyImportRulesMatchAddressPrefix.Misc = o.Misc["ProtocolBgpPolicyImportRulesMatchAddressPrefix"] + } + if oProtocolBgpPolicyImportRulesMatchAddressPrefix.Exact != nil { + nestedProtocolBgpPolicyImportRulesMatchAddressPrefix.Exact = util.YesNo(oProtocolBgpPolicyImportRulesMatchAddressPrefix.Exact, nil) + } + if oProtocolBgpPolicyImportRulesMatchAddressPrefix.Name != "" { + nestedProtocolBgpPolicyImportRulesMatchAddressPrefix.Name = oProtocolBgpPolicyImportRulesMatchAddressPrefix.Name + } + nestedProtocolBgpPolicyImportRules.Match.AddressPrefix = append(nestedProtocolBgpPolicyImportRules.Match.AddressPrefix, nestedProtocolBgpPolicyImportRulesMatchAddressPrefix) + } + } + if oProtocolBgpPolicyImportRules.Match.Nexthop != nil { + nestedProtocolBgpPolicyImportRules.Match.Nexthop = util.StrToMem(oProtocolBgpPolicyImportRules.Match.Nexthop) + } if oProtocolBgpPolicyImportRules.Match.FromPeer != nil { nestedProtocolBgpPolicyImportRules.Match.FromPeer = util.StrToMem(oProtocolBgpPolicyImportRules.Match.FromPeer) } @@ -4512,31 +4518,6 @@ func specifyEntry(o *Entry) (any, error) { nestedProtocolBgpPolicyImportRules.Match.ExtendedCommunity.Regex = oProtocolBgpPolicyImportRules.Match.ExtendedCommunity.Regex } } - if oProtocolBgpPolicyImportRules.Match.RouteTable != nil { - nestedProtocolBgpPolicyImportRules.Match.RouteTable = oProtocolBgpPolicyImportRules.Match.RouteTable - } - if oProtocolBgpPolicyImportRules.Match.Med != nil { - nestedProtocolBgpPolicyImportRules.Match.Med = oProtocolBgpPolicyImportRules.Match.Med - } - if oProtocolBgpPolicyImportRules.Match.AddressPrefix != nil { - nestedProtocolBgpPolicyImportRules.Match.AddressPrefix = []ProtocolBgpPolicyImportRulesMatchAddressPrefixXml{} - for _, oProtocolBgpPolicyImportRulesMatchAddressPrefix := range oProtocolBgpPolicyImportRules.Match.AddressPrefix { - nestedProtocolBgpPolicyImportRulesMatchAddressPrefix := ProtocolBgpPolicyImportRulesMatchAddressPrefixXml{} - if _, ok := o.Misc["ProtocolBgpPolicyImportRulesMatchAddressPrefix"]; ok { - nestedProtocolBgpPolicyImportRulesMatchAddressPrefix.Misc = o.Misc["ProtocolBgpPolicyImportRulesMatchAddressPrefix"] - } - if oProtocolBgpPolicyImportRulesMatchAddressPrefix.Exact != nil { - nestedProtocolBgpPolicyImportRulesMatchAddressPrefix.Exact = util.YesNo(oProtocolBgpPolicyImportRulesMatchAddressPrefix.Exact, nil) - } - if oProtocolBgpPolicyImportRulesMatchAddressPrefix.Name != "" { - nestedProtocolBgpPolicyImportRulesMatchAddressPrefix.Name = oProtocolBgpPolicyImportRulesMatchAddressPrefix.Name - } - nestedProtocolBgpPolicyImportRules.Match.AddressPrefix = append(nestedProtocolBgpPolicyImportRules.Match.AddressPrefix, nestedProtocolBgpPolicyImportRulesMatchAddressPrefix) - } - } - if oProtocolBgpPolicyImportRules.Match.Nexthop != nil { - nestedProtocolBgpPolicyImportRules.Match.Nexthop = util.StrToMem(oProtocolBgpPolicyImportRules.Match.Nexthop) - } } if oProtocolBgpPolicyImportRules.Action != nil { nestedProtocolBgpPolicyImportRules.Action = &ProtocolBgpPolicyImportRulesActionXml{} @@ -4562,11 +4543,47 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["ProtocolBgpPolicyImportRulesActionAllowUpdate"]; ok { nestedProtocolBgpPolicyImportRules.Action.Allow.Update.Misc = o.Misc["ProtocolBgpPolicyImportRulesActionAllowUpdate"] } + if oProtocolBgpPolicyImportRules.Action.Allow.Update.Weight != nil { + nestedProtocolBgpPolicyImportRules.Action.Allow.Update.Weight = oProtocolBgpPolicyImportRules.Action.Allow.Update.Weight + } + if oProtocolBgpPolicyImportRules.Action.Allow.Update.Origin != nil { + nestedProtocolBgpPolicyImportRules.Action.Allow.Update.Origin = oProtocolBgpPolicyImportRules.Action.Allow.Update.Origin + } + if oProtocolBgpPolicyImportRules.Action.Allow.Update.AsPathLimit != nil { + nestedProtocolBgpPolicyImportRules.Action.Allow.Update.AsPathLimit = oProtocolBgpPolicyImportRules.Action.Allow.Update.AsPathLimit + } + if oProtocolBgpPolicyImportRules.Action.Allow.Update.ExtendedCommunity != nil { + nestedProtocolBgpPolicyImportRules.Action.Allow.Update.ExtendedCommunity = &ProtocolBgpPolicyImportRulesActionAllowUpdateExtendedCommunityXml{} + if _, ok := o.Misc["ProtocolBgpPolicyImportRulesActionAllowUpdateExtendedCommunity"]; ok { + nestedProtocolBgpPolicyImportRules.Action.Allow.Update.ExtendedCommunity.Misc = o.Misc["ProtocolBgpPolicyImportRulesActionAllowUpdateExtendedCommunity"] + } + if oProtocolBgpPolicyImportRules.Action.Allow.Update.ExtendedCommunity.None != nil { + nestedProtocolBgpPolicyImportRules.Action.Allow.Update.ExtendedCommunity.None = &ProtocolBgpPolicyImportRulesActionAllowUpdateExtendedCommunityNoneXml{} + if _, ok := o.Misc["ProtocolBgpPolicyImportRulesActionAllowUpdateExtendedCommunityNone"]; ok { + nestedProtocolBgpPolicyImportRules.Action.Allow.Update.ExtendedCommunity.None.Misc = o.Misc["ProtocolBgpPolicyImportRulesActionAllowUpdateExtendedCommunityNone"] + } + } + if oProtocolBgpPolicyImportRules.Action.Allow.Update.ExtendedCommunity.RemoveAll != nil { + nestedProtocolBgpPolicyImportRules.Action.Allow.Update.ExtendedCommunity.RemoveAll = &ProtocolBgpPolicyImportRulesActionAllowUpdateExtendedCommunityRemoveAllXml{} + if _, ok := o.Misc["ProtocolBgpPolicyImportRulesActionAllowUpdateExtendedCommunityRemoveAll"]; ok { + nestedProtocolBgpPolicyImportRules.Action.Allow.Update.ExtendedCommunity.RemoveAll.Misc = o.Misc["ProtocolBgpPolicyImportRulesActionAllowUpdateExtendedCommunityRemoveAll"] + } + } + if oProtocolBgpPolicyImportRules.Action.Allow.Update.ExtendedCommunity.RemoveRegex != nil { + nestedProtocolBgpPolicyImportRules.Action.Allow.Update.ExtendedCommunity.RemoveRegex = oProtocolBgpPolicyImportRules.Action.Allow.Update.ExtendedCommunity.RemoveRegex + } + if oProtocolBgpPolicyImportRules.Action.Allow.Update.ExtendedCommunity.Append != nil { + nestedProtocolBgpPolicyImportRules.Action.Allow.Update.ExtendedCommunity.Append = util.StrToMem(oProtocolBgpPolicyImportRules.Action.Allow.Update.ExtendedCommunity.Append) + } + if oProtocolBgpPolicyImportRules.Action.Allow.Update.ExtendedCommunity.Overwrite != nil { + nestedProtocolBgpPolicyImportRules.Action.Allow.Update.ExtendedCommunity.Overwrite = util.StrToMem(oProtocolBgpPolicyImportRules.Action.Allow.Update.ExtendedCommunity.Overwrite) + } + } if oProtocolBgpPolicyImportRules.Action.Allow.Update.LocalPreference != nil { nestedProtocolBgpPolicyImportRules.Action.Allow.Update.LocalPreference = oProtocolBgpPolicyImportRules.Action.Allow.Update.LocalPreference } - if oProtocolBgpPolicyImportRules.Action.Allow.Update.Weight != nil { - nestedProtocolBgpPolicyImportRules.Action.Allow.Update.Weight = oProtocolBgpPolicyImportRules.Action.Allow.Update.Weight + if oProtocolBgpPolicyImportRules.Action.Allow.Update.Med != nil { + nestedProtocolBgpPolicyImportRules.Action.Allow.Update.Med = oProtocolBgpPolicyImportRules.Action.Allow.Update.Med } if oProtocolBgpPolicyImportRules.Action.Allow.Update.Nexthop != nil { nestedProtocolBgpPolicyImportRules.Action.Allow.Update.Nexthop = oProtocolBgpPolicyImportRules.Action.Allow.Update.Nexthop @@ -4589,23 +4606,11 @@ func specifyEntry(o *Entry) (any, error) { } } } - if oProtocolBgpPolicyImportRules.Action.Allow.Update.Med != nil { - nestedProtocolBgpPolicyImportRules.Action.Allow.Update.Med = oProtocolBgpPolicyImportRules.Action.Allow.Update.Med - } - if oProtocolBgpPolicyImportRules.Action.Allow.Update.Origin != nil { - nestedProtocolBgpPolicyImportRules.Action.Allow.Update.Origin = oProtocolBgpPolicyImportRules.Action.Allow.Update.Origin - } - if oProtocolBgpPolicyImportRules.Action.Allow.Update.AsPathLimit != nil { - nestedProtocolBgpPolicyImportRules.Action.Allow.Update.AsPathLimit = oProtocolBgpPolicyImportRules.Action.Allow.Update.AsPathLimit - } if oProtocolBgpPolicyImportRules.Action.Allow.Update.Community != nil { nestedProtocolBgpPolicyImportRules.Action.Allow.Update.Community = &ProtocolBgpPolicyImportRulesActionAllowUpdateCommunityXml{} if _, ok := o.Misc["ProtocolBgpPolicyImportRulesActionAllowUpdateCommunity"]; ok { nestedProtocolBgpPolicyImportRules.Action.Allow.Update.Community.Misc = o.Misc["ProtocolBgpPolicyImportRulesActionAllowUpdateCommunity"] } - if oProtocolBgpPolicyImportRules.Action.Allow.Update.Community.Append != nil { - nestedProtocolBgpPolicyImportRules.Action.Allow.Update.Community.Append = util.StrToMem(oProtocolBgpPolicyImportRules.Action.Allow.Update.Community.Append) - } if oProtocolBgpPolicyImportRules.Action.Allow.Update.Community.Overwrite != nil { nestedProtocolBgpPolicyImportRules.Action.Allow.Update.Community.Overwrite = util.StrToMem(oProtocolBgpPolicyImportRules.Action.Allow.Update.Community.Overwrite) } @@ -4624,407 +4629,272 @@ func specifyEntry(o *Entry) (any, error) { if oProtocolBgpPolicyImportRules.Action.Allow.Update.Community.RemoveRegex != nil { nestedProtocolBgpPolicyImportRules.Action.Allow.Update.Community.RemoveRegex = oProtocolBgpPolicyImportRules.Action.Allow.Update.Community.RemoveRegex } - } - if oProtocolBgpPolicyImportRules.Action.Allow.Update.ExtendedCommunity != nil { - nestedProtocolBgpPolicyImportRules.Action.Allow.Update.ExtendedCommunity = &ProtocolBgpPolicyImportRulesActionAllowUpdateExtendedCommunityXml{} - if _, ok := o.Misc["ProtocolBgpPolicyImportRulesActionAllowUpdateExtendedCommunity"]; ok { - nestedProtocolBgpPolicyImportRules.Action.Allow.Update.ExtendedCommunity.Misc = o.Misc["ProtocolBgpPolicyImportRulesActionAllowUpdateExtendedCommunity"] - } - if oProtocolBgpPolicyImportRules.Action.Allow.Update.ExtendedCommunity.Append != nil { - nestedProtocolBgpPolicyImportRules.Action.Allow.Update.ExtendedCommunity.Append = util.StrToMem(oProtocolBgpPolicyImportRules.Action.Allow.Update.ExtendedCommunity.Append) - } - if oProtocolBgpPolicyImportRules.Action.Allow.Update.ExtendedCommunity.Overwrite != nil { - nestedProtocolBgpPolicyImportRules.Action.Allow.Update.ExtendedCommunity.Overwrite = util.StrToMem(oProtocolBgpPolicyImportRules.Action.Allow.Update.ExtendedCommunity.Overwrite) - } - if oProtocolBgpPolicyImportRules.Action.Allow.Update.ExtendedCommunity.None != nil { - nestedProtocolBgpPolicyImportRules.Action.Allow.Update.ExtendedCommunity.None = &ProtocolBgpPolicyImportRulesActionAllowUpdateExtendedCommunityNoneXml{} - if _, ok := o.Misc["ProtocolBgpPolicyImportRulesActionAllowUpdateExtendedCommunityNone"]; ok { - nestedProtocolBgpPolicyImportRules.Action.Allow.Update.ExtendedCommunity.None.Misc = o.Misc["ProtocolBgpPolicyImportRulesActionAllowUpdateExtendedCommunityNone"] - } - } - if oProtocolBgpPolicyImportRules.Action.Allow.Update.ExtendedCommunity.RemoveAll != nil { - nestedProtocolBgpPolicyImportRules.Action.Allow.Update.ExtendedCommunity.RemoveAll = &ProtocolBgpPolicyImportRulesActionAllowUpdateExtendedCommunityRemoveAllXml{} - if _, ok := o.Misc["ProtocolBgpPolicyImportRulesActionAllowUpdateExtendedCommunityRemoveAll"]; ok { - nestedProtocolBgpPolicyImportRules.Action.Allow.Update.ExtendedCommunity.RemoveAll.Misc = o.Misc["ProtocolBgpPolicyImportRulesActionAllowUpdateExtendedCommunityRemoveAll"] - } - } - if oProtocolBgpPolicyImportRules.Action.Allow.Update.ExtendedCommunity.RemoveRegex != nil { - nestedProtocolBgpPolicyImportRules.Action.Allow.Update.ExtendedCommunity.RemoveRegex = oProtocolBgpPolicyImportRules.Action.Allow.Update.ExtendedCommunity.RemoveRegex + if oProtocolBgpPolicyImportRules.Action.Allow.Update.Community.Append != nil { + nestedProtocolBgpPolicyImportRules.Action.Allow.Update.Community.Append = util.StrToMem(oProtocolBgpPolicyImportRules.Action.Allow.Update.Community.Append) } } } } } + if oProtocolBgpPolicyImportRules.Name != "" { + nestedProtocolBgpPolicyImportRules.Name = oProtocolBgpPolicyImportRules.Name + } nestedProtocol.Bgp.Policy.Import.Rules = append(nestedProtocol.Bgp.Policy.Import.Rules, nestedProtocolBgpPolicyImportRules) } } } } - } - if o.Protocol.Ospf != nil { - nestedProtocol.Ospf = &ProtocolOspfXml{} - if _, ok := o.Misc["ProtocolOspf"]; ok { - nestedProtocol.Ospf.Misc = o.Misc["ProtocolOspf"] + if o.Protocol.Bgp.DampeningProfile != nil { + nestedProtocol.Bgp.DampeningProfile = []ProtocolBgpDampeningProfileXml{} + for _, oProtocolBgpDampeningProfile := range o.Protocol.Bgp.DampeningProfile { + nestedProtocolBgpDampeningProfile := ProtocolBgpDampeningProfileXml{} + if _, ok := o.Misc["ProtocolBgpDampeningProfile"]; ok { + nestedProtocolBgpDampeningProfile.Misc = o.Misc["ProtocolBgpDampeningProfile"] + } + if oProtocolBgpDampeningProfile.MaxHoldTime != nil { + nestedProtocolBgpDampeningProfile.MaxHoldTime = oProtocolBgpDampeningProfile.MaxHoldTime + } + if oProtocolBgpDampeningProfile.DecayHalfLifeReachable != nil { + nestedProtocolBgpDampeningProfile.DecayHalfLifeReachable = oProtocolBgpDampeningProfile.DecayHalfLifeReachable + } + if oProtocolBgpDampeningProfile.DecayHalfLifeUnreachable != nil { + nestedProtocolBgpDampeningProfile.DecayHalfLifeUnreachable = oProtocolBgpDampeningProfile.DecayHalfLifeUnreachable + } + if oProtocolBgpDampeningProfile.Name != "" { + nestedProtocolBgpDampeningProfile.Name = oProtocolBgpDampeningProfile.Name + } + if oProtocolBgpDampeningProfile.Enable != nil { + nestedProtocolBgpDampeningProfile.Enable = util.YesNo(oProtocolBgpDampeningProfile.Enable, nil) + } + if oProtocolBgpDampeningProfile.Cutoff != nil { + nestedProtocolBgpDampeningProfile.Cutoff = oProtocolBgpDampeningProfile.Cutoff + } + if oProtocolBgpDampeningProfile.Reuse != nil { + nestedProtocolBgpDampeningProfile.Reuse = oProtocolBgpDampeningProfile.Reuse + } + nestedProtocol.Bgp.DampeningProfile = append(nestedProtocol.Bgp.DampeningProfile, nestedProtocolBgpDampeningProfile) + } } - if o.Protocol.Ospf.Area != nil { - nestedProtocol.Ospf.Area = []ProtocolOspfAreaXml{} - for _, oProtocolOspfArea := range o.Protocol.Ospf.Area { - nestedProtocolOspfArea := ProtocolOspfAreaXml{} - if _, ok := o.Misc["ProtocolOspfArea"]; ok { - nestedProtocolOspfArea.Misc = o.Misc["ProtocolOspfArea"] + if o.Protocol.Bgp.EcmpMultiAs != nil { + nestedProtocol.Bgp.EcmpMultiAs = util.YesNo(o.Protocol.Bgp.EcmpMultiAs, nil) + } + if o.Protocol.Bgp.PeerGroup != nil { + nestedProtocol.Bgp.PeerGroup = []ProtocolBgpPeerGroupXml{} + for _, oProtocolBgpPeerGroup := range o.Protocol.Bgp.PeerGroup { + nestedProtocolBgpPeerGroup := ProtocolBgpPeerGroupXml{} + if _, ok := o.Misc["ProtocolBgpPeerGroup"]; ok { + nestedProtocolBgpPeerGroup.Misc = o.Misc["ProtocolBgpPeerGroup"] } - if oProtocolOspfArea.VirtualLink != nil { - nestedProtocolOspfArea.VirtualLink = []ProtocolOspfAreaVirtualLinkXml{} - for _, oProtocolOspfAreaVirtualLink := range oProtocolOspfArea.VirtualLink { - nestedProtocolOspfAreaVirtualLink := ProtocolOspfAreaVirtualLinkXml{} - if _, ok := o.Misc["ProtocolOspfAreaVirtualLink"]; ok { - nestedProtocolOspfAreaVirtualLink.Misc = o.Misc["ProtocolOspfAreaVirtualLink"] - } - if oProtocolOspfAreaVirtualLink.TransitAreaId != nil { - nestedProtocolOspfAreaVirtualLink.TransitAreaId = oProtocolOspfAreaVirtualLink.TransitAreaId + if oProtocolBgpPeerGroup.Enable != nil { + nestedProtocolBgpPeerGroup.Enable = util.YesNo(oProtocolBgpPeerGroup.Enable, nil) + } + if oProtocolBgpPeerGroup.AggregatedConfedAsPath != nil { + nestedProtocolBgpPeerGroup.AggregatedConfedAsPath = util.YesNo(oProtocolBgpPeerGroup.AggregatedConfedAsPath, nil) + } + if oProtocolBgpPeerGroup.SoftResetWithStoredInfo != nil { + nestedProtocolBgpPeerGroup.SoftResetWithStoredInfo = util.YesNo(oProtocolBgpPeerGroup.SoftResetWithStoredInfo, nil) + } + if oProtocolBgpPeerGroup.Type != nil { + nestedProtocolBgpPeerGroup.Type = &ProtocolBgpPeerGroupTypeXml{} + if _, ok := o.Misc["ProtocolBgpPeerGroupType"]; ok { + nestedProtocolBgpPeerGroup.Type.Misc = o.Misc["ProtocolBgpPeerGroupType"] + } + if oProtocolBgpPeerGroup.Type.EbgpConfed != nil { + nestedProtocolBgpPeerGroup.Type.EbgpConfed = &ProtocolBgpPeerGroupTypeEbgpConfedXml{} + if _, ok := o.Misc["ProtocolBgpPeerGroupTypeEbgpConfed"]; ok { + nestedProtocolBgpPeerGroup.Type.EbgpConfed.Misc = o.Misc["ProtocolBgpPeerGroupTypeEbgpConfed"] } - if oProtocolOspfAreaVirtualLink.Enable != nil { - nestedProtocolOspfAreaVirtualLink.Enable = util.YesNo(oProtocolOspfAreaVirtualLink.Enable, nil) + if oProtocolBgpPeerGroup.Type.EbgpConfed.ExportNexthop != nil { + nestedProtocolBgpPeerGroup.Type.EbgpConfed.ExportNexthop = oProtocolBgpPeerGroup.Type.EbgpConfed.ExportNexthop } - if oProtocolOspfAreaVirtualLink.HelloInterval != nil { - nestedProtocolOspfAreaVirtualLink.HelloInterval = oProtocolOspfAreaVirtualLink.HelloInterval + } + if oProtocolBgpPeerGroup.Type.IbgpConfed != nil { + nestedProtocolBgpPeerGroup.Type.IbgpConfed = &ProtocolBgpPeerGroupTypeIbgpConfedXml{} + if _, ok := o.Misc["ProtocolBgpPeerGroupTypeIbgpConfed"]; ok { + nestedProtocolBgpPeerGroup.Type.IbgpConfed.Misc = o.Misc["ProtocolBgpPeerGroupTypeIbgpConfed"] } - if oProtocolOspfAreaVirtualLink.RetransmitInterval != nil { - nestedProtocolOspfAreaVirtualLink.RetransmitInterval = oProtocolOspfAreaVirtualLink.RetransmitInterval + if oProtocolBgpPeerGroup.Type.IbgpConfed.ExportNexthop != nil { + nestedProtocolBgpPeerGroup.Type.IbgpConfed.ExportNexthop = oProtocolBgpPeerGroup.Type.IbgpConfed.ExportNexthop } - if oProtocolOspfAreaVirtualLink.TransitDelay != nil { - nestedProtocolOspfAreaVirtualLink.TransitDelay = oProtocolOspfAreaVirtualLink.TransitDelay + } + if oProtocolBgpPeerGroup.Type.Ebgp != nil { + nestedProtocolBgpPeerGroup.Type.Ebgp = &ProtocolBgpPeerGroupTypeEbgpXml{} + if _, ok := o.Misc["ProtocolBgpPeerGroupTypeEbgp"]; ok { + nestedProtocolBgpPeerGroup.Type.Ebgp.Misc = o.Misc["ProtocolBgpPeerGroupTypeEbgp"] } - if oProtocolOspfAreaVirtualLink.Name != "" { - nestedProtocolOspfAreaVirtualLink.Name = oProtocolOspfAreaVirtualLink.Name + if oProtocolBgpPeerGroup.Type.Ebgp.ImportNexthop != nil { + nestedProtocolBgpPeerGroup.Type.Ebgp.ImportNexthop = oProtocolBgpPeerGroup.Type.Ebgp.ImportNexthop } - if oProtocolOspfAreaVirtualLink.NeighborId != nil { - nestedProtocolOspfAreaVirtualLink.NeighborId = oProtocolOspfAreaVirtualLink.NeighborId + if oProtocolBgpPeerGroup.Type.Ebgp.ExportNexthop != nil { + nestedProtocolBgpPeerGroup.Type.Ebgp.ExportNexthop = oProtocolBgpPeerGroup.Type.Ebgp.ExportNexthop } - if oProtocolOspfAreaVirtualLink.DeadCounts != nil { - nestedProtocolOspfAreaVirtualLink.DeadCounts = oProtocolOspfAreaVirtualLink.DeadCounts + if oProtocolBgpPeerGroup.Type.Ebgp.RemovePrivateAs != nil { + nestedProtocolBgpPeerGroup.Type.Ebgp.RemovePrivateAs = util.YesNo(oProtocolBgpPeerGroup.Type.Ebgp.RemovePrivateAs, nil) } - if oProtocolOspfAreaVirtualLink.Authentication != nil { - nestedProtocolOspfAreaVirtualLink.Authentication = oProtocolOspfAreaVirtualLink.Authentication + } + if oProtocolBgpPeerGroup.Type.Ibgp != nil { + nestedProtocolBgpPeerGroup.Type.Ibgp = &ProtocolBgpPeerGroupTypeIbgpXml{} + if _, ok := o.Misc["ProtocolBgpPeerGroupTypeIbgp"]; ok { + nestedProtocolBgpPeerGroup.Type.Ibgp.Misc = o.Misc["ProtocolBgpPeerGroupTypeIbgp"] } - if oProtocolOspfAreaVirtualLink.Bfd != nil { - nestedProtocolOspfAreaVirtualLink.Bfd = &ProtocolOspfAreaVirtualLinkBfdXml{} - if _, ok := o.Misc["ProtocolOspfAreaVirtualLinkBfd"]; ok { - nestedProtocolOspfAreaVirtualLink.Bfd.Misc = o.Misc["ProtocolOspfAreaVirtualLinkBfd"] - } - if oProtocolOspfAreaVirtualLink.Bfd.Profile != nil { - nestedProtocolOspfAreaVirtualLink.Bfd.Profile = oProtocolOspfAreaVirtualLink.Bfd.Profile - } + if oProtocolBgpPeerGroup.Type.Ibgp.ExportNexthop != nil { + nestedProtocolBgpPeerGroup.Type.Ibgp.ExportNexthop = oProtocolBgpPeerGroup.Type.Ibgp.ExportNexthop } - nestedProtocolOspfArea.VirtualLink = append(nestedProtocolOspfArea.VirtualLink, nestedProtocolOspfAreaVirtualLink) } } - if oProtocolOspfArea.Name != "" { - nestedProtocolOspfArea.Name = oProtocolOspfArea.Name - } - if oProtocolOspfArea.Type != nil { - nestedProtocolOspfArea.Type = &ProtocolOspfAreaTypeXml{} - if _, ok := o.Misc["ProtocolOspfAreaType"]; ok { - nestedProtocolOspfArea.Type.Misc = o.Misc["ProtocolOspfAreaType"] - } - if oProtocolOspfArea.Type.Nssa != nil { - nestedProtocolOspfArea.Type.Nssa = &ProtocolOspfAreaTypeNssaXml{} - if _, ok := o.Misc["ProtocolOspfAreaTypeNssa"]; ok { - nestedProtocolOspfArea.Type.Nssa.Misc = o.Misc["ProtocolOspfAreaTypeNssa"] + if oProtocolBgpPeerGroup.Peer != nil { + nestedProtocolBgpPeerGroup.Peer = []ProtocolBgpPeerGroupPeerXml{} + for _, oProtocolBgpPeerGroupPeer := range oProtocolBgpPeerGroup.Peer { + nestedProtocolBgpPeerGroupPeer := ProtocolBgpPeerGroupPeerXml{} + if _, ok := o.Misc["ProtocolBgpPeerGroupPeer"]; ok { + nestedProtocolBgpPeerGroupPeer.Misc = o.Misc["ProtocolBgpPeerGroupPeer"] } - if oProtocolOspfArea.Type.Nssa.AcceptSummary != nil { - nestedProtocolOspfArea.Type.Nssa.AcceptSummary = util.YesNo(oProtocolOspfArea.Type.Nssa.AcceptSummary, nil) + if oProtocolBgpPeerGroupPeer.MaxPrefixes != nil { + nestedProtocolBgpPeerGroupPeer.MaxPrefixes = oProtocolBgpPeerGroupPeer.MaxPrefixes } - if oProtocolOspfArea.Type.Nssa.DefaultRoute != nil { - nestedProtocolOspfArea.Type.Nssa.DefaultRoute = &ProtocolOspfAreaTypeNssaDefaultRouteXml{} - if _, ok := o.Misc["ProtocolOspfAreaTypeNssaDefaultRoute"]; ok { - nestedProtocolOspfArea.Type.Nssa.DefaultRoute.Misc = o.Misc["ProtocolOspfAreaTypeNssaDefaultRoute"] + if oProtocolBgpPeerGroupPeer.Name != "" { + nestedProtocolBgpPeerGroupPeer.Name = oProtocolBgpPeerGroupPeer.Name + } + if oProtocolBgpPeerGroupPeer.AddressFamilyIdentifier != nil { + nestedProtocolBgpPeerGroupPeer.AddressFamilyIdentifier = oProtocolBgpPeerGroupPeer.AddressFamilyIdentifier + } + if oProtocolBgpPeerGroupPeer.SubsequentAddressFamilyIdentifier != nil { + nestedProtocolBgpPeerGroupPeer.SubsequentAddressFamilyIdentifier = &ProtocolBgpPeerGroupPeerSubsequentAddressFamilyIdentifierXml{} + if _, ok := o.Misc["ProtocolBgpPeerGroupPeerSubsequentAddressFamilyIdentifier"]; ok { + nestedProtocolBgpPeerGroupPeer.SubsequentAddressFamilyIdentifier.Misc = o.Misc["ProtocolBgpPeerGroupPeerSubsequentAddressFamilyIdentifier"] } - if oProtocolOspfArea.Type.Nssa.DefaultRoute.Disable != nil { - nestedProtocolOspfArea.Type.Nssa.DefaultRoute.Disable = &ProtocolOspfAreaTypeNssaDefaultRouteDisableXml{} - if _, ok := o.Misc["ProtocolOspfAreaTypeNssaDefaultRouteDisable"]; ok { - nestedProtocolOspfArea.Type.Nssa.DefaultRoute.Disable.Misc = o.Misc["ProtocolOspfAreaTypeNssaDefaultRouteDisable"] - } + if oProtocolBgpPeerGroupPeer.SubsequentAddressFamilyIdentifier.Unicast != nil { + nestedProtocolBgpPeerGroupPeer.SubsequentAddressFamilyIdentifier.Unicast = util.YesNo(oProtocolBgpPeerGroupPeer.SubsequentAddressFamilyIdentifier.Unicast, nil) } - if oProtocolOspfArea.Type.Nssa.DefaultRoute.Advertise != nil { - nestedProtocolOspfArea.Type.Nssa.DefaultRoute.Advertise = &ProtocolOspfAreaTypeNssaDefaultRouteAdvertiseXml{} - if _, ok := o.Misc["ProtocolOspfAreaTypeNssaDefaultRouteAdvertise"]; ok { - nestedProtocolOspfArea.Type.Nssa.DefaultRoute.Advertise.Misc = o.Misc["ProtocolOspfAreaTypeNssaDefaultRouteAdvertise"] - } - if oProtocolOspfArea.Type.Nssa.DefaultRoute.Advertise.Type != nil { - nestedProtocolOspfArea.Type.Nssa.DefaultRoute.Advertise.Type = oProtocolOspfArea.Type.Nssa.DefaultRoute.Advertise.Type - } - if oProtocolOspfArea.Type.Nssa.DefaultRoute.Advertise.Metric != nil { - nestedProtocolOspfArea.Type.Nssa.DefaultRoute.Advertise.Metric = oProtocolOspfArea.Type.Nssa.DefaultRoute.Advertise.Metric - } + if oProtocolBgpPeerGroupPeer.SubsequentAddressFamilyIdentifier.Multicast != nil { + nestedProtocolBgpPeerGroupPeer.SubsequentAddressFamilyIdentifier.Multicast = util.YesNo(oProtocolBgpPeerGroupPeer.SubsequentAddressFamilyIdentifier.Multicast, nil) } } - if oProtocolOspfArea.Type.Nssa.NssaExtRange != nil { - nestedProtocolOspfArea.Type.Nssa.NssaExtRange = []ProtocolOspfAreaTypeNssaNssaExtRangeXml{} - for _, oProtocolOspfAreaTypeNssaNssaExtRange := range oProtocolOspfArea.Type.Nssa.NssaExtRange { - nestedProtocolOspfAreaTypeNssaNssaExtRange := ProtocolOspfAreaTypeNssaNssaExtRangeXml{} - if _, ok := o.Misc["ProtocolOspfAreaTypeNssaNssaExtRange"]; ok { - nestedProtocolOspfAreaTypeNssaNssaExtRange.Misc = o.Misc["ProtocolOspfAreaTypeNssaNssaExtRange"] - } - if oProtocolOspfAreaTypeNssaNssaExtRange.Name != "" { - nestedProtocolOspfAreaTypeNssaNssaExtRange.Name = oProtocolOspfAreaTypeNssaNssaExtRange.Name - } - if oProtocolOspfAreaTypeNssaNssaExtRange.Advertise != nil { - nestedProtocolOspfAreaTypeNssaNssaExtRange.Advertise = &ProtocolOspfAreaTypeNssaNssaExtRangeAdvertiseXml{} - if _, ok := o.Misc["ProtocolOspfAreaTypeNssaNssaExtRangeAdvertise"]; ok { - nestedProtocolOspfAreaTypeNssaNssaExtRange.Advertise.Misc = o.Misc["ProtocolOspfAreaTypeNssaNssaExtRangeAdvertise"] - } - } - if oProtocolOspfAreaTypeNssaNssaExtRange.Suppress != nil { - nestedProtocolOspfAreaTypeNssaNssaExtRange.Suppress = &ProtocolOspfAreaTypeNssaNssaExtRangeSuppressXml{} - if _, ok := o.Misc["ProtocolOspfAreaTypeNssaNssaExtRangeSuppress"]; ok { - nestedProtocolOspfAreaTypeNssaNssaExtRange.Suppress.Misc = o.Misc["ProtocolOspfAreaTypeNssaNssaExtRangeSuppress"] - } - } - nestedProtocolOspfArea.Type.Nssa.NssaExtRange = append(nestedProtocolOspfArea.Type.Nssa.NssaExtRange, nestedProtocolOspfAreaTypeNssaNssaExtRange) + if oProtocolBgpPeerGroupPeer.Bfd != nil { + nestedProtocolBgpPeerGroupPeer.Bfd = &ProtocolBgpPeerGroupPeerBfdXml{} + if _, ok := o.Misc["ProtocolBgpPeerGroupPeerBfd"]; ok { + nestedProtocolBgpPeerGroupPeer.Bfd.Misc = o.Misc["ProtocolBgpPeerGroupPeerBfd"] + } + if oProtocolBgpPeerGroupPeer.Bfd.Profile != nil { + nestedProtocolBgpPeerGroupPeer.Bfd.Profile = oProtocolBgpPeerGroupPeer.Bfd.Profile } } - } - if oProtocolOspfArea.Type.Normal != nil { - nestedProtocolOspfArea.Type.Normal = &ProtocolOspfAreaTypeNormalXml{} - if _, ok := o.Misc["ProtocolOspfAreaTypeNormal"]; ok { - nestedProtocolOspfArea.Type.Normal.Misc = o.Misc["ProtocolOspfAreaTypeNormal"] + if oProtocolBgpPeerGroupPeer.EnableMpBgp != nil { + nestedProtocolBgpPeerGroupPeer.EnableMpBgp = util.YesNo(oProtocolBgpPeerGroupPeer.EnableMpBgp, nil) } - } - if oProtocolOspfArea.Type.Stub != nil { - nestedProtocolOspfArea.Type.Stub = &ProtocolOspfAreaTypeStubXml{} - if _, ok := o.Misc["ProtocolOspfAreaTypeStub"]; ok { - nestedProtocolOspfArea.Type.Stub.Misc = o.Misc["ProtocolOspfAreaTypeStub"] + if oProtocolBgpPeerGroupPeer.PeerAs != nil { + nestedProtocolBgpPeerGroupPeer.PeerAs = oProtocolBgpPeerGroupPeer.PeerAs } - if oProtocolOspfArea.Type.Stub.AcceptSummary != nil { - nestedProtocolOspfArea.Type.Stub.AcceptSummary = util.YesNo(oProtocolOspfArea.Type.Stub.AcceptSummary, nil) + if oProtocolBgpPeerGroupPeer.EnableSenderSideLoopDetection != nil { + nestedProtocolBgpPeerGroupPeer.EnableSenderSideLoopDetection = util.YesNo(oProtocolBgpPeerGroupPeer.EnableSenderSideLoopDetection, nil) } - if oProtocolOspfArea.Type.Stub.DefaultRoute != nil { - nestedProtocolOspfArea.Type.Stub.DefaultRoute = &ProtocolOspfAreaTypeStubDefaultRouteXml{} - if _, ok := o.Misc["ProtocolOspfAreaTypeStubDefaultRoute"]; ok { - nestedProtocolOspfArea.Type.Stub.DefaultRoute.Misc = o.Misc["ProtocolOspfAreaTypeStubDefaultRoute"] + if oProtocolBgpPeerGroupPeer.PeeringType != nil { + nestedProtocolBgpPeerGroupPeer.PeeringType = oProtocolBgpPeerGroupPeer.PeeringType + } + if oProtocolBgpPeerGroupPeer.LocalAddress != nil { + nestedProtocolBgpPeerGroupPeer.LocalAddress = &ProtocolBgpPeerGroupPeerLocalAddressXml{} + if _, ok := o.Misc["ProtocolBgpPeerGroupPeerLocalAddress"]; ok { + nestedProtocolBgpPeerGroupPeer.LocalAddress.Misc = o.Misc["ProtocolBgpPeerGroupPeerLocalAddress"] } - if oProtocolOspfArea.Type.Stub.DefaultRoute.Disable != nil { - nestedProtocolOspfArea.Type.Stub.DefaultRoute.Disable = &ProtocolOspfAreaTypeStubDefaultRouteDisableXml{} - if _, ok := o.Misc["ProtocolOspfAreaTypeStubDefaultRouteDisable"]; ok { - nestedProtocolOspfArea.Type.Stub.DefaultRoute.Disable.Misc = o.Misc["ProtocolOspfAreaTypeStubDefaultRouteDisable"] + if oProtocolBgpPeerGroupPeer.LocalAddress.Interface != nil { + nestedProtocolBgpPeerGroupPeer.LocalAddress.Interface = oProtocolBgpPeerGroupPeer.LocalAddress.Interface + } + if oProtocolBgpPeerGroupPeer.LocalAddress.Ip != nil { + nestedProtocolBgpPeerGroupPeer.LocalAddress.Ip = oProtocolBgpPeerGroupPeer.LocalAddress.Ip + } + } + if oProtocolBgpPeerGroupPeer.ConnectionOptions != nil { + nestedProtocolBgpPeerGroupPeer.ConnectionOptions = &ProtocolBgpPeerGroupPeerConnectionOptionsXml{} + if _, ok := o.Misc["ProtocolBgpPeerGroupPeerConnectionOptions"]; ok { + nestedProtocolBgpPeerGroupPeer.ConnectionOptions.Misc = o.Misc["ProtocolBgpPeerGroupPeerConnectionOptions"] + } + if oProtocolBgpPeerGroupPeer.ConnectionOptions.Multihop != nil { + nestedProtocolBgpPeerGroupPeer.ConnectionOptions.Multihop = oProtocolBgpPeerGroupPeer.ConnectionOptions.Multihop + } + if oProtocolBgpPeerGroupPeer.ConnectionOptions.OpenDelayTime != nil { + nestedProtocolBgpPeerGroupPeer.ConnectionOptions.OpenDelayTime = oProtocolBgpPeerGroupPeer.ConnectionOptions.OpenDelayTime + } + if oProtocolBgpPeerGroupPeer.ConnectionOptions.HoldTime != nil { + nestedProtocolBgpPeerGroupPeer.ConnectionOptions.HoldTime = oProtocolBgpPeerGroupPeer.ConnectionOptions.HoldTime + } + if oProtocolBgpPeerGroupPeer.ConnectionOptions.Authentication != nil { + nestedProtocolBgpPeerGroupPeer.ConnectionOptions.Authentication = oProtocolBgpPeerGroupPeer.ConnectionOptions.Authentication + } + if oProtocolBgpPeerGroupPeer.ConnectionOptions.KeepAliveInterval != nil { + nestedProtocolBgpPeerGroupPeer.ConnectionOptions.KeepAliveInterval = oProtocolBgpPeerGroupPeer.ConnectionOptions.KeepAliveInterval + } + if oProtocolBgpPeerGroupPeer.ConnectionOptions.IncomingBgpConnection != nil { + nestedProtocolBgpPeerGroupPeer.ConnectionOptions.IncomingBgpConnection = &ProtocolBgpPeerGroupPeerConnectionOptionsIncomingBgpConnectionXml{} + if _, ok := o.Misc["ProtocolBgpPeerGroupPeerConnectionOptionsIncomingBgpConnection"]; ok { + nestedProtocolBgpPeerGroupPeer.ConnectionOptions.IncomingBgpConnection.Misc = o.Misc["ProtocolBgpPeerGroupPeerConnectionOptionsIncomingBgpConnection"] + } + if oProtocolBgpPeerGroupPeer.ConnectionOptions.IncomingBgpConnection.RemotePort != nil { + nestedProtocolBgpPeerGroupPeer.ConnectionOptions.IncomingBgpConnection.RemotePort = oProtocolBgpPeerGroupPeer.ConnectionOptions.IncomingBgpConnection.RemotePort + } + if oProtocolBgpPeerGroupPeer.ConnectionOptions.IncomingBgpConnection.Allow != nil { + nestedProtocolBgpPeerGroupPeer.ConnectionOptions.IncomingBgpConnection.Allow = util.YesNo(oProtocolBgpPeerGroupPeer.ConnectionOptions.IncomingBgpConnection.Allow, nil) } } - if oProtocolOspfArea.Type.Stub.DefaultRoute.Advertise != nil { - nestedProtocolOspfArea.Type.Stub.DefaultRoute.Advertise = &ProtocolOspfAreaTypeStubDefaultRouteAdvertiseXml{} - if _, ok := o.Misc["ProtocolOspfAreaTypeStubDefaultRouteAdvertise"]; ok { - nestedProtocolOspfArea.Type.Stub.DefaultRoute.Advertise.Misc = o.Misc["ProtocolOspfAreaTypeStubDefaultRouteAdvertise"] + if oProtocolBgpPeerGroupPeer.ConnectionOptions.OutgoingBgpConnection != nil { + nestedProtocolBgpPeerGroupPeer.ConnectionOptions.OutgoingBgpConnection = &ProtocolBgpPeerGroupPeerConnectionOptionsOutgoingBgpConnectionXml{} + if _, ok := o.Misc["ProtocolBgpPeerGroupPeerConnectionOptionsOutgoingBgpConnection"]; ok { + nestedProtocolBgpPeerGroupPeer.ConnectionOptions.OutgoingBgpConnection.Misc = o.Misc["ProtocolBgpPeerGroupPeerConnectionOptionsOutgoingBgpConnection"] } - if oProtocolOspfArea.Type.Stub.DefaultRoute.Advertise.Metric != nil { - nestedProtocolOspfArea.Type.Stub.DefaultRoute.Advertise.Metric = oProtocolOspfArea.Type.Stub.DefaultRoute.Advertise.Metric + if oProtocolBgpPeerGroupPeer.ConnectionOptions.OutgoingBgpConnection.LocalPort != nil { + nestedProtocolBgpPeerGroupPeer.ConnectionOptions.OutgoingBgpConnection.LocalPort = oProtocolBgpPeerGroupPeer.ConnectionOptions.OutgoingBgpConnection.LocalPort + } + if oProtocolBgpPeerGroupPeer.ConnectionOptions.OutgoingBgpConnection.Allow != nil { + nestedProtocolBgpPeerGroupPeer.ConnectionOptions.OutgoingBgpConnection.Allow = util.YesNo(oProtocolBgpPeerGroupPeer.ConnectionOptions.OutgoingBgpConnection.Allow, nil) } } + if oProtocolBgpPeerGroupPeer.ConnectionOptions.MinRouteAdvInterval != nil { + nestedProtocolBgpPeerGroupPeer.ConnectionOptions.MinRouteAdvInterval = oProtocolBgpPeerGroupPeer.ConnectionOptions.MinRouteAdvInterval + } + if oProtocolBgpPeerGroupPeer.ConnectionOptions.IdleHoldTime != nil { + nestedProtocolBgpPeerGroupPeer.ConnectionOptions.IdleHoldTime = oProtocolBgpPeerGroupPeer.ConnectionOptions.IdleHoldTime + } } - } - } - if oProtocolOspfArea.Range != nil { - nestedProtocolOspfArea.Range = []ProtocolOspfAreaRangeXml{} - for _, oProtocolOspfAreaRange := range oProtocolOspfArea.Range { - nestedProtocolOspfAreaRange := ProtocolOspfAreaRangeXml{} - if _, ok := o.Misc["ProtocolOspfAreaRange"]; ok { - nestedProtocolOspfAreaRange.Misc = o.Misc["ProtocolOspfAreaRange"] - } - if oProtocolOspfAreaRange.Name != "" { - nestedProtocolOspfAreaRange.Name = oProtocolOspfAreaRange.Name + if oProtocolBgpPeerGroupPeer.Enable != nil { + nestedProtocolBgpPeerGroupPeer.Enable = util.YesNo(oProtocolBgpPeerGroupPeer.Enable, nil) } - if oProtocolOspfAreaRange.Advertise != nil { - nestedProtocolOspfAreaRange.Advertise = &ProtocolOspfAreaRangeAdvertiseXml{} - if _, ok := o.Misc["ProtocolOspfAreaRangeAdvertise"]; ok { - nestedProtocolOspfAreaRange.Advertise.Misc = o.Misc["ProtocolOspfAreaRangeAdvertise"] + if oProtocolBgpPeerGroupPeer.PeerAddress != nil { + nestedProtocolBgpPeerGroupPeer.PeerAddress = &ProtocolBgpPeerGroupPeerPeerAddressXml{} + if _, ok := o.Misc["ProtocolBgpPeerGroupPeerPeerAddress"]; ok { + nestedProtocolBgpPeerGroupPeer.PeerAddress.Misc = o.Misc["ProtocolBgpPeerGroupPeerPeerAddress"] } - } - if oProtocolOspfAreaRange.Suppress != nil { - nestedProtocolOspfAreaRange.Suppress = &ProtocolOspfAreaRangeSuppressXml{} - if _, ok := o.Misc["ProtocolOspfAreaRangeSuppress"]; ok { - nestedProtocolOspfAreaRange.Suppress.Misc = o.Misc["ProtocolOspfAreaRangeSuppress"] + if oProtocolBgpPeerGroupPeer.PeerAddress.Ip != nil { + nestedProtocolBgpPeerGroupPeer.PeerAddress.Ip = oProtocolBgpPeerGroupPeer.PeerAddress.Ip + } + if oProtocolBgpPeerGroupPeer.PeerAddress.Fqdn != nil { + nestedProtocolBgpPeerGroupPeer.PeerAddress.Fqdn = oProtocolBgpPeerGroupPeer.PeerAddress.Fqdn } } - nestedProtocolOspfArea.Range = append(nestedProtocolOspfArea.Range, nestedProtocolOspfAreaRange) + if oProtocolBgpPeerGroupPeer.ReflectorClient != nil { + nestedProtocolBgpPeerGroupPeer.ReflectorClient = oProtocolBgpPeerGroupPeer.ReflectorClient + } + nestedProtocolBgpPeerGroup.Peer = append(nestedProtocolBgpPeerGroup.Peer, nestedProtocolBgpPeerGroupPeer) } } - if oProtocolOspfArea.Interface != nil { - nestedProtocolOspfArea.Interface = []ProtocolOspfAreaInterfaceXml{} - for _, oProtocolOspfAreaInterface := range oProtocolOspfArea.Interface { - nestedProtocolOspfAreaInterface := ProtocolOspfAreaInterfaceXml{} - if _, ok := o.Misc["ProtocolOspfAreaInterface"]; ok { - nestedProtocolOspfAreaInterface.Misc = o.Misc["ProtocolOspfAreaInterface"] - } - if oProtocolOspfAreaInterface.Metric != nil { - nestedProtocolOspfAreaInterface.Metric = oProtocolOspfAreaInterface.Metric - } - if oProtocolOspfAreaInterface.TransitDelay != nil { - nestedProtocolOspfAreaInterface.TransitDelay = oProtocolOspfAreaInterface.TransitDelay - } - if oProtocolOspfAreaInterface.Priority != nil { - nestedProtocolOspfAreaInterface.Priority = oProtocolOspfAreaInterface.Priority - } - if oProtocolOspfAreaInterface.HelloInterval != nil { - nestedProtocolOspfAreaInterface.HelloInterval = oProtocolOspfAreaInterface.HelloInterval - } - if oProtocolOspfAreaInterface.Authentication != nil { - nestedProtocolOspfAreaInterface.Authentication = oProtocolOspfAreaInterface.Authentication - } - if oProtocolOspfAreaInterface.GrDelay != nil { - nestedProtocolOspfAreaInterface.GrDelay = oProtocolOspfAreaInterface.GrDelay - } - if oProtocolOspfAreaInterface.Enable != nil { - nestedProtocolOspfAreaInterface.Enable = util.YesNo(oProtocolOspfAreaInterface.Enable, nil) - } - if oProtocolOspfAreaInterface.DeadCounts != nil { - nestedProtocolOspfAreaInterface.DeadCounts = oProtocolOspfAreaInterface.DeadCounts - } - if oProtocolOspfAreaInterface.Neighbor != nil { - nestedProtocolOspfAreaInterface.Neighbor = []ProtocolOspfAreaInterfaceNeighborXml{} - for _, oProtocolOspfAreaInterfaceNeighbor := range oProtocolOspfAreaInterface.Neighbor { - nestedProtocolOspfAreaInterfaceNeighbor := ProtocolOspfAreaInterfaceNeighborXml{} - if _, ok := o.Misc["ProtocolOspfAreaInterfaceNeighbor"]; ok { - nestedProtocolOspfAreaInterfaceNeighbor.Misc = o.Misc["ProtocolOspfAreaInterfaceNeighbor"] - } - if oProtocolOspfAreaInterfaceNeighbor.Name != "" { - nestedProtocolOspfAreaInterfaceNeighbor.Name = oProtocolOspfAreaInterfaceNeighbor.Name - } - nestedProtocolOspfAreaInterface.Neighbor = append(nestedProtocolOspfAreaInterface.Neighbor, nestedProtocolOspfAreaInterfaceNeighbor) - } - } - if oProtocolOspfAreaInterface.Name != "" { - nestedProtocolOspfAreaInterface.Name = oProtocolOspfAreaInterface.Name - } - if oProtocolOspfAreaInterface.Passive != nil { - nestedProtocolOspfAreaInterface.Passive = util.YesNo(oProtocolOspfAreaInterface.Passive, nil) - } - if oProtocolOspfAreaInterface.RetransmitInterval != nil { - nestedProtocolOspfAreaInterface.RetransmitInterval = oProtocolOspfAreaInterface.RetransmitInterval - } - if oProtocolOspfAreaInterface.LinkType != nil { - nestedProtocolOspfAreaInterface.LinkType = &ProtocolOspfAreaInterfaceLinkTypeXml{} - if _, ok := o.Misc["ProtocolOspfAreaInterfaceLinkType"]; ok { - nestedProtocolOspfAreaInterface.LinkType.Misc = o.Misc["ProtocolOspfAreaInterfaceLinkType"] - } - if oProtocolOspfAreaInterface.LinkType.Broadcast != nil { - nestedProtocolOspfAreaInterface.LinkType.Broadcast = &ProtocolOspfAreaInterfaceLinkTypeBroadcastXml{} - if _, ok := o.Misc["ProtocolOspfAreaInterfaceLinkTypeBroadcast"]; ok { - nestedProtocolOspfAreaInterface.LinkType.Broadcast.Misc = o.Misc["ProtocolOspfAreaInterfaceLinkTypeBroadcast"] - } - } - if oProtocolOspfAreaInterface.LinkType.P2p != nil { - nestedProtocolOspfAreaInterface.LinkType.P2p = &ProtocolOspfAreaInterfaceLinkTypeP2pXml{} - if _, ok := o.Misc["ProtocolOspfAreaInterfaceLinkTypeP2p"]; ok { - nestedProtocolOspfAreaInterface.LinkType.P2p.Misc = o.Misc["ProtocolOspfAreaInterfaceLinkTypeP2p"] - } - } - if oProtocolOspfAreaInterface.LinkType.P2mp != nil { - nestedProtocolOspfAreaInterface.LinkType.P2mp = &ProtocolOspfAreaInterfaceLinkTypeP2mpXml{} - if _, ok := o.Misc["ProtocolOspfAreaInterfaceLinkTypeP2mp"]; ok { - nestedProtocolOspfAreaInterface.LinkType.P2mp.Misc = o.Misc["ProtocolOspfAreaInterfaceLinkTypeP2mp"] - } - } - } - if oProtocolOspfAreaInterface.Bfd != nil { - nestedProtocolOspfAreaInterface.Bfd = &ProtocolOspfAreaInterfaceBfdXml{} - if _, ok := o.Misc["ProtocolOspfAreaInterfaceBfd"]; ok { - nestedProtocolOspfAreaInterface.Bfd.Misc = o.Misc["ProtocolOspfAreaInterfaceBfd"] - } - if oProtocolOspfAreaInterface.Bfd.Profile != nil { - nestedProtocolOspfAreaInterface.Bfd.Profile = oProtocolOspfAreaInterface.Bfd.Profile - } - } - nestedProtocolOspfArea.Interface = append(nestedProtocolOspfArea.Interface, nestedProtocolOspfAreaInterface) - } - } - nestedProtocol.Ospf.Area = append(nestedProtocol.Ospf.Area, nestedProtocolOspfArea) - } - } - if o.Protocol.Ospf.AuthProfile != nil { - nestedProtocol.Ospf.AuthProfile = []ProtocolOspfAuthProfileXml{} - for _, oProtocolOspfAuthProfile := range o.Protocol.Ospf.AuthProfile { - nestedProtocolOspfAuthProfile := ProtocolOspfAuthProfileXml{} - if _, ok := o.Misc["ProtocolOspfAuthProfile"]; ok { - nestedProtocolOspfAuthProfile.Misc = o.Misc["ProtocolOspfAuthProfile"] - } - if oProtocolOspfAuthProfile.Name != "" { - nestedProtocolOspfAuthProfile.Name = oProtocolOspfAuthProfile.Name - } - if oProtocolOspfAuthProfile.Password != nil { - nestedProtocolOspfAuthProfile.Password = oProtocolOspfAuthProfile.Password - } - if oProtocolOspfAuthProfile.Md5 != nil { - nestedProtocolOspfAuthProfile.Md5 = []ProtocolOspfAuthProfileMd5Xml{} - for _, oProtocolOspfAuthProfileMd5 := range oProtocolOspfAuthProfile.Md5 { - nestedProtocolOspfAuthProfileMd5 := ProtocolOspfAuthProfileMd5Xml{} - if _, ok := o.Misc["ProtocolOspfAuthProfileMd5"]; ok { - nestedProtocolOspfAuthProfileMd5.Misc = o.Misc["ProtocolOspfAuthProfileMd5"] - } - if oProtocolOspfAuthProfileMd5.Key != nil { - nestedProtocolOspfAuthProfileMd5.Key = oProtocolOspfAuthProfileMd5.Key - } - if oProtocolOspfAuthProfileMd5.Preferred != nil { - nestedProtocolOspfAuthProfileMd5.Preferred = util.YesNo(oProtocolOspfAuthProfileMd5.Preferred, nil) - } - if oProtocolOspfAuthProfileMd5.Name != "" { - nestedProtocolOspfAuthProfileMd5.Name = oProtocolOspfAuthProfileMd5.Name - } - nestedProtocolOspfAuthProfile.Md5 = append(nestedProtocolOspfAuthProfile.Md5, nestedProtocolOspfAuthProfileMd5) - } - } - nestedProtocol.Ospf.AuthProfile = append(nestedProtocol.Ospf.AuthProfile, nestedProtocolOspfAuthProfile) - } - } - if o.Protocol.Ospf.Enable != nil { - nestedProtocol.Ospf.Enable = util.YesNo(o.Protocol.Ospf.Enable, nil) - } - if o.Protocol.Ospf.ExportRules != nil { - nestedProtocol.Ospf.ExportRules = []ProtocolOspfExportRulesXml{} - for _, oProtocolOspfExportRules := range o.Protocol.Ospf.ExportRules { - nestedProtocolOspfExportRules := ProtocolOspfExportRulesXml{} - if _, ok := o.Misc["ProtocolOspfExportRules"]; ok { - nestedProtocolOspfExportRules.Misc = o.Misc["ProtocolOspfExportRules"] - } - if oProtocolOspfExportRules.NewTag != nil { - nestedProtocolOspfExportRules.NewTag = oProtocolOspfExportRules.NewTag - } - if oProtocolOspfExportRules.Metric != nil { - nestedProtocolOspfExportRules.Metric = oProtocolOspfExportRules.Metric - } - if oProtocolOspfExportRules.Name != "" { - nestedProtocolOspfExportRules.Name = oProtocolOspfExportRules.Name - } - if oProtocolOspfExportRules.NewPathType != nil { - nestedProtocolOspfExportRules.NewPathType = oProtocolOspfExportRules.NewPathType + if oProtocolBgpPeerGroup.Name != "" { + nestedProtocolBgpPeerGroup.Name = oProtocolBgpPeerGroup.Name } - nestedProtocol.Ospf.ExportRules = append(nestedProtocol.Ospf.ExportRules, nestedProtocolOspfExportRules) + nestedProtocol.Bgp.PeerGroup = append(nestedProtocol.Bgp.PeerGroup, nestedProtocolBgpPeerGroup) } } - if o.Protocol.Ospf.RouterId != nil { - nestedProtocol.Ospf.RouterId = o.Protocol.Ospf.RouterId + if o.Protocol.Bgp.RejectDefaultRoute != nil { + nestedProtocol.Bgp.RejectDefaultRoute = util.YesNo(o.Protocol.Bgp.RejectDefaultRoute, nil) } - if o.Protocol.Ospf.Timers != nil { - nestedProtocol.Ospf.Timers = &ProtocolOspfTimersXml{} - if _, ok := o.Misc["ProtocolOspfTimers"]; ok { - nestedProtocol.Ospf.Timers.Misc = o.Misc["ProtocolOspfTimers"] - } - if o.Protocol.Ospf.Timers.LsaInterval != nil { - nestedProtocol.Ospf.Timers.LsaInterval = o.Protocol.Ospf.Timers.LsaInterval - } - if o.Protocol.Ospf.Timers.SpfCalculationDelay != nil { - nestedProtocol.Ospf.Timers.SpfCalculationDelay = o.Protocol.Ospf.Timers.SpfCalculationDelay - } + } + if o.Protocol.Ospf != nil { + nestedProtocol.Ospf = &ProtocolOspfXml{} + if _, ok := o.Misc["ProtocolOspf"]; ok { + nestedProtocol.Ospf.Misc = o.Misc["ProtocolOspf"] } if o.Protocol.Ospf.AllowRedistDefaultRoute != nil { nestedProtocol.Ospf.AllowRedistDefaultRoute = util.YesNo(o.Protocol.Ospf.AllowRedistDefaultRoute, nil) } - if o.Protocol.Ospf.GlobalBfd != nil { - nestedProtocol.Ospf.GlobalBfd = &ProtocolOspfGlobalBfdXml{} - if _, ok := o.Misc["ProtocolOspfGlobalBfd"]; ok { - nestedProtocol.Ospf.GlobalBfd.Misc = o.Misc["ProtocolOspfGlobalBfd"] - } - if o.Protocol.Ospf.GlobalBfd.Profile != nil { - nestedProtocol.Ospf.GlobalBfd.Profile = o.Protocol.Ospf.GlobalBfd.Profile - } + if o.Protocol.Ospf.Enable != nil { + nestedProtocol.Ospf.Enable = util.YesNo(o.Protocol.Ospf.Enable, nil) } if o.Protocol.Ospf.GracefulRestart != nil { nestedProtocol.Ospf.GracefulRestart = &ProtocolOspfGracefulRestartXml{} @@ -5053,343 +4923,373 @@ func specifyEntry(o *Entry) (any, error) { if o.Protocol.Ospf.Rfc1583 != nil { nestedProtocol.Ospf.Rfc1583 = util.YesNo(o.Protocol.Ospf.Rfc1583, nil) } - } - if o.Protocol.Ospfv3 != nil { - nestedProtocol.Ospfv3 = &ProtocolOspfv3Xml{} - if _, ok := o.Misc["ProtocolOspfv3"]; ok { - nestedProtocol.Ospfv3.Misc = o.Misc["ProtocolOspfv3"] - } - if o.Protocol.Ospfv3.Enable != nil { - nestedProtocol.Ospfv3.Enable = util.YesNo(o.Protocol.Ospfv3.Enable, nil) - } - if o.Protocol.Ospfv3.RouterId != nil { - nestedProtocol.Ospfv3.RouterId = o.Protocol.Ospfv3.RouterId - } - if o.Protocol.Ospfv3.Timers != nil { - nestedProtocol.Ospfv3.Timers = &ProtocolOspfv3TimersXml{} - if _, ok := o.Misc["ProtocolOspfv3Timers"]; ok { - nestedProtocol.Ospfv3.Timers.Misc = o.Misc["ProtocolOspfv3Timers"] + if o.Protocol.Ospf.Timers != nil { + nestedProtocol.Ospf.Timers = &ProtocolOspfTimersXml{} + if _, ok := o.Misc["ProtocolOspfTimers"]; ok { + nestedProtocol.Ospf.Timers.Misc = o.Misc["ProtocolOspfTimers"] } - if o.Protocol.Ospfv3.Timers.LsaInterval != nil { - nestedProtocol.Ospfv3.Timers.LsaInterval = o.Protocol.Ospfv3.Timers.LsaInterval + if o.Protocol.Ospf.Timers.LsaInterval != nil { + nestedProtocol.Ospf.Timers.LsaInterval = o.Protocol.Ospf.Timers.LsaInterval } - if o.Protocol.Ospfv3.Timers.SpfCalculationDelay != nil { - nestedProtocol.Ospfv3.Timers.SpfCalculationDelay = o.Protocol.Ospfv3.Timers.SpfCalculationDelay + if o.Protocol.Ospf.Timers.SpfCalculationDelay != nil { + nestedProtocol.Ospf.Timers.SpfCalculationDelay = o.Protocol.Ospf.Timers.SpfCalculationDelay } } - if o.Protocol.Ospfv3.AllowRedistDefaultRoute != nil { - nestedProtocol.Ospfv3.AllowRedistDefaultRoute = util.YesNo(o.Protocol.Ospfv3.AllowRedistDefaultRoute, nil) - } - if o.Protocol.Ospfv3.AuthProfile != nil { - nestedProtocol.Ospfv3.AuthProfile = []ProtocolOspfv3AuthProfileXml{} - for _, oProtocolOspfv3AuthProfile := range o.Protocol.Ospfv3.AuthProfile { - nestedProtocolOspfv3AuthProfile := ProtocolOspfv3AuthProfileXml{} - if _, ok := o.Misc["ProtocolOspfv3AuthProfile"]; ok { - nestedProtocolOspfv3AuthProfile.Misc = o.Misc["ProtocolOspfv3AuthProfile"] - } - if oProtocolOspfv3AuthProfile.Spi != nil { - nestedProtocolOspfv3AuthProfile.Spi = oProtocolOspfv3AuthProfile.Spi - } - if oProtocolOspfv3AuthProfile.Name != "" { - nestedProtocolOspfv3AuthProfile.Name = oProtocolOspfv3AuthProfile.Name + if o.Protocol.Ospf.Area != nil { + nestedProtocol.Ospf.Area = []ProtocolOspfAreaXml{} + for _, oProtocolOspfArea := range o.Protocol.Ospf.Area { + nestedProtocolOspfArea := ProtocolOspfAreaXml{} + if _, ok := o.Misc["ProtocolOspfArea"]; ok { + nestedProtocolOspfArea.Misc = o.Misc["ProtocolOspfArea"] } - if oProtocolOspfv3AuthProfile.Esp != nil { - nestedProtocolOspfv3AuthProfile.Esp = &ProtocolOspfv3AuthProfileEspXml{} - if _, ok := o.Misc["ProtocolOspfv3AuthProfileEsp"]; ok { - nestedProtocolOspfv3AuthProfile.Esp.Misc = o.Misc["ProtocolOspfv3AuthProfileEsp"] - } - if oProtocolOspfv3AuthProfile.Esp.Authentication != nil { - nestedProtocolOspfv3AuthProfile.Esp.Authentication = &ProtocolOspfv3AuthProfileEspAuthenticationXml{} - if _, ok := o.Misc["ProtocolOspfv3AuthProfileEspAuthentication"]; ok { - nestedProtocolOspfv3AuthProfile.Esp.Authentication.Misc = o.Misc["ProtocolOspfv3AuthProfileEspAuthentication"] - } - if oProtocolOspfv3AuthProfile.Esp.Authentication.None != nil { - nestedProtocolOspfv3AuthProfile.Esp.Authentication.None = &ProtocolOspfv3AuthProfileEspAuthenticationNoneXml{} - if _, ok := o.Misc["ProtocolOspfv3AuthProfileEspAuthenticationNone"]; ok { - nestedProtocolOspfv3AuthProfile.Esp.Authentication.None.Misc = o.Misc["ProtocolOspfv3AuthProfileEspAuthenticationNone"] - } + if oProtocolOspfArea.VirtualLink != nil { + nestedProtocolOspfArea.VirtualLink = []ProtocolOspfAreaVirtualLinkXml{} + for _, oProtocolOspfAreaVirtualLink := range oProtocolOspfArea.VirtualLink { + nestedProtocolOspfAreaVirtualLink := ProtocolOspfAreaVirtualLinkXml{} + if _, ok := o.Misc["ProtocolOspfAreaVirtualLink"]; ok { + nestedProtocolOspfAreaVirtualLink.Misc = o.Misc["ProtocolOspfAreaVirtualLink"] } - if oProtocolOspfv3AuthProfile.Esp.Authentication.Md5 != nil { - nestedProtocolOspfv3AuthProfile.Esp.Authentication.Md5 = &ProtocolOspfv3AuthProfileEspAuthenticationMd5Xml{} - if _, ok := o.Misc["ProtocolOspfv3AuthProfileEspAuthenticationMd5"]; ok { - nestedProtocolOspfv3AuthProfile.Esp.Authentication.Md5.Misc = o.Misc["ProtocolOspfv3AuthProfileEspAuthenticationMd5"] - } - if oProtocolOspfv3AuthProfile.Esp.Authentication.Md5.Key != nil { - nestedProtocolOspfv3AuthProfile.Esp.Authentication.Md5.Key = oProtocolOspfv3AuthProfile.Esp.Authentication.Md5.Key - } + if oProtocolOspfAreaVirtualLink.RetransmitInterval != nil { + nestedProtocolOspfAreaVirtualLink.RetransmitInterval = oProtocolOspfAreaVirtualLink.RetransmitInterval } - if oProtocolOspfv3AuthProfile.Esp.Authentication.Sha1 != nil { - nestedProtocolOspfv3AuthProfile.Esp.Authentication.Sha1 = &ProtocolOspfv3AuthProfileEspAuthenticationSha1Xml{} - if _, ok := o.Misc["ProtocolOspfv3AuthProfileEspAuthenticationSha1"]; ok { - nestedProtocolOspfv3AuthProfile.Esp.Authentication.Sha1.Misc = o.Misc["ProtocolOspfv3AuthProfileEspAuthenticationSha1"] - } - if oProtocolOspfv3AuthProfile.Esp.Authentication.Sha1.Key != nil { - nestedProtocolOspfv3AuthProfile.Esp.Authentication.Sha1.Key = oProtocolOspfv3AuthProfile.Esp.Authentication.Sha1.Key - } + if oProtocolOspfAreaVirtualLink.TransitDelay != nil { + nestedProtocolOspfAreaVirtualLink.TransitDelay = oProtocolOspfAreaVirtualLink.TransitDelay } - if oProtocolOspfv3AuthProfile.Esp.Authentication.Sha256 != nil { - nestedProtocolOspfv3AuthProfile.Esp.Authentication.Sha256 = &ProtocolOspfv3AuthProfileEspAuthenticationSha256Xml{} - if _, ok := o.Misc["ProtocolOspfv3AuthProfileEspAuthenticationSha256"]; ok { - nestedProtocolOspfv3AuthProfile.Esp.Authentication.Sha256.Misc = o.Misc["ProtocolOspfv3AuthProfileEspAuthenticationSha256"] - } - if oProtocolOspfv3AuthProfile.Esp.Authentication.Sha256.Key != nil { - nestedProtocolOspfv3AuthProfile.Esp.Authentication.Sha256.Key = oProtocolOspfv3AuthProfile.Esp.Authentication.Sha256.Key - } + if oProtocolOspfAreaVirtualLink.Authentication != nil { + nestedProtocolOspfAreaVirtualLink.Authentication = oProtocolOspfAreaVirtualLink.Authentication } - if oProtocolOspfv3AuthProfile.Esp.Authentication.Sha384 != nil { - nestedProtocolOspfv3AuthProfile.Esp.Authentication.Sha384 = &ProtocolOspfv3AuthProfileEspAuthenticationSha384Xml{} - if _, ok := o.Misc["ProtocolOspfv3AuthProfileEspAuthenticationSha384"]; ok { - nestedProtocolOspfv3AuthProfile.Esp.Authentication.Sha384.Misc = o.Misc["ProtocolOspfv3AuthProfileEspAuthenticationSha384"] - } - if oProtocolOspfv3AuthProfile.Esp.Authentication.Sha384.Key != nil { - nestedProtocolOspfv3AuthProfile.Esp.Authentication.Sha384.Key = oProtocolOspfv3AuthProfile.Esp.Authentication.Sha384.Key - } + if oProtocolOspfAreaVirtualLink.Name != "" { + nestedProtocolOspfAreaVirtualLink.Name = oProtocolOspfAreaVirtualLink.Name } - if oProtocolOspfv3AuthProfile.Esp.Authentication.Sha512 != nil { - nestedProtocolOspfv3AuthProfile.Esp.Authentication.Sha512 = &ProtocolOspfv3AuthProfileEspAuthenticationSha512Xml{} - if _, ok := o.Misc["ProtocolOspfv3AuthProfileEspAuthenticationSha512"]; ok { - nestedProtocolOspfv3AuthProfile.Esp.Authentication.Sha512.Misc = o.Misc["ProtocolOspfv3AuthProfileEspAuthenticationSha512"] - } - if oProtocolOspfv3AuthProfile.Esp.Authentication.Sha512.Key != nil { - nestedProtocolOspfv3AuthProfile.Esp.Authentication.Sha512.Key = oProtocolOspfv3AuthProfile.Esp.Authentication.Sha512.Key - } + if oProtocolOspfAreaVirtualLink.NeighborId != nil { + nestedProtocolOspfAreaVirtualLink.NeighborId = oProtocolOspfAreaVirtualLink.NeighborId } - } - if oProtocolOspfv3AuthProfile.Esp.Encryption != nil { - nestedProtocolOspfv3AuthProfile.Esp.Encryption = &ProtocolOspfv3AuthProfileEspEncryptionXml{} - if _, ok := o.Misc["ProtocolOspfv3AuthProfileEspEncryption"]; ok { - nestedProtocolOspfv3AuthProfile.Esp.Encryption.Misc = o.Misc["ProtocolOspfv3AuthProfileEspEncryption"] + if oProtocolOspfAreaVirtualLink.TransitAreaId != nil { + nestedProtocolOspfAreaVirtualLink.TransitAreaId = oProtocolOspfAreaVirtualLink.TransitAreaId } - if oProtocolOspfv3AuthProfile.Esp.Encryption.Algorithm != nil { - nestedProtocolOspfv3AuthProfile.Esp.Encryption.Algorithm = oProtocolOspfv3AuthProfile.Esp.Encryption.Algorithm + if oProtocolOspfAreaVirtualLink.DeadCounts != nil { + nestedProtocolOspfAreaVirtualLink.DeadCounts = oProtocolOspfAreaVirtualLink.DeadCounts } - if oProtocolOspfv3AuthProfile.Esp.Encryption.Key != nil { - nestedProtocolOspfv3AuthProfile.Esp.Encryption.Key = oProtocolOspfv3AuthProfile.Esp.Encryption.Key + if oProtocolOspfAreaVirtualLink.Enable != nil { + nestedProtocolOspfAreaVirtualLink.Enable = util.YesNo(oProtocolOspfAreaVirtualLink.Enable, nil) } - } - } - if oProtocolOspfv3AuthProfile.Ah != nil { - nestedProtocolOspfv3AuthProfile.Ah = &ProtocolOspfv3AuthProfileAhXml{} - if _, ok := o.Misc["ProtocolOspfv3AuthProfileAh"]; ok { - nestedProtocolOspfv3AuthProfile.Ah.Misc = o.Misc["ProtocolOspfv3AuthProfileAh"] - } - if oProtocolOspfv3AuthProfile.Ah.Sha256 != nil { - nestedProtocolOspfv3AuthProfile.Ah.Sha256 = &ProtocolOspfv3AuthProfileAhSha256Xml{} - if _, ok := o.Misc["ProtocolOspfv3AuthProfileAhSha256"]; ok { - nestedProtocolOspfv3AuthProfile.Ah.Sha256.Misc = o.Misc["ProtocolOspfv3AuthProfileAhSha256"] + if oProtocolOspfAreaVirtualLink.HelloInterval != nil { + nestedProtocolOspfAreaVirtualLink.HelloInterval = oProtocolOspfAreaVirtualLink.HelloInterval } - if oProtocolOspfv3AuthProfile.Ah.Sha256.Key != nil { - nestedProtocolOspfv3AuthProfile.Ah.Sha256.Key = oProtocolOspfv3AuthProfile.Ah.Sha256.Key + if oProtocolOspfAreaVirtualLink.Bfd != nil { + nestedProtocolOspfAreaVirtualLink.Bfd = &ProtocolOspfAreaVirtualLinkBfdXml{} + if _, ok := o.Misc["ProtocolOspfAreaVirtualLinkBfd"]; ok { + nestedProtocolOspfAreaVirtualLink.Bfd.Misc = o.Misc["ProtocolOspfAreaVirtualLinkBfd"] + } + if oProtocolOspfAreaVirtualLink.Bfd.Profile != nil { + nestedProtocolOspfAreaVirtualLink.Bfd.Profile = oProtocolOspfAreaVirtualLink.Bfd.Profile + } } + nestedProtocolOspfArea.VirtualLink = append(nestedProtocolOspfArea.VirtualLink, nestedProtocolOspfAreaVirtualLink) } - if oProtocolOspfv3AuthProfile.Ah.Sha384 != nil { - nestedProtocolOspfv3AuthProfile.Ah.Sha384 = &ProtocolOspfv3AuthProfileAhSha384Xml{} - if _, ok := o.Misc["ProtocolOspfv3AuthProfileAhSha384"]; ok { - nestedProtocolOspfv3AuthProfile.Ah.Sha384.Misc = o.Misc["ProtocolOspfv3AuthProfileAhSha384"] - } - if oProtocolOspfv3AuthProfile.Ah.Sha384.Key != nil { - nestedProtocolOspfv3AuthProfile.Ah.Sha384.Key = oProtocolOspfv3AuthProfile.Ah.Sha384.Key - } + } + if oProtocolOspfArea.Name != "" { + nestedProtocolOspfArea.Name = oProtocolOspfArea.Name + } + if oProtocolOspfArea.Type != nil { + nestedProtocolOspfArea.Type = &ProtocolOspfAreaTypeXml{} + if _, ok := o.Misc["ProtocolOspfAreaType"]; ok { + nestedProtocolOspfArea.Type.Misc = o.Misc["ProtocolOspfAreaType"] } - if oProtocolOspfv3AuthProfile.Ah.Sha512 != nil { - nestedProtocolOspfv3AuthProfile.Ah.Sha512 = &ProtocolOspfv3AuthProfileAhSha512Xml{} - if _, ok := o.Misc["ProtocolOspfv3AuthProfileAhSha512"]; ok { - nestedProtocolOspfv3AuthProfile.Ah.Sha512.Misc = o.Misc["ProtocolOspfv3AuthProfileAhSha512"] - } - if oProtocolOspfv3AuthProfile.Ah.Sha512.Key != nil { - nestedProtocolOspfv3AuthProfile.Ah.Sha512.Key = oProtocolOspfv3AuthProfile.Ah.Sha512.Key + if oProtocolOspfArea.Type.Normal != nil { + nestedProtocolOspfArea.Type.Normal = &ProtocolOspfAreaTypeNormalXml{} + if _, ok := o.Misc["ProtocolOspfAreaTypeNormal"]; ok { + nestedProtocolOspfArea.Type.Normal.Misc = o.Misc["ProtocolOspfAreaTypeNormal"] } } - if oProtocolOspfv3AuthProfile.Ah.Md5 != nil { - nestedProtocolOspfv3AuthProfile.Ah.Md5 = &ProtocolOspfv3AuthProfileAhMd5Xml{} - if _, ok := o.Misc["ProtocolOspfv3AuthProfileAhMd5"]; ok { - nestedProtocolOspfv3AuthProfile.Ah.Md5.Misc = o.Misc["ProtocolOspfv3AuthProfileAhMd5"] - } - if oProtocolOspfv3AuthProfile.Ah.Md5.Key != nil { - nestedProtocolOspfv3AuthProfile.Ah.Md5.Key = oProtocolOspfv3AuthProfile.Ah.Md5.Key + if oProtocolOspfArea.Type.Stub != nil { + nestedProtocolOspfArea.Type.Stub = &ProtocolOspfAreaTypeStubXml{} + if _, ok := o.Misc["ProtocolOspfAreaTypeStub"]; ok { + nestedProtocolOspfArea.Type.Stub.Misc = o.Misc["ProtocolOspfAreaTypeStub"] } - } - if oProtocolOspfv3AuthProfile.Ah.Sha1 != nil { - nestedProtocolOspfv3AuthProfile.Ah.Sha1 = &ProtocolOspfv3AuthProfileAhSha1Xml{} - if _, ok := o.Misc["ProtocolOspfv3AuthProfileAhSha1"]; ok { - nestedProtocolOspfv3AuthProfile.Ah.Sha1.Misc = o.Misc["ProtocolOspfv3AuthProfileAhSha1"] + if oProtocolOspfArea.Type.Stub.DefaultRoute != nil { + nestedProtocolOspfArea.Type.Stub.DefaultRoute = &ProtocolOspfAreaTypeStubDefaultRouteXml{} + if _, ok := o.Misc["ProtocolOspfAreaTypeStubDefaultRoute"]; ok { + nestedProtocolOspfArea.Type.Stub.DefaultRoute.Misc = o.Misc["ProtocolOspfAreaTypeStubDefaultRoute"] + } + if oProtocolOspfArea.Type.Stub.DefaultRoute.Disable != nil { + nestedProtocolOspfArea.Type.Stub.DefaultRoute.Disable = &ProtocolOspfAreaTypeStubDefaultRouteDisableXml{} + if _, ok := o.Misc["ProtocolOspfAreaTypeStubDefaultRouteDisable"]; ok { + nestedProtocolOspfArea.Type.Stub.DefaultRoute.Disable.Misc = o.Misc["ProtocolOspfAreaTypeStubDefaultRouteDisable"] + } + } + if oProtocolOspfArea.Type.Stub.DefaultRoute.Advertise != nil { + nestedProtocolOspfArea.Type.Stub.DefaultRoute.Advertise = &ProtocolOspfAreaTypeStubDefaultRouteAdvertiseXml{} + if _, ok := o.Misc["ProtocolOspfAreaTypeStubDefaultRouteAdvertise"]; ok { + nestedProtocolOspfArea.Type.Stub.DefaultRoute.Advertise.Misc = o.Misc["ProtocolOspfAreaTypeStubDefaultRouteAdvertise"] + } + if oProtocolOspfArea.Type.Stub.DefaultRoute.Advertise.Metric != nil { + nestedProtocolOspfArea.Type.Stub.DefaultRoute.Advertise.Metric = oProtocolOspfArea.Type.Stub.DefaultRoute.Advertise.Metric + } + } } - if oProtocolOspfv3AuthProfile.Ah.Sha1.Key != nil { - nestedProtocolOspfv3AuthProfile.Ah.Sha1.Key = oProtocolOspfv3AuthProfile.Ah.Sha1.Key + if oProtocolOspfArea.Type.Stub.AcceptSummary != nil { + nestedProtocolOspfArea.Type.Stub.AcceptSummary = util.YesNo(oProtocolOspfArea.Type.Stub.AcceptSummary, nil) } } - } - nestedProtocol.Ospfv3.AuthProfile = append(nestedProtocol.Ospfv3.AuthProfile, nestedProtocolOspfv3AuthProfile) - } - } - if o.Protocol.Ospfv3.DisableTransitTraffic != nil { - nestedProtocol.Ospfv3.DisableTransitTraffic = util.YesNo(o.Protocol.Ospfv3.DisableTransitTraffic, nil) - } - if o.Protocol.Ospfv3.ExportRules != nil { - nestedProtocol.Ospfv3.ExportRules = []ProtocolOspfv3ExportRulesXml{} - for _, oProtocolOspfv3ExportRules := range o.Protocol.Ospfv3.ExportRules { - nestedProtocolOspfv3ExportRules := ProtocolOspfv3ExportRulesXml{} - if _, ok := o.Misc["ProtocolOspfv3ExportRules"]; ok { - nestedProtocolOspfv3ExportRules.Misc = o.Misc["ProtocolOspfv3ExportRules"] - } - if oProtocolOspfv3ExportRules.NewPathType != nil { - nestedProtocolOspfv3ExportRules.NewPathType = oProtocolOspfv3ExportRules.NewPathType - } - if oProtocolOspfv3ExportRules.NewTag != nil { - nestedProtocolOspfv3ExportRules.NewTag = oProtocolOspfv3ExportRules.NewTag - } - if oProtocolOspfv3ExportRules.Metric != nil { - nestedProtocolOspfv3ExportRules.Metric = oProtocolOspfv3ExportRules.Metric - } - if oProtocolOspfv3ExportRules.Name != "" { - nestedProtocolOspfv3ExportRules.Name = oProtocolOspfv3ExportRules.Name - } - nestedProtocol.Ospfv3.ExportRules = append(nestedProtocol.Ospfv3.ExportRules, nestedProtocolOspfv3ExportRules) - } - } - if o.Protocol.Ospfv3.GlobalBfd != nil { - nestedProtocol.Ospfv3.GlobalBfd = &ProtocolOspfv3GlobalBfdXml{} - if _, ok := o.Misc["ProtocolOspfv3GlobalBfd"]; ok { - nestedProtocol.Ospfv3.GlobalBfd.Misc = o.Misc["ProtocolOspfv3GlobalBfd"] - } - if o.Protocol.Ospfv3.GlobalBfd.Profile != nil { - nestedProtocol.Ospfv3.GlobalBfd.Profile = o.Protocol.Ospfv3.GlobalBfd.Profile - } - } - if o.Protocol.Ospfv3.GracefulRestart != nil { - nestedProtocol.Ospfv3.GracefulRestart = &ProtocolOspfv3GracefulRestartXml{} - if _, ok := o.Misc["ProtocolOspfv3GracefulRestart"]; ok { - nestedProtocol.Ospfv3.GracefulRestart.Misc = o.Misc["ProtocolOspfv3GracefulRestart"] - } - if o.Protocol.Ospfv3.GracefulRestart.HelperEnable != nil { - nestedProtocol.Ospfv3.GracefulRestart.HelperEnable = util.YesNo(o.Protocol.Ospfv3.GracefulRestart.HelperEnable, nil) - } - if o.Protocol.Ospfv3.GracefulRestart.MaxNeighborRestartTime != nil { - nestedProtocol.Ospfv3.GracefulRestart.MaxNeighborRestartTime = o.Protocol.Ospfv3.GracefulRestart.MaxNeighborRestartTime - } - if o.Protocol.Ospfv3.GracefulRestart.StrictLSAChecking != nil { - nestedProtocol.Ospfv3.GracefulRestart.StrictLSAChecking = util.YesNo(o.Protocol.Ospfv3.GracefulRestart.StrictLSAChecking, nil) - } - if o.Protocol.Ospfv3.GracefulRestart.Enable != nil { - nestedProtocol.Ospfv3.GracefulRestart.Enable = util.YesNo(o.Protocol.Ospfv3.GracefulRestart.Enable, nil) - } - if o.Protocol.Ospfv3.GracefulRestart.GracePeriod != nil { - nestedProtocol.Ospfv3.GracefulRestart.GracePeriod = o.Protocol.Ospfv3.GracefulRestart.GracePeriod - } - } - if o.Protocol.Ospfv3.RejectDefaultRoute != nil { - nestedProtocol.Ospfv3.RejectDefaultRoute = util.YesNo(o.Protocol.Ospfv3.RejectDefaultRoute, nil) - } - if o.Protocol.Ospfv3.Area != nil { - nestedProtocol.Ospfv3.Area = []ProtocolOspfv3AreaXml{} - for _, oProtocolOspfv3Area := range o.Protocol.Ospfv3.Area { - nestedProtocolOspfv3Area := ProtocolOspfv3AreaXml{} - if _, ok := o.Misc["ProtocolOspfv3Area"]; ok { - nestedProtocolOspfv3Area.Misc = o.Misc["ProtocolOspfv3Area"] - } - if oProtocolOspfv3Area.Authentication != nil { - nestedProtocolOspfv3Area.Authentication = oProtocolOspfv3Area.Authentication - } - if oProtocolOspfv3Area.Type != nil { - nestedProtocolOspfv3Area.Type = &ProtocolOspfv3AreaTypeXml{} - if _, ok := o.Misc["ProtocolOspfv3AreaType"]; ok { - nestedProtocolOspfv3Area.Type.Misc = o.Misc["ProtocolOspfv3AreaType"] - } - if oProtocolOspfv3Area.Type.Nssa != nil { - nestedProtocolOspfv3Area.Type.Nssa = &ProtocolOspfv3AreaTypeNssaXml{} - if _, ok := o.Misc["ProtocolOspfv3AreaTypeNssa"]; ok { - nestedProtocolOspfv3Area.Type.Nssa.Misc = o.Misc["ProtocolOspfv3AreaTypeNssa"] + if oProtocolOspfArea.Type.Nssa != nil { + nestedProtocolOspfArea.Type.Nssa = &ProtocolOspfAreaTypeNssaXml{} + if _, ok := o.Misc["ProtocolOspfAreaTypeNssa"]; ok { + nestedProtocolOspfArea.Type.Nssa.Misc = o.Misc["ProtocolOspfAreaTypeNssa"] } - if oProtocolOspfv3Area.Type.Nssa.AcceptSummary != nil { - nestedProtocolOspfv3Area.Type.Nssa.AcceptSummary = util.YesNo(oProtocolOspfv3Area.Type.Nssa.AcceptSummary, nil) + if oProtocolOspfArea.Type.Nssa.AcceptSummary != nil { + nestedProtocolOspfArea.Type.Nssa.AcceptSummary = util.YesNo(oProtocolOspfArea.Type.Nssa.AcceptSummary, nil) } - if oProtocolOspfv3Area.Type.Nssa.DefaultRoute != nil { - nestedProtocolOspfv3Area.Type.Nssa.DefaultRoute = &ProtocolOspfv3AreaTypeNssaDefaultRouteXml{} - if _, ok := o.Misc["ProtocolOspfv3AreaTypeNssaDefaultRoute"]; ok { - nestedProtocolOspfv3Area.Type.Nssa.DefaultRoute.Misc = o.Misc["ProtocolOspfv3AreaTypeNssaDefaultRoute"] + if oProtocolOspfArea.Type.Nssa.DefaultRoute != nil { + nestedProtocolOspfArea.Type.Nssa.DefaultRoute = &ProtocolOspfAreaTypeNssaDefaultRouteXml{} + if _, ok := o.Misc["ProtocolOspfAreaTypeNssaDefaultRoute"]; ok { + nestedProtocolOspfArea.Type.Nssa.DefaultRoute.Misc = o.Misc["ProtocolOspfAreaTypeNssaDefaultRoute"] } - if oProtocolOspfv3Area.Type.Nssa.DefaultRoute.Disable != nil { - nestedProtocolOspfv3Area.Type.Nssa.DefaultRoute.Disable = &ProtocolOspfv3AreaTypeNssaDefaultRouteDisableXml{} - if _, ok := o.Misc["ProtocolOspfv3AreaTypeNssaDefaultRouteDisable"]; ok { - nestedProtocolOspfv3Area.Type.Nssa.DefaultRoute.Disable.Misc = o.Misc["ProtocolOspfv3AreaTypeNssaDefaultRouteDisable"] + if oProtocolOspfArea.Type.Nssa.DefaultRoute.Disable != nil { + nestedProtocolOspfArea.Type.Nssa.DefaultRoute.Disable = &ProtocolOspfAreaTypeNssaDefaultRouteDisableXml{} + if _, ok := o.Misc["ProtocolOspfAreaTypeNssaDefaultRouteDisable"]; ok { + nestedProtocolOspfArea.Type.Nssa.DefaultRoute.Disable.Misc = o.Misc["ProtocolOspfAreaTypeNssaDefaultRouteDisable"] } } - if oProtocolOspfv3Area.Type.Nssa.DefaultRoute.Advertise != nil { - nestedProtocolOspfv3Area.Type.Nssa.DefaultRoute.Advertise = &ProtocolOspfv3AreaTypeNssaDefaultRouteAdvertiseXml{} - if _, ok := o.Misc["ProtocolOspfv3AreaTypeNssaDefaultRouteAdvertise"]; ok { - nestedProtocolOspfv3Area.Type.Nssa.DefaultRoute.Advertise.Misc = o.Misc["ProtocolOspfv3AreaTypeNssaDefaultRouteAdvertise"] + if oProtocolOspfArea.Type.Nssa.DefaultRoute.Advertise != nil { + nestedProtocolOspfArea.Type.Nssa.DefaultRoute.Advertise = &ProtocolOspfAreaTypeNssaDefaultRouteAdvertiseXml{} + if _, ok := o.Misc["ProtocolOspfAreaTypeNssaDefaultRouteAdvertise"]; ok { + nestedProtocolOspfArea.Type.Nssa.DefaultRoute.Advertise.Misc = o.Misc["ProtocolOspfAreaTypeNssaDefaultRouteAdvertise"] } - if oProtocolOspfv3Area.Type.Nssa.DefaultRoute.Advertise.Metric != nil { - nestedProtocolOspfv3Area.Type.Nssa.DefaultRoute.Advertise.Metric = oProtocolOspfv3Area.Type.Nssa.DefaultRoute.Advertise.Metric + if oProtocolOspfArea.Type.Nssa.DefaultRoute.Advertise.Metric != nil { + nestedProtocolOspfArea.Type.Nssa.DefaultRoute.Advertise.Metric = oProtocolOspfArea.Type.Nssa.DefaultRoute.Advertise.Metric } - if oProtocolOspfv3Area.Type.Nssa.DefaultRoute.Advertise.Type != nil { - nestedProtocolOspfv3Area.Type.Nssa.DefaultRoute.Advertise.Type = oProtocolOspfv3Area.Type.Nssa.DefaultRoute.Advertise.Type + if oProtocolOspfArea.Type.Nssa.DefaultRoute.Advertise.Type != nil { + nestedProtocolOspfArea.Type.Nssa.DefaultRoute.Advertise.Type = oProtocolOspfArea.Type.Nssa.DefaultRoute.Advertise.Type } } } - if oProtocolOspfv3Area.Type.Nssa.NssaExtRange != nil { - nestedProtocolOspfv3Area.Type.Nssa.NssaExtRange = []ProtocolOspfv3AreaTypeNssaNssaExtRangeXml{} - for _, oProtocolOspfv3AreaTypeNssaNssaExtRange := range oProtocolOspfv3Area.Type.Nssa.NssaExtRange { - nestedProtocolOspfv3AreaTypeNssaNssaExtRange := ProtocolOspfv3AreaTypeNssaNssaExtRangeXml{} - if _, ok := o.Misc["ProtocolOspfv3AreaTypeNssaNssaExtRange"]; ok { - nestedProtocolOspfv3AreaTypeNssaNssaExtRange.Misc = o.Misc["ProtocolOspfv3AreaTypeNssaNssaExtRange"] - } - if oProtocolOspfv3AreaTypeNssaNssaExtRange.Name != "" { - nestedProtocolOspfv3AreaTypeNssaNssaExtRange.Name = oProtocolOspfv3AreaTypeNssaNssaExtRange.Name + if oProtocolOspfArea.Type.Nssa.NssaExtRange != nil { + nestedProtocolOspfArea.Type.Nssa.NssaExtRange = []ProtocolOspfAreaTypeNssaNssaExtRangeXml{} + for _, oProtocolOspfAreaTypeNssaNssaExtRange := range oProtocolOspfArea.Type.Nssa.NssaExtRange { + nestedProtocolOspfAreaTypeNssaNssaExtRange := ProtocolOspfAreaTypeNssaNssaExtRangeXml{} + if _, ok := o.Misc["ProtocolOspfAreaTypeNssaNssaExtRange"]; ok { + nestedProtocolOspfAreaTypeNssaNssaExtRange.Misc = o.Misc["ProtocolOspfAreaTypeNssaNssaExtRange"] } - if oProtocolOspfv3AreaTypeNssaNssaExtRange.Advertise != nil { - nestedProtocolOspfv3AreaTypeNssaNssaExtRange.Advertise = &ProtocolOspfv3AreaTypeNssaNssaExtRangeAdvertiseXml{} - if _, ok := o.Misc["ProtocolOspfv3AreaTypeNssaNssaExtRangeAdvertise"]; ok { - nestedProtocolOspfv3AreaTypeNssaNssaExtRange.Advertise.Misc = o.Misc["ProtocolOspfv3AreaTypeNssaNssaExtRangeAdvertise"] + if oProtocolOspfAreaTypeNssaNssaExtRange.Name != "" { + nestedProtocolOspfAreaTypeNssaNssaExtRange.Name = oProtocolOspfAreaTypeNssaNssaExtRange.Name + } + if oProtocolOspfAreaTypeNssaNssaExtRange.Advertise != nil { + nestedProtocolOspfAreaTypeNssaNssaExtRange.Advertise = &ProtocolOspfAreaTypeNssaNssaExtRangeAdvertiseXml{} + if _, ok := o.Misc["ProtocolOspfAreaTypeNssaNssaExtRangeAdvertise"]; ok { + nestedProtocolOspfAreaTypeNssaNssaExtRange.Advertise.Misc = o.Misc["ProtocolOspfAreaTypeNssaNssaExtRangeAdvertise"] } } - if oProtocolOspfv3AreaTypeNssaNssaExtRange.Suppress != nil { - nestedProtocolOspfv3AreaTypeNssaNssaExtRange.Suppress = &ProtocolOspfv3AreaTypeNssaNssaExtRangeSuppressXml{} - if _, ok := o.Misc["ProtocolOspfv3AreaTypeNssaNssaExtRangeSuppress"]; ok { - nestedProtocolOspfv3AreaTypeNssaNssaExtRange.Suppress.Misc = o.Misc["ProtocolOspfv3AreaTypeNssaNssaExtRangeSuppress"] + if oProtocolOspfAreaTypeNssaNssaExtRange.Suppress != nil { + nestedProtocolOspfAreaTypeNssaNssaExtRange.Suppress = &ProtocolOspfAreaTypeNssaNssaExtRangeSuppressXml{} + if _, ok := o.Misc["ProtocolOspfAreaTypeNssaNssaExtRangeSuppress"]; ok { + nestedProtocolOspfAreaTypeNssaNssaExtRange.Suppress.Misc = o.Misc["ProtocolOspfAreaTypeNssaNssaExtRangeSuppress"] } } - nestedProtocolOspfv3Area.Type.Nssa.NssaExtRange = append(nestedProtocolOspfv3Area.Type.Nssa.NssaExtRange, nestedProtocolOspfv3AreaTypeNssaNssaExtRange) + nestedProtocolOspfArea.Type.Nssa.NssaExtRange = append(nestedProtocolOspfArea.Type.Nssa.NssaExtRange, nestedProtocolOspfAreaTypeNssaNssaExtRange) } } } - if oProtocolOspfv3Area.Type.Normal != nil { - nestedProtocolOspfv3Area.Type.Normal = &ProtocolOspfv3AreaTypeNormalXml{} - if _, ok := o.Misc["ProtocolOspfv3AreaTypeNormal"]; ok { - nestedProtocolOspfv3Area.Type.Normal.Misc = o.Misc["ProtocolOspfv3AreaTypeNormal"] + } + if oProtocolOspfArea.Range != nil { + nestedProtocolOspfArea.Range = []ProtocolOspfAreaRangeXml{} + for _, oProtocolOspfAreaRange := range oProtocolOspfArea.Range { + nestedProtocolOspfAreaRange := ProtocolOspfAreaRangeXml{} + if _, ok := o.Misc["ProtocolOspfAreaRange"]; ok { + nestedProtocolOspfAreaRange.Misc = o.Misc["ProtocolOspfAreaRange"] + } + if oProtocolOspfAreaRange.Name != "" { + nestedProtocolOspfAreaRange.Name = oProtocolOspfAreaRange.Name + } + if oProtocolOspfAreaRange.Advertise != nil { + nestedProtocolOspfAreaRange.Advertise = &ProtocolOspfAreaRangeAdvertiseXml{} + if _, ok := o.Misc["ProtocolOspfAreaRangeAdvertise"]; ok { + nestedProtocolOspfAreaRange.Advertise.Misc = o.Misc["ProtocolOspfAreaRangeAdvertise"] + } + } + if oProtocolOspfAreaRange.Suppress != nil { + nestedProtocolOspfAreaRange.Suppress = &ProtocolOspfAreaRangeSuppressXml{} + if _, ok := o.Misc["ProtocolOspfAreaRangeSuppress"]; ok { + nestedProtocolOspfAreaRange.Suppress.Misc = o.Misc["ProtocolOspfAreaRangeSuppress"] + } } + nestedProtocolOspfArea.Range = append(nestedProtocolOspfArea.Range, nestedProtocolOspfAreaRange) } - if oProtocolOspfv3Area.Type.Stub != nil { - nestedProtocolOspfv3Area.Type.Stub = &ProtocolOspfv3AreaTypeStubXml{} - if _, ok := o.Misc["ProtocolOspfv3AreaTypeStub"]; ok { - nestedProtocolOspfv3Area.Type.Stub.Misc = o.Misc["ProtocolOspfv3AreaTypeStub"] + } + if oProtocolOspfArea.Interface != nil { + nestedProtocolOspfArea.Interface = []ProtocolOspfAreaInterfaceXml{} + for _, oProtocolOspfAreaInterface := range oProtocolOspfArea.Interface { + nestedProtocolOspfAreaInterface := ProtocolOspfAreaInterfaceXml{} + if _, ok := o.Misc["ProtocolOspfAreaInterface"]; ok { + nestedProtocolOspfAreaInterface.Misc = o.Misc["ProtocolOspfAreaInterface"] } - if oProtocolOspfv3Area.Type.Stub.AcceptSummary != nil { - nestedProtocolOspfv3Area.Type.Stub.AcceptSummary = util.YesNo(oProtocolOspfv3Area.Type.Stub.AcceptSummary, nil) + if oProtocolOspfAreaInterface.Metric != nil { + nestedProtocolOspfAreaInterface.Metric = oProtocolOspfAreaInterface.Metric } - if oProtocolOspfv3Area.Type.Stub.DefaultRoute != nil { - nestedProtocolOspfv3Area.Type.Stub.DefaultRoute = &ProtocolOspfv3AreaTypeStubDefaultRouteXml{} - if _, ok := o.Misc["ProtocolOspfv3AreaTypeStubDefaultRoute"]; ok { - nestedProtocolOspfv3Area.Type.Stub.DefaultRoute.Misc = o.Misc["ProtocolOspfv3AreaTypeStubDefaultRoute"] + if oProtocolOspfAreaInterface.Neighbor != nil { + nestedProtocolOspfAreaInterface.Neighbor = []ProtocolOspfAreaInterfaceNeighborXml{} + for _, oProtocolOspfAreaInterfaceNeighbor := range oProtocolOspfAreaInterface.Neighbor { + nestedProtocolOspfAreaInterfaceNeighbor := ProtocolOspfAreaInterfaceNeighborXml{} + if _, ok := o.Misc["ProtocolOspfAreaInterfaceNeighbor"]; ok { + nestedProtocolOspfAreaInterfaceNeighbor.Misc = o.Misc["ProtocolOspfAreaInterfaceNeighbor"] + } + if oProtocolOspfAreaInterfaceNeighbor.Name != "" { + nestedProtocolOspfAreaInterfaceNeighbor.Name = oProtocolOspfAreaInterfaceNeighbor.Name + } + nestedProtocolOspfAreaInterface.Neighbor = append(nestedProtocolOspfAreaInterface.Neighbor, nestedProtocolOspfAreaInterfaceNeighbor) } - if oProtocolOspfv3Area.Type.Stub.DefaultRoute.Disable != nil { - nestedProtocolOspfv3Area.Type.Stub.DefaultRoute.Disable = &ProtocolOspfv3AreaTypeStubDefaultRouteDisableXml{} - if _, ok := o.Misc["ProtocolOspfv3AreaTypeStubDefaultRouteDisable"]; ok { - nestedProtocolOspfv3Area.Type.Stub.DefaultRoute.Disable.Misc = o.Misc["ProtocolOspfv3AreaTypeStubDefaultRouteDisable"] + } + if oProtocolOspfAreaInterface.LinkType != nil { + nestedProtocolOspfAreaInterface.LinkType = &ProtocolOspfAreaInterfaceLinkTypeXml{} + if _, ok := o.Misc["ProtocolOspfAreaInterfaceLinkType"]; ok { + nestedProtocolOspfAreaInterface.LinkType.Misc = o.Misc["ProtocolOspfAreaInterfaceLinkType"] + } + if oProtocolOspfAreaInterface.LinkType.Broadcast != nil { + nestedProtocolOspfAreaInterface.LinkType.Broadcast = &ProtocolOspfAreaInterfaceLinkTypeBroadcastXml{} + if _, ok := o.Misc["ProtocolOspfAreaInterfaceLinkTypeBroadcast"]; ok { + nestedProtocolOspfAreaInterface.LinkType.Broadcast.Misc = o.Misc["ProtocolOspfAreaInterfaceLinkTypeBroadcast"] } } - if oProtocolOspfv3Area.Type.Stub.DefaultRoute.Advertise != nil { - nestedProtocolOspfv3Area.Type.Stub.DefaultRoute.Advertise = &ProtocolOspfv3AreaTypeStubDefaultRouteAdvertiseXml{} - if _, ok := o.Misc["ProtocolOspfv3AreaTypeStubDefaultRouteAdvertise"]; ok { - nestedProtocolOspfv3Area.Type.Stub.DefaultRoute.Advertise.Misc = o.Misc["ProtocolOspfv3AreaTypeStubDefaultRouteAdvertise"] + if oProtocolOspfAreaInterface.LinkType.P2p != nil { + nestedProtocolOspfAreaInterface.LinkType.P2p = &ProtocolOspfAreaInterfaceLinkTypeP2pXml{} + if _, ok := o.Misc["ProtocolOspfAreaInterfaceLinkTypeP2p"]; ok { + nestedProtocolOspfAreaInterface.LinkType.P2p.Misc = o.Misc["ProtocolOspfAreaInterfaceLinkTypeP2p"] } - if oProtocolOspfv3Area.Type.Stub.DefaultRoute.Advertise.Metric != nil { - nestedProtocolOspfv3Area.Type.Stub.DefaultRoute.Advertise.Metric = oProtocolOspfv3Area.Type.Stub.DefaultRoute.Advertise.Metric + } + if oProtocolOspfAreaInterface.LinkType.P2mp != nil { + nestedProtocolOspfAreaInterface.LinkType.P2mp = &ProtocolOspfAreaInterfaceLinkTypeP2mpXml{} + if _, ok := o.Misc["ProtocolOspfAreaInterfaceLinkTypeP2mp"]; ok { + nestedProtocolOspfAreaInterface.LinkType.P2mp.Misc = o.Misc["ProtocolOspfAreaInterfaceLinkTypeP2mp"] } } } + if oProtocolOspfAreaInterface.Enable != nil { + nestedProtocolOspfAreaInterface.Enable = util.YesNo(oProtocolOspfAreaInterface.Enable, nil) + } + if oProtocolOspfAreaInterface.Passive != nil { + nestedProtocolOspfAreaInterface.Passive = util.YesNo(oProtocolOspfAreaInterface.Passive, nil) + } + if oProtocolOspfAreaInterface.HelloInterval != nil { + nestedProtocolOspfAreaInterface.HelloInterval = oProtocolOspfAreaInterface.HelloInterval + } + if oProtocolOspfAreaInterface.DeadCounts != nil { + nestedProtocolOspfAreaInterface.DeadCounts = oProtocolOspfAreaInterface.DeadCounts + } + if oProtocolOspfAreaInterface.TransitDelay != nil { + nestedProtocolOspfAreaInterface.TransitDelay = oProtocolOspfAreaInterface.TransitDelay + } + if oProtocolOspfAreaInterface.GrDelay != nil { + nestedProtocolOspfAreaInterface.GrDelay = oProtocolOspfAreaInterface.GrDelay + } + if oProtocolOspfAreaInterface.Bfd != nil { + nestedProtocolOspfAreaInterface.Bfd = &ProtocolOspfAreaInterfaceBfdXml{} + if _, ok := o.Misc["ProtocolOspfAreaInterfaceBfd"]; ok { + nestedProtocolOspfAreaInterface.Bfd.Misc = o.Misc["ProtocolOspfAreaInterfaceBfd"] + } + if oProtocolOspfAreaInterface.Bfd.Profile != nil { + nestedProtocolOspfAreaInterface.Bfd.Profile = oProtocolOspfAreaInterface.Bfd.Profile + } + } + if oProtocolOspfAreaInterface.Name != "" { + nestedProtocolOspfAreaInterface.Name = oProtocolOspfAreaInterface.Name + } + if oProtocolOspfAreaInterface.Priority != nil { + nestedProtocolOspfAreaInterface.Priority = oProtocolOspfAreaInterface.Priority + } + if oProtocolOspfAreaInterface.RetransmitInterval != nil { + nestedProtocolOspfAreaInterface.RetransmitInterval = oProtocolOspfAreaInterface.RetransmitInterval + } + if oProtocolOspfAreaInterface.Authentication != nil { + nestedProtocolOspfAreaInterface.Authentication = oProtocolOspfAreaInterface.Authentication + } + nestedProtocolOspfArea.Interface = append(nestedProtocolOspfArea.Interface, nestedProtocolOspfAreaInterface) + } + } + nestedProtocol.Ospf.Area = append(nestedProtocol.Ospf.Area, nestedProtocolOspfArea) + } + } + if o.Protocol.Ospf.AuthProfile != nil { + nestedProtocol.Ospf.AuthProfile = []ProtocolOspfAuthProfileXml{} + for _, oProtocolOspfAuthProfile := range o.Protocol.Ospf.AuthProfile { + nestedProtocolOspfAuthProfile := ProtocolOspfAuthProfileXml{} + if _, ok := o.Misc["ProtocolOspfAuthProfile"]; ok { + nestedProtocolOspfAuthProfile.Misc = o.Misc["ProtocolOspfAuthProfile"] + } + if oProtocolOspfAuthProfile.Name != "" { + nestedProtocolOspfAuthProfile.Name = oProtocolOspfAuthProfile.Name + } + if oProtocolOspfAuthProfile.Password != nil { + nestedProtocolOspfAuthProfile.Password = oProtocolOspfAuthProfile.Password + } + if oProtocolOspfAuthProfile.Md5 != nil { + nestedProtocolOspfAuthProfile.Md5 = []ProtocolOspfAuthProfileMd5Xml{} + for _, oProtocolOspfAuthProfileMd5 := range oProtocolOspfAuthProfile.Md5 { + nestedProtocolOspfAuthProfileMd5 := ProtocolOspfAuthProfileMd5Xml{} + if _, ok := o.Misc["ProtocolOspfAuthProfileMd5"]; ok { + nestedProtocolOspfAuthProfileMd5.Misc = o.Misc["ProtocolOspfAuthProfileMd5"] + } + if oProtocolOspfAuthProfileMd5.Preferred != nil { + nestedProtocolOspfAuthProfileMd5.Preferred = util.YesNo(oProtocolOspfAuthProfileMd5.Preferred, nil) + } + if oProtocolOspfAuthProfileMd5.Name != "" { + nestedProtocolOspfAuthProfileMd5.Name = oProtocolOspfAuthProfileMd5.Name + } + if oProtocolOspfAuthProfileMd5.Key != nil { + nestedProtocolOspfAuthProfileMd5.Key = oProtocolOspfAuthProfileMd5.Key + } + nestedProtocolOspfAuthProfile.Md5 = append(nestedProtocolOspfAuthProfile.Md5, nestedProtocolOspfAuthProfileMd5) } } + nestedProtocol.Ospf.AuthProfile = append(nestedProtocol.Ospf.AuthProfile, nestedProtocolOspfAuthProfile) + } + } + if o.Protocol.Ospf.ExportRules != nil { + nestedProtocol.Ospf.ExportRules = []ProtocolOspfExportRulesXml{} + for _, oProtocolOspfExportRules := range o.Protocol.Ospf.ExportRules { + nestedProtocolOspfExportRules := ProtocolOspfExportRulesXml{} + if _, ok := o.Misc["ProtocolOspfExportRules"]; ok { + nestedProtocolOspfExportRules.Misc = o.Misc["ProtocolOspfExportRules"] + } + if oProtocolOspfExportRules.NewTag != nil { + nestedProtocolOspfExportRules.NewTag = oProtocolOspfExportRules.NewTag + } + if oProtocolOspfExportRules.Metric != nil { + nestedProtocolOspfExportRules.Metric = oProtocolOspfExportRules.Metric + } + if oProtocolOspfExportRules.Name != "" { + nestedProtocolOspfExportRules.Name = oProtocolOspfExportRules.Name + } + if oProtocolOspfExportRules.NewPathType != nil { + nestedProtocolOspfExportRules.NewPathType = oProtocolOspfExportRules.NewPathType + } + nestedProtocol.Ospf.ExportRules = append(nestedProtocol.Ospf.ExportRules, nestedProtocolOspfExportRules) + } + } + if o.Protocol.Ospf.GlobalBfd != nil { + nestedProtocol.Ospf.GlobalBfd = &ProtocolOspfGlobalBfdXml{} + if _, ok := o.Misc["ProtocolOspfGlobalBfd"]; ok { + nestedProtocol.Ospf.GlobalBfd.Misc = o.Misc["ProtocolOspfGlobalBfd"] + } + if o.Protocol.Ospf.GlobalBfd.Profile != nil { + nestedProtocol.Ospf.GlobalBfd.Profile = o.Protocol.Ospf.GlobalBfd.Profile + } + } + if o.Protocol.Ospf.RouterId != nil { + nestedProtocol.Ospf.RouterId = o.Protocol.Ospf.RouterId + } + } + if o.Protocol.Ospfv3 != nil { + nestedProtocol.Ospfv3 = &ProtocolOspfv3Xml{} + if _, ok := o.Misc["ProtocolOspfv3"]; ok { + nestedProtocol.Ospfv3.Misc = o.Misc["ProtocolOspfv3"] + } + if o.Protocol.Ospfv3.Area != nil { + nestedProtocol.Ospfv3.Area = []ProtocolOspfv3AreaXml{} + for _, oProtocolOspfv3Area := range o.Protocol.Ospfv3.Area { + nestedProtocolOspfv3Area := ProtocolOspfv3AreaXml{} + if _, ok := o.Misc["ProtocolOspfv3Area"]; ok { + nestedProtocolOspfv3Area.Misc = o.Misc["ProtocolOspfv3Area"] + } if oProtocolOspfv3Area.Range != nil { nestedProtocolOspfv3Area.Range = []ProtocolOspfv3AreaRangeXml{} for _, oProtocolOspfv3AreaRange := range oProtocolOspfv3Area.Range { @@ -5422,12 +5322,6 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["ProtocolOspfv3AreaInterface"]; ok { nestedProtocolOspfv3AreaInterface.Misc = o.Misc["ProtocolOspfv3AreaInterface"] } - if oProtocolOspfv3AreaInterface.DeadCounts != nil { - nestedProtocolOspfv3AreaInterface.DeadCounts = oProtocolOspfv3AreaInterface.DeadCounts - } - if oProtocolOspfv3AreaInterface.GrDelay != nil { - nestedProtocolOspfv3AreaInterface.GrDelay = oProtocolOspfv3AreaInterface.GrDelay - } if oProtocolOspfv3AreaInterface.LinkType != nil { nestedProtocolOspfv3AreaInterface.LinkType = &ProtocolOspfv3AreaInterfaceLinkTypeXml{} if _, ok := o.Misc["ProtocolOspfv3AreaInterfaceLinkType"]; ok { @@ -5452,30 +5346,45 @@ func specifyEntry(o *Entry) (any, error) { } } } - if oProtocolOspfv3AreaInterface.Neighbor != nil { - nestedProtocolOspfv3AreaInterface.Neighbor = []ProtocolOspfv3AreaInterfaceNeighborXml{} - for _, oProtocolOspfv3AreaInterfaceNeighbor := range oProtocolOspfv3AreaInterface.Neighbor { - nestedProtocolOspfv3AreaInterfaceNeighbor := ProtocolOspfv3AreaInterfaceNeighborXml{} - if _, ok := o.Misc["ProtocolOspfv3AreaInterfaceNeighbor"]; ok { - nestedProtocolOspfv3AreaInterfaceNeighbor.Misc = o.Misc["ProtocolOspfv3AreaInterfaceNeighbor"] - } - if oProtocolOspfv3AreaInterfaceNeighbor.Name != "" { - nestedProtocolOspfv3AreaInterfaceNeighbor.Name = oProtocolOspfv3AreaInterfaceNeighbor.Name - } - nestedProtocolOspfv3AreaInterface.Neighbor = append(nestedProtocolOspfv3AreaInterface.Neighbor, nestedProtocolOspfv3AreaInterfaceNeighbor) - } + if oProtocolOspfv3AreaInterface.Enable != nil { + nestedProtocolOspfv3AreaInterface.Enable = util.YesNo(oProtocolOspfv3AreaInterface.Enable, nil) } if oProtocolOspfv3AreaInterface.Passive != nil { nestedProtocolOspfv3AreaInterface.Passive = util.YesNo(oProtocolOspfv3AreaInterface.Passive, nil) } - if oProtocolOspfv3AreaInterface.Priority != nil { - nestedProtocolOspfv3AreaInterface.Priority = oProtocolOspfv3AreaInterface.Priority + if oProtocolOspfv3AreaInterface.GrDelay != nil { + nestedProtocolOspfv3AreaInterface.GrDelay = oProtocolOspfv3AreaInterface.GrDelay + } + if oProtocolOspfv3AreaInterface.TransitDelay != nil { + nestedProtocolOspfv3AreaInterface.TransitDelay = oProtocolOspfv3AreaInterface.TransitDelay + } + if oProtocolOspfv3AreaInterface.Name != "" { + nestedProtocolOspfv3AreaInterface.Name = oProtocolOspfv3AreaInterface.Name + } + if oProtocolOspfv3AreaInterface.InstanceId != nil { + nestedProtocolOspfv3AreaInterface.InstanceId = oProtocolOspfv3AreaInterface.InstanceId + } + if oProtocolOspfv3AreaInterface.Metric != nil { + nestedProtocolOspfv3AreaInterface.Metric = oProtocolOspfv3AreaInterface.Metric } if oProtocolOspfv3AreaInterface.HelloInterval != nil { nestedProtocolOspfv3AreaInterface.HelloInterval = oProtocolOspfv3AreaInterface.HelloInterval } - if oProtocolOspfv3AreaInterface.Authentication != nil { - nestedProtocolOspfv3AreaInterface.Authentication = oProtocolOspfv3AreaInterface.Authentication + if oProtocolOspfv3AreaInterface.Priority != nil { + nestedProtocolOspfv3AreaInterface.Priority = oProtocolOspfv3AreaInterface.Priority + } + if oProtocolOspfv3AreaInterface.Neighbor != nil { + nestedProtocolOspfv3AreaInterface.Neighbor = []ProtocolOspfv3AreaInterfaceNeighborXml{} + for _, oProtocolOspfv3AreaInterfaceNeighbor := range oProtocolOspfv3AreaInterface.Neighbor { + nestedProtocolOspfv3AreaInterfaceNeighbor := ProtocolOspfv3AreaInterfaceNeighborXml{} + if _, ok := o.Misc["ProtocolOspfv3AreaInterfaceNeighbor"]; ok { + nestedProtocolOspfv3AreaInterfaceNeighbor.Misc = o.Misc["ProtocolOspfv3AreaInterfaceNeighbor"] + } + if oProtocolOspfv3AreaInterfaceNeighbor.Name != "" { + nestedProtocolOspfv3AreaInterfaceNeighbor.Name = oProtocolOspfv3AreaInterfaceNeighbor.Name + } + nestedProtocolOspfv3AreaInterface.Neighbor = append(nestedProtocolOspfv3AreaInterface.Neighbor, nestedProtocolOspfv3AreaInterfaceNeighbor) + } } if oProtocolOspfv3AreaInterface.Bfd != nil { nestedProtocolOspfv3AreaInterface.Bfd = &ProtocolOspfv3AreaInterfaceBfdXml{} @@ -5486,24 +5395,15 @@ func specifyEntry(o *Entry) (any, error) { nestedProtocolOspfv3AreaInterface.Bfd.Profile = oProtocolOspfv3AreaInterface.Bfd.Profile } } - if oProtocolOspfv3AreaInterface.InstanceId != nil { - nestedProtocolOspfv3AreaInterface.InstanceId = oProtocolOspfv3AreaInterface.InstanceId - } - if oProtocolOspfv3AreaInterface.Metric != nil { - nestedProtocolOspfv3AreaInterface.Metric = oProtocolOspfv3AreaInterface.Metric - } - if oProtocolOspfv3AreaInterface.TransitDelay != nil { - nestedProtocolOspfv3AreaInterface.TransitDelay = oProtocolOspfv3AreaInterface.TransitDelay - } - if oProtocolOspfv3AreaInterface.Name != "" { - nestedProtocolOspfv3AreaInterface.Name = oProtocolOspfv3AreaInterface.Name - } - if oProtocolOspfv3AreaInterface.Enable != nil { - nestedProtocolOspfv3AreaInterface.Enable = util.YesNo(oProtocolOspfv3AreaInterface.Enable, nil) + if oProtocolOspfv3AreaInterface.DeadCounts != nil { + nestedProtocolOspfv3AreaInterface.DeadCounts = oProtocolOspfv3AreaInterface.DeadCounts } if oProtocolOspfv3AreaInterface.RetransmitInterval != nil { nestedProtocolOspfv3AreaInterface.RetransmitInterval = oProtocolOspfv3AreaInterface.RetransmitInterval } + if oProtocolOspfv3AreaInterface.Authentication != nil { + nestedProtocolOspfv3AreaInterface.Authentication = oProtocolOspfv3AreaInterface.Authentication + } nestedProtocolOspfv3Area.Interface = append(nestedProtocolOspfv3Area.Interface, nestedProtocolOspfv3AreaInterface) } } @@ -5514,23 +5414,20 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["ProtocolOspfv3AreaVirtualLink"]; ok { nestedProtocolOspfv3AreaVirtualLink.Misc = o.Misc["ProtocolOspfv3AreaVirtualLink"] } + if oProtocolOspfv3AreaVirtualLink.DeadCounts != nil { + nestedProtocolOspfv3AreaVirtualLink.DeadCounts = oProtocolOspfv3AreaVirtualLink.DeadCounts + } + if oProtocolOspfv3AreaVirtualLink.RetransmitInterval != nil { + nestedProtocolOspfv3AreaVirtualLink.RetransmitInterval = oProtocolOspfv3AreaVirtualLink.RetransmitInterval + } if oProtocolOspfv3AreaVirtualLink.Authentication != nil { nestedProtocolOspfv3AreaVirtualLink.Authentication = oProtocolOspfv3AreaVirtualLink.Authentication } - if oProtocolOspfv3AreaVirtualLink.Bfd != nil { - nestedProtocolOspfv3AreaVirtualLink.Bfd = &ProtocolOspfv3AreaVirtualLinkBfdXml{} - if _, ok := o.Misc["ProtocolOspfv3AreaVirtualLinkBfd"]; ok { - nestedProtocolOspfv3AreaVirtualLink.Bfd.Misc = o.Misc["ProtocolOspfv3AreaVirtualLinkBfd"] - } - if oProtocolOspfv3AreaVirtualLink.Bfd.Profile != nil { - nestedProtocolOspfv3AreaVirtualLink.Bfd.Profile = oProtocolOspfv3AreaVirtualLink.Bfd.Profile - } - } if oProtocolOspfv3AreaVirtualLink.Name != "" { nestedProtocolOspfv3AreaVirtualLink.Name = oProtocolOspfv3AreaVirtualLink.Name } - if oProtocolOspfv3AreaVirtualLink.NeighborId != nil { - nestedProtocolOspfv3AreaVirtualLink.NeighborId = oProtocolOspfv3AreaVirtualLink.NeighborId + if oProtocolOspfv3AreaVirtualLink.TransitAreaId != nil { + nestedProtocolOspfv3AreaVirtualLink.TransitAreaId = oProtocolOspfv3AreaVirtualLink.TransitAreaId } if oProtocolOspfv3AreaVirtualLink.InstanceId != nil { nestedProtocolOspfv3AreaVirtualLink.InstanceId = oProtocolOspfv3AreaVirtualLink.InstanceId @@ -5538,74 +5435,392 @@ func specifyEntry(o *Entry) (any, error) { if oProtocolOspfv3AreaVirtualLink.HelloInterval != nil { nestedProtocolOspfv3AreaVirtualLink.HelloInterval = oProtocolOspfv3AreaVirtualLink.HelloInterval } - if oProtocolOspfv3AreaVirtualLink.DeadCounts != nil { - nestedProtocolOspfv3AreaVirtualLink.DeadCounts = oProtocolOspfv3AreaVirtualLink.DeadCounts + if oProtocolOspfv3AreaVirtualLink.TransitDelay != nil { + nestedProtocolOspfv3AreaVirtualLink.TransitDelay = oProtocolOspfv3AreaVirtualLink.TransitDelay } - if oProtocolOspfv3AreaVirtualLink.RetransmitInterval != nil { - nestedProtocolOspfv3AreaVirtualLink.RetransmitInterval = oProtocolOspfv3AreaVirtualLink.RetransmitInterval + if oProtocolOspfv3AreaVirtualLink.Bfd != nil { + nestedProtocolOspfv3AreaVirtualLink.Bfd = &ProtocolOspfv3AreaVirtualLinkBfdXml{} + if _, ok := o.Misc["ProtocolOspfv3AreaVirtualLinkBfd"]; ok { + nestedProtocolOspfv3AreaVirtualLink.Bfd.Misc = o.Misc["ProtocolOspfv3AreaVirtualLinkBfd"] + } + if oProtocolOspfv3AreaVirtualLink.Bfd.Profile != nil { + nestedProtocolOspfv3AreaVirtualLink.Bfd.Profile = oProtocolOspfv3AreaVirtualLink.Bfd.Profile + } } - if oProtocolOspfv3AreaVirtualLink.TransitAreaId != nil { - nestedProtocolOspfv3AreaVirtualLink.TransitAreaId = oProtocolOspfv3AreaVirtualLink.TransitAreaId + if oProtocolOspfv3AreaVirtualLink.NeighborId != nil { + nestedProtocolOspfv3AreaVirtualLink.NeighborId = oProtocolOspfv3AreaVirtualLink.NeighborId } if oProtocolOspfv3AreaVirtualLink.Enable != nil { nestedProtocolOspfv3AreaVirtualLink.Enable = util.YesNo(oProtocolOspfv3AreaVirtualLink.Enable, nil) } - if oProtocolOspfv3AreaVirtualLink.TransitDelay != nil { - nestedProtocolOspfv3AreaVirtualLink.TransitDelay = oProtocolOspfv3AreaVirtualLink.TransitDelay - } nestedProtocolOspfv3Area.VirtualLink = append(nestedProtocolOspfv3Area.VirtualLink, nestedProtocolOspfv3AreaVirtualLink) } } if oProtocolOspfv3Area.Name != "" { nestedProtocolOspfv3Area.Name = oProtocolOspfv3Area.Name } + if oProtocolOspfv3Area.Authentication != nil { + nestedProtocolOspfv3Area.Authentication = oProtocolOspfv3Area.Authentication + } + if oProtocolOspfv3Area.Type != nil { + nestedProtocolOspfv3Area.Type = &ProtocolOspfv3AreaTypeXml{} + if _, ok := o.Misc["ProtocolOspfv3AreaType"]; ok { + nestedProtocolOspfv3Area.Type.Misc = o.Misc["ProtocolOspfv3AreaType"] + } + if oProtocolOspfv3Area.Type.Normal != nil { + nestedProtocolOspfv3Area.Type.Normal = &ProtocolOspfv3AreaTypeNormalXml{} + if _, ok := o.Misc["ProtocolOspfv3AreaTypeNormal"]; ok { + nestedProtocolOspfv3Area.Type.Normal.Misc = o.Misc["ProtocolOspfv3AreaTypeNormal"] + } + } + if oProtocolOspfv3Area.Type.Stub != nil { + nestedProtocolOspfv3Area.Type.Stub = &ProtocolOspfv3AreaTypeStubXml{} + if _, ok := o.Misc["ProtocolOspfv3AreaTypeStub"]; ok { + nestedProtocolOspfv3Area.Type.Stub.Misc = o.Misc["ProtocolOspfv3AreaTypeStub"] + } + if oProtocolOspfv3Area.Type.Stub.DefaultRoute != nil { + nestedProtocolOspfv3Area.Type.Stub.DefaultRoute = &ProtocolOspfv3AreaTypeStubDefaultRouteXml{} + if _, ok := o.Misc["ProtocolOspfv3AreaTypeStubDefaultRoute"]; ok { + nestedProtocolOspfv3Area.Type.Stub.DefaultRoute.Misc = o.Misc["ProtocolOspfv3AreaTypeStubDefaultRoute"] + } + if oProtocolOspfv3Area.Type.Stub.DefaultRoute.Advertise != nil { + nestedProtocolOspfv3Area.Type.Stub.DefaultRoute.Advertise = &ProtocolOspfv3AreaTypeStubDefaultRouteAdvertiseXml{} + if _, ok := o.Misc["ProtocolOspfv3AreaTypeStubDefaultRouteAdvertise"]; ok { + nestedProtocolOspfv3Area.Type.Stub.DefaultRoute.Advertise.Misc = o.Misc["ProtocolOspfv3AreaTypeStubDefaultRouteAdvertise"] + } + if oProtocolOspfv3Area.Type.Stub.DefaultRoute.Advertise.Metric != nil { + nestedProtocolOspfv3Area.Type.Stub.DefaultRoute.Advertise.Metric = oProtocolOspfv3Area.Type.Stub.DefaultRoute.Advertise.Metric + } + } + if oProtocolOspfv3Area.Type.Stub.DefaultRoute.Disable != nil { + nestedProtocolOspfv3Area.Type.Stub.DefaultRoute.Disable = &ProtocolOspfv3AreaTypeStubDefaultRouteDisableXml{} + if _, ok := o.Misc["ProtocolOspfv3AreaTypeStubDefaultRouteDisable"]; ok { + nestedProtocolOspfv3Area.Type.Stub.DefaultRoute.Disable.Misc = o.Misc["ProtocolOspfv3AreaTypeStubDefaultRouteDisable"] + } + } + } + if oProtocolOspfv3Area.Type.Stub.AcceptSummary != nil { + nestedProtocolOspfv3Area.Type.Stub.AcceptSummary = util.YesNo(oProtocolOspfv3Area.Type.Stub.AcceptSummary, nil) + } + } + if oProtocolOspfv3Area.Type.Nssa != nil { + nestedProtocolOspfv3Area.Type.Nssa = &ProtocolOspfv3AreaTypeNssaXml{} + if _, ok := o.Misc["ProtocolOspfv3AreaTypeNssa"]; ok { + nestedProtocolOspfv3Area.Type.Nssa.Misc = o.Misc["ProtocolOspfv3AreaTypeNssa"] + } + if oProtocolOspfv3Area.Type.Nssa.AcceptSummary != nil { + nestedProtocolOspfv3Area.Type.Nssa.AcceptSummary = util.YesNo(oProtocolOspfv3Area.Type.Nssa.AcceptSummary, nil) + } + if oProtocolOspfv3Area.Type.Nssa.DefaultRoute != nil { + nestedProtocolOspfv3Area.Type.Nssa.DefaultRoute = &ProtocolOspfv3AreaTypeNssaDefaultRouteXml{} + if _, ok := o.Misc["ProtocolOspfv3AreaTypeNssaDefaultRoute"]; ok { + nestedProtocolOspfv3Area.Type.Nssa.DefaultRoute.Misc = o.Misc["ProtocolOspfv3AreaTypeNssaDefaultRoute"] + } + if oProtocolOspfv3Area.Type.Nssa.DefaultRoute.Disable != nil { + nestedProtocolOspfv3Area.Type.Nssa.DefaultRoute.Disable = &ProtocolOspfv3AreaTypeNssaDefaultRouteDisableXml{} + if _, ok := o.Misc["ProtocolOspfv3AreaTypeNssaDefaultRouteDisable"]; ok { + nestedProtocolOspfv3Area.Type.Nssa.DefaultRoute.Disable.Misc = o.Misc["ProtocolOspfv3AreaTypeNssaDefaultRouteDisable"] + } + } + if oProtocolOspfv3Area.Type.Nssa.DefaultRoute.Advertise != nil { + nestedProtocolOspfv3Area.Type.Nssa.DefaultRoute.Advertise = &ProtocolOspfv3AreaTypeNssaDefaultRouteAdvertiseXml{} + if _, ok := o.Misc["ProtocolOspfv3AreaTypeNssaDefaultRouteAdvertise"]; ok { + nestedProtocolOspfv3Area.Type.Nssa.DefaultRoute.Advertise.Misc = o.Misc["ProtocolOspfv3AreaTypeNssaDefaultRouteAdvertise"] + } + if oProtocolOspfv3Area.Type.Nssa.DefaultRoute.Advertise.Type != nil { + nestedProtocolOspfv3Area.Type.Nssa.DefaultRoute.Advertise.Type = oProtocolOspfv3Area.Type.Nssa.DefaultRoute.Advertise.Type + } + if oProtocolOspfv3Area.Type.Nssa.DefaultRoute.Advertise.Metric != nil { + nestedProtocolOspfv3Area.Type.Nssa.DefaultRoute.Advertise.Metric = oProtocolOspfv3Area.Type.Nssa.DefaultRoute.Advertise.Metric + } + } + } + if oProtocolOspfv3Area.Type.Nssa.NssaExtRange != nil { + nestedProtocolOspfv3Area.Type.Nssa.NssaExtRange = []ProtocolOspfv3AreaTypeNssaNssaExtRangeXml{} + for _, oProtocolOspfv3AreaTypeNssaNssaExtRange := range oProtocolOspfv3Area.Type.Nssa.NssaExtRange { + nestedProtocolOspfv3AreaTypeNssaNssaExtRange := ProtocolOspfv3AreaTypeNssaNssaExtRangeXml{} + if _, ok := o.Misc["ProtocolOspfv3AreaTypeNssaNssaExtRange"]; ok { + nestedProtocolOspfv3AreaTypeNssaNssaExtRange.Misc = o.Misc["ProtocolOspfv3AreaTypeNssaNssaExtRange"] + } + if oProtocolOspfv3AreaTypeNssaNssaExtRange.Name != "" { + nestedProtocolOspfv3AreaTypeNssaNssaExtRange.Name = oProtocolOspfv3AreaTypeNssaNssaExtRange.Name + } + if oProtocolOspfv3AreaTypeNssaNssaExtRange.Advertise != nil { + nestedProtocolOspfv3AreaTypeNssaNssaExtRange.Advertise = &ProtocolOspfv3AreaTypeNssaNssaExtRangeAdvertiseXml{} + if _, ok := o.Misc["ProtocolOspfv3AreaTypeNssaNssaExtRangeAdvertise"]; ok { + nestedProtocolOspfv3AreaTypeNssaNssaExtRange.Advertise.Misc = o.Misc["ProtocolOspfv3AreaTypeNssaNssaExtRangeAdvertise"] + } + } + if oProtocolOspfv3AreaTypeNssaNssaExtRange.Suppress != nil { + nestedProtocolOspfv3AreaTypeNssaNssaExtRange.Suppress = &ProtocolOspfv3AreaTypeNssaNssaExtRangeSuppressXml{} + if _, ok := o.Misc["ProtocolOspfv3AreaTypeNssaNssaExtRangeSuppress"]; ok { + nestedProtocolOspfv3AreaTypeNssaNssaExtRange.Suppress.Misc = o.Misc["ProtocolOspfv3AreaTypeNssaNssaExtRangeSuppress"] + } + } + nestedProtocolOspfv3Area.Type.Nssa.NssaExtRange = append(nestedProtocolOspfv3Area.Type.Nssa.NssaExtRange, nestedProtocolOspfv3AreaTypeNssaNssaExtRange) + } + } + } + } nestedProtocol.Ospfv3.Area = append(nestedProtocol.Ospfv3.Area, nestedProtocolOspfv3Area) } } - } - if o.Protocol.RedistProfile != nil { - nestedProtocol.RedistProfile = []ProtocolRedistProfileXml{} - for _, oProtocolRedistProfile := range o.Protocol.RedistProfile { - nestedProtocolRedistProfile := ProtocolRedistProfileXml{} - if _, ok := o.Misc["ProtocolRedistProfile"]; ok { - nestedProtocolRedistProfile.Misc = o.Misc["ProtocolRedistProfile"] - } - if oProtocolRedistProfile.Priority != nil { - nestedProtocolRedistProfile.Priority = oProtocolRedistProfile.Priority - } - if oProtocolRedistProfile.Filter != nil { - nestedProtocolRedistProfile.Filter = &ProtocolRedistProfileFilterXml{} - if _, ok := o.Misc["ProtocolRedistProfileFilter"]; ok { - nestedProtocolRedistProfile.Filter.Misc = o.Misc["ProtocolRedistProfileFilter"] + if o.Protocol.Ospfv3.DisableTransitTraffic != nil { + nestedProtocol.Ospfv3.DisableTransitTraffic = util.YesNo(o.Protocol.Ospfv3.DisableTransitTraffic, nil) + } + if o.Protocol.Ospfv3.Enable != nil { + nestedProtocol.Ospfv3.Enable = util.YesNo(o.Protocol.Ospfv3.Enable, nil) + } + if o.Protocol.Ospfv3.ExportRules != nil { + nestedProtocol.Ospfv3.ExportRules = []ProtocolOspfv3ExportRulesXml{} + for _, oProtocolOspfv3ExportRules := range o.Protocol.Ospfv3.ExportRules { + nestedProtocolOspfv3ExportRules := ProtocolOspfv3ExportRulesXml{} + if _, ok := o.Misc["ProtocolOspfv3ExportRules"]; ok { + nestedProtocolOspfv3ExportRules.Misc = o.Misc["ProtocolOspfv3ExportRules"] } - if oProtocolRedistProfile.Filter.Interface != nil { - nestedProtocolRedistProfile.Filter.Interface = util.StrToMem(oProtocolRedistProfile.Filter.Interface) + if oProtocolOspfv3ExportRules.NewPathType != nil { + nestedProtocolOspfv3ExportRules.NewPathType = oProtocolOspfv3ExportRules.NewPathType } - if oProtocolRedistProfile.Filter.Destination != nil { - nestedProtocolRedistProfile.Filter.Destination = util.StrToMem(oProtocolRedistProfile.Filter.Destination) + if oProtocolOspfv3ExportRules.NewTag != nil { + nestedProtocolOspfv3ExportRules.NewTag = oProtocolOspfv3ExportRules.NewTag } - if oProtocolRedistProfile.Filter.Nexthop != nil { - nestedProtocolRedistProfile.Filter.Nexthop = util.StrToMem(oProtocolRedistProfile.Filter.Nexthop) + if oProtocolOspfv3ExportRules.Metric != nil { + nestedProtocolOspfv3ExportRules.Metric = oProtocolOspfv3ExportRules.Metric } - if oProtocolRedistProfile.Filter.Ospf != nil { - nestedProtocolRedistProfile.Filter.Ospf = &ProtocolRedistProfileFilterOspfXml{} - if _, ok := o.Misc["ProtocolRedistProfileFilterOspf"]; ok { - nestedProtocolRedistProfile.Filter.Ospf.Misc = o.Misc["ProtocolRedistProfileFilterOspf"] - } - if oProtocolRedistProfile.Filter.Ospf.PathType != nil { - nestedProtocolRedistProfile.Filter.Ospf.PathType = util.StrToMem(oProtocolRedistProfile.Filter.Ospf.PathType) - } - if oProtocolRedistProfile.Filter.Ospf.Area != nil { - nestedProtocolRedistProfile.Filter.Ospf.Area = util.StrToMem(oProtocolRedistProfile.Filter.Ospf.Area) - } - if oProtocolRedistProfile.Filter.Ospf.Tag != nil { - nestedProtocolRedistProfile.Filter.Ospf.Tag = util.StrToMem(oProtocolRedistProfile.Filter.Ospf.Tag) - } + if oProtocolOspfv3ExportRules.Name != "" { + nestedProtocolOspfv3ExportRules.Name = oProtocolOspfv3ExportRules.Name } - if oProtocolRedistProfile.Filter.Bgp != nil { - nestedProtocolRedistProfile.Filter.Bgp = &ProtocolRedistProfileFilterBgpXml{} - if _, ok := o.Misc["ProtocolRedistProfileFilterBgp"]; ok { - nestedProtocolRedistProfile.Filter.Bgp.Misc = o.Misc["ProtocolRedistProfileFilterBgp"] + nestedProtocol.Ospfv3.ExportRules = append(nestedProtocol.Ospfv3.ExportRules, nestedProtocolOspfv3ExportRules) + } + } + if o.Protocol.Ospfv3.GlobalBfd != nil { + nestedProtocol.Ospfv3.GlobalBfd = &ProtocolOspfv3GlobalBfdXml{} + if _, ok := o.Misc["ProtocolOspfv3GlobalBfd"]; ok { + nestedProtocol.Ospfv3.GlobalBfd.Misc = o.Misc["ProtocolOspfv3GlobalBfd"] + } + if o.Protocol.Ospfv3.GlobalBfd.Profile != nil { + nestedProtocol.Ospfv3.GlobalBfd.Profile = o.Protocol.Ospfv3.GlobalBfd.Profile + } + } + if o.Protocol.Ospfv3.RejectDefaultRoute != nil { + nestedProtocol.Ospfv3.RejectDefaultRoute = util.YesNo(o.Protocol.Ospfv3.RejectDefaultRoute, nil) + } + if o.Protocol.Ospfv3.AllowRedistDefaultRoute != nil { + nestedProtocol.Ospfv3.AllowRedistDefaultRoute = util.YesNo(o.Protocol.Ospfv3.AllowRedistDefaultRoute, nil) + } + if o.Protocol.Ospfv3.AuthProfile != nil { + nestedProtocol.Ospfv3.AuthProfile = []ProtocolOspfv3AuthProfileXml{} + for _, oProtocolOspfv3AuthProfile := range o.Protocol.Ospfv3.AuthProfile { + nestedProtocolOspfv3AuthProfile := ProtocolOspfv3AuthProfileXml{} + if _, ok := o.Misc["ProtocolOspfv3AuthProfile"]; ok { + nestedProtocolOspfv3AuthProfile.Misc = o.Misc["ProtocolOspfv3AuthProfile"] + } + if oProtocolOspfv3AuthProfile.Spi != nil { + nestedProtocolOspfv3AuthProfile.Spi = oProtocolOspfv3AuthProfile.Spi + } + if oProtocolOspfv3AuthProfile.Name != "" { + nestedProtocolOspfv3AuthProfile.Name = oProtocolOspfv3AuthProfile.Name + } + if oProtocolOspfv3AuthProfile.Esp != nil { + nestedProtocolOspfv3AuthProfile.Esp = &ProtocolOspfv3AuthProfileEspXml{} + if _, ok := o.Misc["ProtocolOspfv3AuthProfileEsp"]; ok { + nestedProtocolOspfv3AuthProfile.Esp.Misc = o.Misc["ProtocolOspfv3AuthProfileEsp"] + } + if oProtocolOspfv3AuthProfile.Esp.Authentication != nil { + nestedProtocolOspfv3AuthProfile.Esp.Authentication = &ProtocolOspfv3AuthProfileEspAuthenticationXml{} + if _, ok := o.Misc["ProtocolOspfv3AuthProfileEspAuthentication"]; ok { + nestedProtocolOspfv3AuthProfile.Esp.Authentication.Misc = o.Misc["ProtocolOspfv3AuthProfileEspAuthentication"] + } + if oProtocolOspfv3AuthProfile.Esp.Authentication.Md5 != nil { + nestedProtocolOspfv3AuthProfile.Esp.Authentication.Md5 = &ProtocolOspfv3AuthProfileEspAuthenticationMd5Xml{} + if _, ok := o.Misc["ProtocolOspfv3AuthProfileEspAuthenticationMd5"]; ok { + nestedProtocolOspfv3AuthProfile.Esp.Authentication.Md5.Misc = o.Misc["ProtocolOspfv3AuthProfileEspAuthenticationMd5"] + } + if oProtocolOspfv3AuthProfile.Esp.Authentication.Md5.Key != nil { + nestedProtocolOspfv3AuthProfile.Esp.Authentication.Md5.Key = oProtocolOspfv3AuthProfile.Esp.Authentication.Md5.Key + } + } + if oProtocolOspfv3AuthProfile.Esp.Authentication.Sha1 != nil { + nestedProtocolOspfv3AuthProfile.Esp.Authentication.Sha1 = &ProtocolOspfv3AuthProfileEspAuthenticationSha1Xml{} + if _, ok := o.Misc["ProtocolOspfv3AuthProfileEspAuthenticationSha1"]; ok { + nestedProtocolOspfv3AuthProfile.Esp.Authentication.Sha1.Misc = o.Misc["ProtocolOspfv3AuthProfileEspAuthenticationSha1"] + } + if oProtocolOspfv3AuthProfile.Esp.Authentication.Sha1.Key != nil { + nestedProtocolOspfv3AuthProfile.Esp.Authentication.Sha1.Key = oProtocolOspfv3AuthProfile.Esp.Authentication.Sha1.Key + } + } + if oProtocolOspfv3AuthProfile.Esp.Authentication.Sha256 != nil { + nestedProtocolOspfv3AuthProfile.Esp.Authentication.Sha256 = &ProtocolOspfv3AuthProfileEspAuthenticationSha256Xml{} + if _, ok := o.Misc["ProtocolOspfv3AuthProfileEspAuthenticationSha256"]; ok { + nestedProtocolOspfv3AuthProfile.Esp.Authentication.Sha256.Misc = o.Misc["ProtocolOspfv3AuthProfileEspAuthenticationSha256"] + } + if oProtocolOspfv3AuthProfile.Esp.Authentication.Sha256.Key != nil { + nestedProtocolOspfv3AuthProfile.Esp.Authentication.Sha256.Key = oProtocolOspfv3AuthProfile.Esp.Authentication.Sha256.Key + } + } + if oProtocolOspfv3AuthProfile.Esp.Authentication.Sha384 != nil { + nestedProtocolOspfv3AuthProfile.Esp.Authentication.Sha384 = &ProtocolOspfv3AuthProfileEspAuthenticationSha384Xml{} + if _, ok := o.Misc["ProtocolOspfv3AuthProfileEspAuthenticationSha384"]; ok { + nestedProtocolOspfv3AuthProfile.Esp.Authentication.Sha384.Misc = o.Misc["ProtocolOspfv3AuthProfileEspAuthenticationSha384"] + } + if oProtocolOspfv3AuthProfile.Esp.Authentication.Sha384.Key != nil { + nestedProtocolOspfv3AuthProfile.Esp.Authentication.Sha384.Key = oProtocolOspfv3AuthProfile.Esp.Authentication.Sha384.Key + } + } + if oProtocolOspfv3AuthProfile.Esp.Authentication.Sha512 != nil { + nestedProtocolOspfv3AuthProfile.Esp.Authentication.Sha512 = &ProtocolOspfv3AuthProfileEspAuthenticationSha512Xml{} + if _, ok := o.Misc["ProtocolOspfv3AuthProfileEspAuthenticationSha512"]; ok { + nestedProtocolOspfv3AuthProfile.Esp.Authentication.Sha512.Misc = o.Misc["ProtocolOspfv3AuthProfileEspAuthenticationSha512"] + } + if oProtocolOspfv3AuthProfile.Esp.Authentication.Sha512.Key != nil { + nestedProtocolOspfv3AuthProfile.Esp.Authentication.Sha512.Key = oProtocolOspfv3AuthProfile.Esp.Authentication.Sha512.Key + } + } + if oProtocolOspfv3AuthProfile.Esp.Authentication.None != nil { + nestedProtocolOspfv3AuthProfile.Esp.Authentication.None = &ProtocolOspfv3AuthProfileEspAuthenticationNoneXml{} + if _, ok := o.Misc["ProtocolOspfv3AuthProfileEspAuthenticationNone"]; ok { + nestedProtocolOspfv3AuthProfile.Esp.Authentication.None.Misc = o.Misc["ProtocolOspfv3AuthProfileEspAuthenticationNone"] + } + } + } + if oProtocolOspfv3AuthProfile.Esp.Encryption != nil { + nestedProtocolOspfv3AuthProfile.Esp.Encryption = &ProtocolOspfv3AuthProfileEspEncryptionXml{} + if _, ok := o.Misc["ProtocolOspfv3AuthProfileEspEncryption"]; ok { + nestedProtocolOspfv3AuthProfile.Esp.Encryption.Misc = o.Misc["ProtocolOspfv3AuthProfileEspEncryption"] + } + if oProtocolOspfv3AuthProfile.Esp.Encryption.Algorithm != nil { + nestedProtocolOspfv3AuthProfile.Esp.Encryption.Algorithm = oProtocolOspfv3AuthProfile.Esp.Encryption.Algorithm + } + if oProtocolOspfv3AuthProfile.Esp.Encryption.Key != nil { + nestedProtocolOspfv3AuthProfile.Esp.Encryption.Key = oProtocolOspfv3AuthProfile.Esp.Encryption.Key + } + } + } + if oProtocolOspfv3AuthProfile.Ah != nil { + nestedProtocolOspfv3AuthProfile.Ah = &ProtocolOspfv3AuthProfileAhXml{} + if _, ok := o.Misc["ProtocolOspfv3AuthProfileAh"]; ok { + nestedProtocolOspfv3AuthProfile.Ah.Misc = o.Misc["ProtocolOspfv3AuthProfileAh"] + } + if oProtocolOspfv3AuthProfile.Ah.Sha1 != nil { + nestedProtocolOspfv3AuthProfile.Ah.Sha1 = &ProtocolOspfv3AuthProfileAhSha1Xml{} + if _, ok := o.Misc["ProtocolOspfv3AuthProfileAhSha1"]; ok { + nestedProtocolOspfv3AuthProfile.Ah.Sha1.Misc = o.Misc["ProtocolOspfv3AuthProfileAhSha1"] + } + if oProtocolOspfv3AuthProfile.Ah.Sha1.Key != nil { + nestedProtocolOspfv3AuthProfile.Ah.Sha1.Key = oProtocolOspfv3AuthProfile.Ah.Sha1.Key + } + } + if oProtocolOspfv3AuthProfile.Ah.Sha256 != nil { + nestedProtocolOspfv3AuthProfile.Ah.Sha256 = &ProtocolOspfv3AuthProfileAhSha256Xml{} + if _, ok := o.Misc["ProtocolOspfv3AuthProfileAhSha256"]; ok { + nestedProtocolOspfv3AuthProfile.Ah.Sha256.Misc = o.Misc["ProtocolOspfv3AuthProfileAhSha256"] + } + if oProtocolOspfv3AuthProfile.Ah.Sha256.Key != nil { + nestedProtocolOspfv3AuthProfile.Ah.Sha256.Key = oProtocolOspfv3AuthProfile.Ah.Sha256.Key + } + } + if oProtocolOspfv3AuthProfile.Ah.Sha384 != nil { + nestedProtocolOspfv3AuthProfile.Ah.Sha384 = &ProtocolOspfv3AuthProfileAhSha384Xml{} + if _, ok := o.Misc["ProtocolOspfv3AuthProfileAhSha384"]; ok { + nestedProtocolOspfv3AuthProfile.Ah.Sha384.Misc = o.Misc["ProtocolOspfv3AuthProfileAhSha384"] + } + if oProtocolOspfv3AuthProfile.Ah.Sha384.Key != nil { + nestedProtocolOspfv3AuthProfile.Ah.Sha384.Key = oProtocolOspfv3AuthProfile.Ah.Sha384.Key + } + } + if oProtocolOspfv3AuthProfile.Ah.Sha512 != nil { + nestedProtocolOspfv3AuthProfile.Ah.Sha512 = &ProtocolOspfv3AuthProfileAhSha512Xml{} + if _, ok := o.Misc["ProtocolOspfv3AuthProfileAhSha512"]; ok { + nestedProtocolOspfv3AuthProfile.Ah.Sha512.Misc = o.Misc["ProtocolOspfv3AuthProfileAhSha512"] + } + if oProtocolOspfv3AuthProfile.Ah.Sha512.Key != nil { + nestedProtocolOspfv3AuthProfile.Ah.Sha512.Key = oProtocolOspfv3AuthProfile.Ah.Sha512.Key + } + } + if oProtocolOspfv3AuthProfile.Ah.Md5 != nil { + nestedProtocolOspfv3AuthProfile.Ah.Md5 = &ProtocolOspfv3AuthProfileAhMd5Xml{} + if _, ok := o.Misc["ProtocolOspfv3AuthProfileAhMd5"]; ok { + nestedProtocolOspfv3AuthProfile.Ah.Md5.Misc = o.Misc["ProtocolOspfv3AuthProfileAhMd5"] + } + if oProtocolOspfv3AuthProfile.Ah.Md5.Key != nil { + nestedProtocolOspfv3AuthProfile.Ah.Md5.Key = oProtocolOspfv3AuthProfile.Ah.Md5.Key + } + } + } + nestedProtocol.Ospfv3.AuthProfile = append(nestedProtocol.Ospfv3.AuthProfile, nestedProtocolOspfv3AuthProfile) + } + } + if o.Protocol.Ospfv3.GracefulRestart != nil { + nestedProtocol.Ospfv3.GracefulRestart = &ProtocolOspfv3GracefulRestartXml{} + if _, ok := o.Misc["ProtocolOspfv3GracefulRestart"]; ok { + nestedProtocol.Ospfv3.GracefulRestart.Misc = o.Misc["ProtocolOspfv3GracefulRestart"] + } + if o.Protocol.Ospfv3.GracefulRestart.Enable != nil { + nestedProtocol.Ospfv3.GracefulRestart.Enable = util.YesNo(o.Protocol.Ospfv3.GracefulRestart.Enable, nil) + } + if o.Protocol.Ospfv3.GracefulRestart.GracePeriod != nil { + nestedProtocol.Ospfv3.GracefulRestart.GracePeriod = o.Protocol.Ospfv3.GracefulRestart.GracePeriod + } + if o.Protocol.Ospfv3.GracefulRestart.HelperEnable != nil { + nestedProtocol.Ospfv3.GracefulRestart.HelperEnable = util.YesNo(o.Protocol.Ospfv3.GracefulRestart.HelperEnable, nil) + } + if o.Protocol.Ospfv3.GracefulRestart.MaxNeighborRestartTime != nil { + nestedProtocol.Ospfv3.GracefulRestart.MaxNeighborRestartTime = o.Protocol.Ospfv3.GracefulRestart.MaxNeighborRestartTime + } + if o.Protocol.Ospfv3.GracefulRestart.StrictLSAChecking != nil { + nestedProtocol.Ospfv3.GracefulRestart.StrictLSAChecking = util.YesNo(o.Protocol.Ospfv3.GracefulRestart.StrictLSAChecking, nil) + } + } + if o.Protocol.Ospfv3.RouterId != nil { + nestedProtocol.Ospfv3.RouterId = o.Protocol.Ospfv3.RouterId + } + if o.Protocol.Ospfv3.Timers != nil { + nestedProtocol.Ospfv3.Timers = &ProtocolOspfv3TimersXml{} + if _, ok := o.Misc["ProtocolOspfv3Timers"]; ok { + nestedProtocol.Ospfv3.Timers.Misc = o.Misc["ProtocolOspfv3Timers"] + } + if o.Protocol.Ospfv3.Timers.LsaInterval != nil { + nestedProtocol.Ospfv3.Timers.LsaInterval = o.Protocol.Ospfv3.Timers.LsaInterval + } + if o.Protocol.Ospfv3.Timers.SpfCalculationDelay != nil { + nestedProtocol.Ospfv3.Timers.SpfCalculationDelay = o.Protocol.Ospfv3.Timers.SpfCalculationDelay + } + } + } + if o.Protocol.RedistProfile != nil { + nestedProtocol.RedistProfile = []ProtocolRedistProfileXml{} + for _, oProtocolRedistProfile := range o.Protocol.RedistProfile { + nestedProtocolRedistProfile := ProtocolRedistProfileXml{} + if _, ok := o.Misc["ProtocolRedistProfile"]; ok { + nestedProtocolRedistProfile.Misc = o.Misc["ProtocolRedistProfile"] + } + if oProtocolRedistProfile.Priority != nil { + nestedProtocolRedistProfile.Priority = oProtocolRedistProfile.Priority + } + if oProtocolRedistProfile.Filter != nil { + nestedProtocolRedistProfile.Filter = &ProtocolRedistProfileFilterXml{} + if _, ok := o.Misc["ProtocolRedistProfileFilter"]; ok { + nestedProtocolRedistProfile.Filter.Misc = o.Misc["ProtocolRedistProfileFilter"] + } + if oProtocolRedistProfile.Filter.Ospf != nil { + nestedProtocolRedistProfile.Filter.Ospf = &ProtocolRedistProfileFilterOspfXml{} + if _, ok := o.Misc["ProtocolRedistProfileFilterOspf"]; ok { + nestedProtocolRedistProfile.Filter.Ospf.Misc = o.Misc["ProtocolRedistProfileFilterOspf"] + } + if oProtocolRedistProfile.Filter.Ospf.PathType != nil { + nestedProtocolRedistProfile.Filter.Ospf.PathType = util.StrToMem(oProtocolRedistProfile.Filter.Ospf.PathType) + } + if oProtocolRedistProfile.Filter.Ospf.Area != nil { + nestedProtocolRedistProfile.Filter.Ospf.Area = util.StrToMem(oProtocolRedistProfile.Filter.Ospf.Area) + } + if oProtocolRedistProfile.Filter.Ospf.Tag != nil { + nestedProtocolRedistProfile.Filter.Ospf.Tag = util.StrToMem(oProtocolRedistProfile.Filter.Ospf.Tag) + } + } + if oProtocolRedistProfile.Filter.Bgp != nil { + nestedProtocolRedistProfile.Filter.Bgp = &ProtocolRedistProfileFilterBgpXml{} + if _, ok := o.Misc["ProtocolRedistProfileFilterBgp"]; ok { + nestedProtocolRedistProfile.Filter.Bgp.Misc = o.Misc["ProtocolRedistProfileFilterBgp"] } if oProtocolRedistProfile.Filter.Bgp.Community != nil { nestedProtocolRedistProfile.Filter.Bgp.Community = util.StrToMem(oProtocolRedistProfile.Filter.Bgp.Community) @@ -5617,6 +5832,15 @@ func specifyEntry(o *Entry) (any, error) { if oProtocolRedistProfile.Filter.Type != nil { nestedProtocolRedistProfile.Filter.Type = util.StrToMem(oProtocolRedistProfile.Filter.Type) } + if oProtocolRedistProfile.Filter.Interface != nil { + nestedProtocolRedistProfile.Filter.Interface = util.StrToMem(oProtocolRedistProfile.Filter.Interface) + } + if oProtocolRedistProfile.Filter.Destination != nil { + nestedProtocolRedistProfile.Filter.Destination = util.StrToMem(oProtocolRedistProfile.Filter.Destination) + } + if oProtocolRedistProfile.Filter.Nexthop != nil { + nestedProtocolRedistProfile.Filter.Nexthop = util.StrToMem(oProtocolRedistProfile.Filter.Nexthop) + } } if oProtocolRedistProfile.Action != nil { nestedProtocolRedistProfile.Action = &ProtocolRedistProfileActionXml{} @@ -5642,256 +5866,196 @@ func specifyEntry(o *Entry) (any, error) { nestedProtocol.RedistProfile = append(nestedProtocol.RedistProfile, nestedProtocolRedistProfile) } } - if o.Protocol.RedistProfileIpv6 != nil { - nestedProtocol.RedistProfileIpv6 = []ProtocolRedistProfileIpv6Xml{} - for _, oProtocolRedistProfileIpv6 := range o.Protocol.RedistProfileIpv6 { - nestedProtocolRedistProfileIpv6 := ProtocolRedistProfileIpv6Xml{} - if _, ok := o.Misc["ProtocolRedistProfileIpv6"]; ok { - nestedProtocolRedistProfileIpv6.Misc = o.Misc["ProtocolRedistProfileIpv6"] - } - if oProtocolRedistProfileIpv6.Priority != nil { - nestedProtocolRedistProfileIpv6.Priority = oProtocolRedistProfileIpv6.Priority - } - if oProtocolRedistProfileIpv6.Filter != nil { - nestedProtocolRedistProfileIpv6.Filter = &ProtocolRedistProfileIpv6FilterXml{} - if _, ok := o.Misc["ProtocolRedistProfileIpv6Filter"]; ok { - nestedProtocolRedistProfileIpv6.Filter.Misc = o.Misc["ProtocolRedistProfileIpv6Filter"] - } - if oProtocolRedistProfileIpv6.Filter.Interface != nil { - nestedProtocolRedistProfileIpv6.Filter.Interface = util.StrToMem(oProtocolRedistProfileIpv6.Filter.Interface) + } + entry.Protocol = nestedProtocol + + var nestedRoutingTable *RoutingTableXml + if o.RoutingTable != nil { + nestedRoutingTable = &RoutingTableXml{} + if _, ok := o.Misc["RoutingTable"]; ok { + nestedRoutingTable.Misc = o.Misc["RoutingTable"] + } + if o.RoutingTable.Ip != nil { + nestedRoutingTable.Ip = &RoutingTableIpXml{} + if _, ok := o.Misc["RoutingTableIp"]; ok { + nestedRoutingTable.Ip.Misc = o.Misc["RoutingTableIp"] + } + if o.RoutingTable.Ip.StaticRoute != nil { + nestedRoutingTable.Ip.StaticRoute = []RoutingTableIpStaticRouteXml{} + for _, oRoutingTableIpStaticRoute := range o.RoutingTable.Ip.StaticRoute { + nestedRoutingTableIpStaticRoute := RoutingTableIpStaticRouteXml{} + if _, ok := o.Misc["RoutingTableIpStaticRoute"]; ok { + nestedRoutingTableIpStaticRoute.Misc = o.Misc["RoutingTableIpStaticRoute"] } - if oProtocolRedistProfileIpv6.Filter.Destination != nil { - nestedProtocolRedistProfileIpv6.Filter.Destination = util.StrToMem(oProtocolRedistProfileIpv6.Filter.Destination) + if oRoutingTableIpStaticRoute.RouteTable != nil { + nestedRoutingTableIpStaticRoute.RouteTable = &RoutingTableIpStaticRouteRouteTableXml{} + if _, ok := o.Misc["RoutingTableIpStaticRouteRouteTable"]; ok { + nestedRoutingTableIpStaticRoute.RouteTable.Misc = o.Misc["RoutingTableIpStaticRouteRouteTable"] + } + if oRoutingTableIpStaticRoute.RouteTable.NoInstall != nil { + nestedRoutingTableIpStaticRoute.RouteTable.NoInstall = &RoutingTableIpStaticRouteRouteTableNoInstallXml{} + if _, ok := o.Misc["RoutingTableIpStaticRouteRouteTableNoInstall"]; ok { + nestedRoutingTableIpStaticRoute.RouteTable.NoInstall.Misc = o.Misc["RoutingTableIpStaticRouteRouteTableNoInstall"] + } + } + if oRoutingTableIpStaticRoute.RouteTable.Unicast != nil { + nestedRoutingTableIpStaticRoute.RouteTable.Unicast = &RoutingTableIpStaticRouteRouteTableUnicastXml{} + if _, ok := o.Misc["RoutingTableIpStaticRouteRouteTableUnicast"]; ok { + nestedRoutingTableIpStaticRoute.RouteTable.Unicast.Misc = o.Misc["RoutingTableIpStaticRouteRouteTableUnicast"] + } + } + if oRoutingTableIpStaticRoute.RouteTable.Multicast != nil { + nestedRoutingTableIpStaticRoute.RouteTable.Multicast = &RoutingTableIpStaticRouteRouteTableMulticastXml{} + if _, ok := o.Misc["RoutingTableIpStaticRouteRouteTableMulticast"]; ok { + nestedRoutingTableIpStaticRoute.RouteTable.Multicast.Misc = o.Misc["RoutingTableIpStaticRouteRouteTableMulticast"] + } + } + if oRoutingTableIpStaticRoute.RouteTable.Both != nil { + nestedRoutingTableIpStaticRoute.RouteTable.Both = &RoutingTableIpStaticRouteRouteTableBothXml{} + if _, ok := o.Misc["RoutingTableIpStaticRouteRouteTableBoth"]; ok { + nestedRoutingTableIpStaticRoute.RouteTable.Both.Misc = o.Misc["RoutingTableIpStaticRouteRouteTableBoth"] + } + } } - if oProtocolRedistProfileIpv6.Filter.Nexthop != nil { - nestedProtocolRedistProfileIpv6.Filter.Nexthop = util.StrToMem(oProtocolRedistProfileIpv6.Filter.Nexthop) + if oRoutingTableIpStaticRoute.Interface != nil { + nestedRoutingTableIpStaticRoute.Interface = oRoutingTableIpStaticRoute.Interface } - if oProtocolRedistProfileIpv6.Filter.Ospfv3 != nil { - nestedProtocolRedistProfileIpv6.Filter.Ospfv3 = &ProtocolRedistProfileIpv6FilterOspfv3Xml{} - if _, ok := o.Misc["ProtocolRedistProfileIpv6FilterOspfv3"]; ok { - nestedProtocolRedistProfileIpv6.Filter.Ospfv3.Misc = o.Misc["ProtocolRedistProfileIpv6FilterOspfv3"] + if oRoutingTableIpStaticRoute.AdminDist != nil { + nestedRoutingTableIpStaticRoute.AdminDist = oRoutingTableIpStaticRoute.AdminDist + } + if oRoutingTableIpStaticRoute.Nexthop != nil { + nestedRoutingTableIpStaticRoute.Nexthop = &RoutingTableIpStaticRouteNexthopXml{} + if _, ok := o.Misc["RoutingTableIpStaticRouteNexthop"]; ok { + nestedRoutingTableIpStaticRoute.Nexthop.Misc = o.Misc["RoutingTableIpStaticRouteNexthop"] } - if oProtocolRedistProfileIpv6.Filter.Ospfv3.PathType != nil { - nestedProtocolRedistProfileIpv6.Filter.Ospfv3.PathType = util.StrToMem(oProtocolRedistProfileIpv6.Filter.Ospfv3.PathType) + if oRoutingTableIpStaticRoute.Nexthop.NextVr != nil { + nestedRoutingTableIpStaticRoute.Nexthop.NextVr = oRoutingTableIpStaticRoute.Nexthop.NextVr } - if oProtocolRedistProfileIpv6.Filter.Ospfv3.Area != nil { - nestedProtocolRedistProfileIpv6.Filter.Ospfv3.Area = util.StrToMem(oProtocolRedistProfileIpv6.Filter.Ospfv3.Area) + if oRoutingTableIpStaticRoute.Nexthop.Receive != nil { + nestedRoutingTableIpStaticRoute.Nexthop.Receive = &RoutingTableIpStaticRouteNexthopReceiveXml{} + if _, ok := o.Misc["RoutingTableIpStaticRouteNexthopReceive"]; ok { + nestedRoutingTableIpStaticRoute.Nexthop.Receive.Misc = o.Misc["RoutingTableIpStaticRouteNexthopReceive"] + } } - if oProtocolRedistProfileIpv6.Filter.Ospfv3.Tag != nil { - nestedProtocolRedistProfileIpv6.Filter.Ospfv3.Tag = util.StrToMem(oProtocolRedistProfileIpv6.Filter.Ospfv3.Tag) + if oRoutingTableIpStaticRoute.Nexthop.Discard != nil { + nestedRoutingTableIpStaticRoute.Nexthop.Discard = &RoutingTableIpStaticRouteNexthopDiscardXml{} + if _, ok := o.Misc["RoutingTableIpStaticRouteNexthopDiscard"]; ok { + nestedRoutingTableIpStaticRoute.Nexthop.Discard.Misc = o.Misc["RoutingTableIpStaticRouteNexthopDiscard"] + } } - } - if oProtocolRedistProfileIpv6.Filter.Bgp != nil { - nestedProtocolRedistProfileIpv6.Filter.Bgp = &ProtocolRedistProfileIpv6FilterBgpXml{} - if _, ok := o.Misc["ProtocolRedistProfileIpv6FilterBgp"]; ok { - nestedProtocolRedistProfileIpv6.Filter.Bgp.Misc = o.Misc["ProtocolRedistProfileIpv6FilterBgp"] + if oRoutingTableIpStaticRoute.Nexthop.IpAddress != nil { + nestedRoutingTableIpStaticRoute.Nexthop.IpAddress = oRoutingTableIpStaticRoute.Nexthop.IpAddress } - if oProtocolRedistProfileIpv6.Filter.Bgp.Community != nil { - nestedProtocolRedistProfileIpv6.Filter.Bgp.Community = util.StrToMem(oProtocolRedistProfileIpv6.Filter.Bgp.Community) + if oRoutingTableIpStaticRoute.Nexthop.Fqdn != nil { + nestedRoutingTableIpStaticRoute.Nexthop.Fqdn = oRoutingTableIpStaticRoute.Nexthop.Fqdn } - if oProtocolRedistProfileIpv6.Filter.Bgp.ExtendedCommunity != nil { - nestedProtocolRedistProfileIpv6.Filter.Bgp.ExtendedCommunity = util.StrToMem(oProtocolRedistProfileIpv6.Filter.Bgp.ExtendedCommunity) + } + if oRoutingTableIpStaticRoute.Bfd != nil { + nestedRoutingTableIpStaticRoute.Bfd = &RoutingTableIpStaticRouteBfdXml{} + if _, ok := o.Misc["RoutingTableIpStaticRouteBfd"]; ok { + nestedRoutingTableIpStaticRoute.Bfd.Misc = o.Misc["RoutingTableIpStaticRouteBfd"] + } + if oRoutingTableIpStaticRoute.Bfd.Profile != nil { + nestedRoutingTableIpStaticRoute.Bfd.Profile = oRoutingTableIpStaticRoute.Bfd.Profile } } - if oProtocolRedistProfileIpv6.Filter.Type != nil { - nestedProtocolRedistProfileIpv6.Filter.Type = util.StrToMem(oProtocolRedistProfileIpv6.Filter.Type) + if oRoutingTableIpStaticRoute.PathMonitor != nil { + nestedRoutingTableIpStaticRoute.PathMonitor = &RoutingTableIpStaticRoutePathMonitorXml{} + if _, ok := o.Misc["RoutingTableIpStaticRoutePathMonitor"]; ok { + nestedRoutingTableIpStaticRoute.PathMonitor.Misc = o.Misc["RoutingTableIpStaticRoutePathMonitor"] + } + if oRoutingTableIpStaticRoute.PathMonitor.HoldTime != nil { + nestedRoutingTableIpStaticRoute.PathMonitor.HoldTime = oRoutingTableIpStaticRoute.PathMonitor.HoldTime + } + if oRoutingTableIpStaticRoute.PathMonitor.MonitorDestinations != nil { + nestedRoutingTableIpStaticRoute.PathMonitor.MonitorDestinations = []RoutingTableIpStaticRoutePathMonitorMonitorDestinationsXml{} + for _, oRoutingTableIpStaticRoutePathMonitorMonitorDestinations := range oRoutingTableIpStaticRoute.PathMonitor.MonitorDestinations { + nestedRoutingTableIpStaticRoutePathMonitorMonitorDestinations := RoutingTableIpStaticRoutePathMonitorMonitorDestinationsXml{} + if _, ok := o.Misc["RoutingTableIpStaticRoutePathMonitorMonitorDestinations"]; ok { + nestedRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Misc = o.Misc["RoutingTableIpStaticRoutePathMonitorMonitorDestinations"] + } + if oRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Source != nil { + nestedRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Source = oRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Source + } + if oRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Destination != nil { + nestedRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Destination = oRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Destination + } + if oRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Interval != nil { + nestedRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Interval = oRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Interval + } + if oRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Count != nil { + nestedRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Count = oRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Count + } + if oRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Name != "" { + nestedRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Name = oRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Name + } + if oRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Enable != nil { + nestedRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Enable = util.YesNo(oRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Enable, nil) + } + nestedRoutingTableIpStaticRoute.PathMonitor.MonitorDestinations = append(nestedRoutingTableIpStaticRoute.PathMonitor.MonitorDestinations, nestedRoutingTableIpStaticRoutePathMonitorMonitorDestinations) + } + } + if oRoutingTableIpStaticRoute.PathMonitor.Enable != nil { + nestedRoutingTableIpStaticRoute.PathMonitor.Enable = util.YesNo(oRoutingTableIpStaticRoute.PathMonitor.Enable, nil) + } + if oRoutingTableIpStaticRoute.PathMonitor.FailureCondition != nil { + nestedRoutingTableIpStaticRoute.PathMonitor.FailureCondition = oRoutingTableIpStaticRoute.PathMonitor.FailureCondition + } } - } - if oProtocolRedistProfileIpv6.Action != nil { - nestedProtocolRedistProfileIpv6.Action = &ProtocolRedistProfileIpv6ActionXml{} - if _, ok := o.Misc["ProtocolRedistProfileIpv6Action"]; ok { - nestedProtocolRedistProfileIpv6.Action.Misc = o.Misc["ProtocolRedistProfileIpv6Action"] + if oRoutingTableIpStaticRoute.Name != "" { + nestedRoutingTableIpStaticRoute.Name = oRoutingTableIpStaticRoute.Name } - if oProtocolRedistProfileIpv6.Action.NoRedist != nil { - nestedProtocolRedistProfileIpv6.Action.NoRedist = &ProtocolRedistProfileIpv6ActionNoRedistXml{} - if _, ok := o.Misc["ProtocolRedistProfileIpv6ActionNoRedist"]; ok { - nestedProtocolRedistProfileIpv6.Action.NoRedist.Misc = o.Misc["ProtocolRedistProfileIpv6ActionNoRedist"] - } + if oRoutingTableIpStaticRoute.Destination != nil { + nestedRoutingTableIpStaticRoute.Destination = oRoutingTableIpStaticRoute.Destination } - if oProtocolRedistProfileIpv6.Action.Redist != nil { - nestedProtocolRedistProfileIpv6.Action.Redist = &ProtocolRedistProfileIpv6ActionRedistXml{} - if _, ok := o.Misc["ProtocolRedistProfileIpv6ActionRedist"]; ok { - nestedProtocolRedistProfileIpv6.Action.Redist.Misc = o.Misc["ProtocolRedistProfileIpv6ActionRedist"] - } + if oRoutingTableIpStaticRoute.Metric != nil { + nestedRoutingTableIpStaticRoute.Metric = oRoutingTableIpStaticRoute.Metric } + nestedRoutingTable.Ip.StaticRoute = append(nestedRoutingTable.Ip.StaticRoute, nestedRoutingTableIpStaticRoute) } - if oProtocolRedistProfileIpv6.Name != "" { - nestedProtocolRedistProfileIpv6.Name = oProtocolRedistProfileIpv6.Name - } - nestedProtocol.RedistProfileIpv6 = append(nestedProtocol.RedistProfileIpv6, nestedProtocolRedistProfileIpv6) } } - if o.Protocol.Rip != nil { - nestedProtocol.Rip = &ProtocolRipXml{} - if _, ok := o.Misc["ProtocolRip"]; ok { - nestedProtocol.Rip.Misc = o.Misc["ProtocolRip"] - } - if o.Protocol.Rip.AllowRedistDefaultRoute != nil { - nestedProtocol.Rip.AllowRedistDefaultRoute = util.YesNo(o.Protocol.Rip.AllowRedistDefaultRoute, nil) + if o.RoutingTable.Ipv6 != nil { + nestedRoutingTable.Ipv6 = &RoutingTableIpv6Xml{} + if _, ok := o.Misc["RoutingTableIpv6"]; ok { + nestedRoutingTable.Ipv6.Misc = o.Misc["RoutingTableIpv6"] } - if o.Protocol.Rip.AuthProfile != nil { - nestedProtocol.Rip.AuthProfile = []ProtocolRipAuthProfileXml{} - for _, oProtocolRipAuthProfile := range o.Protocol.Rip.AuthProfile { - nestedProtocolRipAuthProfile := ProtocolRipAuthProfileXml{} - if _, ok := o.Misc["ProtocolRipAuthProfile"]; ok { - nestedProtocolRipAuthProfile.Misc = o.Misc["ProtocolRipAuthProfile"] + if o.RoutingTable.Ipv6.StaticRoute != nil { + nestedRoutingTable.Ipv6.StaticRoute = []RoutingTableIpv6StaticRouteXml{} + for _, oRoutingTableIpv6StaticRoute := range o.RoutingTable.Ipv6.StaticRoute { + nestedRoutingTableIpv6StaticRoute := RoutingTableIpv6StaticRouteXml{} + if _, ok := o.Misc["RoutingTableIpv6StaticRoute"]; ok { + nestedRoutingTableIpv6StaticRoute.Misc = o.Misc["RoutingTableIpv6StaticRoute"] } - if oProtocolRipAuthProfile.Name != "" { - nestedProtocolRipAuthProfile.Name = oProtocolRipAuthProfile.Name + if oRoutingTableIpv6StaticRoute.AdminDist != nil { + nestedRoutingTableIpv6StaticRoute.AdminDist = oRoutingTableIpv6StaticRoute.AdminDist } - if oProtocolRipAuthProfile.Password != nil { - nestedProtocolRipAuthProfile.Password = oProtocolRipAuthProfile.Password + if oRoutingTableIpv6StaticRoute.Metric != nil { + nestedRoutingTableIpv6StaticRoute.Metric = oRoutingTableIpv6StaticRoute.Metric } - if oProtocolRipAuthProfile.Md5 != nil { - nestedProtocolRipAuthProfile.Md5 = []ProtocolRipAuthProfileMd5Xml{} - for _, oProtocolRipAuthProfileMd5 := range oProtocolRipAuthProfile.Md5 { - nestedProtocolRipAuthProfileMd5 := ProtocolRipAuthProfileMd5Xml{} - if _, ok := o.Misc["ProtocolRipAuthProfileMd5"]; ok { - nestedProtocolRipAuthProfileMd5.Misc = o.Misc["ProtocolRipAuthProfileMd5"] - } - if oProtocolRipAuthProfileMd5.Key != nil { - nestedProtocolRipAuthProfileMd5.Key = oProtocolRipAuthProfileMd5.Key - } - if oProtocolRipAuthProfileMd5.Preferred != nil { - nestedProtocolRipAuthProfileMd5.Preferred = util.YesNo(oProtocolRipAuthProfileMd5.Preferred, nil) + if oRoutingTableIpv6StaticRoute.Nexthop != nil { + nestedRoutingTableIpv6StaticRoute.Nexthop = &RoutingTableIpv6StaticRouteNexthopXml{} + if _, ok := o.Misc["RoutingTableIpv6StaticRouteNexthop"]; ok { + nestedRoutingTableIpv6StaticRoute.Nexthop.Misc = o.Misc["RoutingTableIpv6StaticRouteNexthop"] + } + if oRoutingTableIpv6StaticRoute.Nexthop.Receive != nil { + nestedRoutingTableIpv6StaticRoute.Nexthop.Receive = &RoutingTableIpv6StaticRouteNexthopReceiveXml{} + if _, ok := o.Misc["RoutingTableIpv6StaticRouteNexthopReceive"]; ok { + nestedRoutingTableIpv6StaticRoute.Nexthop.Receive.Misc = o.Misc["RoutingTableIpv6StaticRouteNexthopReceive"] } - if oProtocolRipAuthProfileMd5.Name != "" { - nestedProtocolRipAuthProfileMd5.Name = oProtocolRipAuthProfileMd5.Name + } + if oRoutingTableIpv6StaticRoute.Nexthop.Discard != nil { + nestedRoutingTableIpv6StaticRoute.Nexthop.Discard = &RoutingTableIpv6StaticRouteNexthopDiscardXml{} + if _, ok := o.Misc["RoutingTableIpv6StaticRouteNexthopDiscard"]; ok { + nestedRoutingTableIpv6StaticRoute.Nexthop.Discard.Misc = o.Misc["RoutingTableIpv6StaticRouteNexthopDiscard"] } - nestedProtocolRipAuthProfile.Md5 = append(nestedProtocolRipAuthProfile.Md5, nestedProtocolRipAuthProfileMd5) } - } - nestedProtocol.Rip.AuthProfile = append(nestedProtocol.Rip.AuthProfile, nestedProtocolRipAuthProfile) - } - } - if o.Protocol.Rip.Enable != nil { - nestedProtocol.Rip.Enable = util.YesNo(o.Protocol.Rip.Enable, nil) - } - if o.Protocol.Rip.ExportRules != nil { - nestedProtocol.Rip.ExportRules = []ProtocolRipExportRulesXml{} - for _, oProtocolRipExportRules := range o.Protocol.Rip.ExportRules { - nestedProtocolRipExportRules := ProtocolRipExportRulesXml{} - if _, ok := o.Misc["ProtocolRipExportRules"]; ok { - nestedProtocolRipExportRules.Misc = o.Misc["ProtocolRipExportRules"] - } - if oProtocolRipExportRules.Metric != nil { - nestedProtocolRipExportRules.Metric = oProtocolRipExportRules.Metric - } - if oProtocolRipExportRules.Name != "" { - nestedProtocolRipExportRules.Name = oProtocolRipExportRules.Name - } - nestedProtocol.Rip.ExportRules = append(nestedProtocol.Rip.ExportRules, nestedProtocolRipExportRules) - } - } - if o.Protocol.Rip.GlobalBfd != nil { - nestedProtocol.Rip.GlobalBfd = &ProtocolRipGlobalBfdXml{} - if _, ok := o.Misc["ProtocolRipGlobalBfd"]; ok { - nestedProtocol.Rip.GlobalBfd.Misc = o.Misc["ProtocolRipGlobalBfd"] - } - if o.Protocol.Rip.GlobalBfd.Profile != nil { - nestedProtocol.Rip.GlobalBfd.Profile = o.Protocol.Rip.GlobalBfd.Profile - } - } - if o.Protocol.Rip.Interface != nil { - nestedProtocol.Rip.Interface = []ProtocolRipInterfaceXml{} - for _, oProtocolRipInterface := range o.Protocol.Rip.Interface { - nestedProtocolRipInterface := ProtocolRipInterfaceXml{} - if _, ok := o.Misc["ProtocolRipInterface"]; ok { - nestedProtocolRipInterface.Misc = o.Misc["ProtocolRipInterface"] - } - if oProtocolRipInterface.Enable != nil { - nestedProtocolRipInterface.Enable = util.YesNo(oProtocolRipInterface.Enable, nil) - } - if oProtocolRipInterface.Authentication != nil { - nestedProtocolRipInterface.Authentication = oProtocolRipInterface.Authentication - } - if oProtocolRipInterface.Mode != nil { - nestedProtocolRipInterface.Mode = oProtocolRipInterface.Mode - } - if oProtocolRipInterface.DefaultRoute != nil { - nestedProtocolRipInterface.DefaultRoute = &ProtocolRipInterfaceDefaultRouteXml{} - if _, ok := o.Misc["ProtocolRipInterfaceDefaultRoute"]; ok { - nestedProtocolRipInterface.DefaultRoute.Misc = o.Misc["ProtocolRipInterfaceDefaultRoute"] - } - if oProtocolRipInterface.DefaultRoute.Advertise != nil { - nestedProtocolRipInterface.DefaultRoute.Advertise = &ProtocolRipInterfaceDefaultRouteAdvertiseXml{} - if _, ok := o.Misc["ProtocolRipInterfaceDefaultRouteAdvertise"]; ok { - nestedProtocolRipInterface.DefaultRoute.Advertise.Misc = o.Misc["ProtocolRipInterfaceDefaultRouteAdvertise"] - } - if oProtocolRipInterface.DefaultRoute.Advertise.Metric != nil { - nestedProtocolRipInterface.DefaultRoute.Advertise.Metric = oProtocolRipInterface.DefaultRoute.Advertise.Metric - } - } - if oProtocolRipInterface.DefaultRoute.Disable != nil { - nestedProtocolRipInterface.DefaultRoute.Disable = &ProtocolRipInterfaceDefaultRouteDisableXml{} - if _, ok := o.Misc["ProtocolRipInterfaceDefaultRouteDisable"]; ok { - nestedProtocolRipInterface.DefaultRoute.Disable.Misc = o.Misc["ProtocolRipInterfaceDefaultRouteDisable"] - } - } - } - if oProtocolRipInterface.Bfd != nil { - nestedProtocolRipInterface.Bfd = &ProtocolRipInterfaceBfdXml{} - if _, ok := o.Misc["ProtocolRipInterfaceBfd"]; ok { - nestedProtocolRipInterface.Bfd.Misc = o.Misc["ProtocolRipInterfaceBfd"] - } - if oProtocolRipInterface.Bfd.Profile != nil { - nestedProtocolRipInterface.Bfd.Profile = oProtocolRipInterface.Bfd.Profile - } - } - if oProtocolRipInterface.Name != "" { - nestedProtocolRipInterface.Name = oProtocolRipInterface.Name - } - nestedProtocol.Rip.Interface = append(nestedProtocol.Rip.Interface, nestedProtocolRipInterface) - } - } - if o.Protocol.Rip.RejectDefaultRoute != nil { - nestedProtocol.Rip.RejectDefaultRoute = util.YesNo(o.Protocol.Rip.RejectDefaultRoute, nil) - } - if o.Protocol.Rip.Timers != nil { - nestedProtocol.Rip.Timers = &ProtocolRipTimersXml{} - if _, ok := o.Misc["ProtocolRipTimers"]; ok { - nestedProtocol.Rip.Timers.Misc = o.Misc["ProtocolRipTimers"] - } - if o.Protocol.Rip.Timers.IntervalSeconds != nil { - nestedProtocol.Rip.Timers.IntervalSeconds = o.Protocol.Rip.Timers.IntervalSeconds - } - if o.Protocol.Rip.Timers.UpdateIntervals != nil { - nestedProtocol.Rip.Timers.UpdateIntervals = o.Protocol.Rip.Timers.UpdateIntervals - } - if o.Protocol.Rip.Timers.DeleteIntervals != nil { - nestedProtocol.Rip.Timers.DeleteIntervals = o.Protocol.Rip.Timers.DeleteIntervals - } - if o.Protocol.Rip.Timers.ExpireIntervals != nil { - nestedProtocol.Rip.Timers.ExpireIntervals = o.Protocol.Rip.Timers.ExpireIntervals - } - } - } - } - entry.Protocol = nestedProtocol - - var nestedRoutingTable *RoutingTableXml - if o.RoutingTable != nil { - nestedRoutingTable = &RoutingTableXml{} - if _, ok := o.Misc["RoutingTable"]; ok { - nestedRoutingTable.Misc = o.Misc["RoutingTable"] - } - if o.RoutingTable.Ipv6 != nil { - nestedRoutingTable.Ipv6 = &RoutingTableIpv6Xml{} - if _, ok := o.Misc["RoutingTableIpv6"]; ok { - nestedRoutingTable.Ipv6.Misc = o.Misc["RoutingTableIpv6"] - } - if o.RoutingTable.Ipv6.StaticRoute != nil { - nestedRoutingTable.Ipv6.StaticRoute = []RoutingTableIpv6StaticRouteXml{} - for _, oRoutingTableIpv6StaticRoute := range o.RoutingTable.Ipv6.StaticRoute { - nestedRoutingTableIpv6StaticRoute := RoutingTableIpv6StaticRouteXml{} - if _, ok := o.Misc["RoutingTableIpv6StaticRoute"]; ok { - nestedRoutingTableIpv6StaticRoute.Misc = o.Misc["RoutingTableIpv6StaticRoute"] - } - if oRoutingTableIpv6StaticRoute.Interface != nil { - nestedRoutingTableIpv6StaticRoute.Interface = oRoutingTableIpv6StaticRoute.Interface - } - if oRoutingTableIpv6StaticRoute.AdminDist != nil { - nestedRoutingTableIpv6StaticRoute.AdminDist = oRoutingTableIpv6StaticRoute.AdminDist + if oRoutingTableIpv6StaticRoute.Nexthop.Ipv6Address != nil { + nestedRoutingTableIpv6StaticRoute.Nexthop.Ipv6Address = oRoutingTableIpv6StaticRoute.Nexthop.Ipv6Address + } + if oRoutingTableIpv6StaticRoute.Nexthop.NextVr != nil { + nestedRoutingTableIpv6StaticRoute.Nexthop.NextVr = oRoutingTableIpv6StaticRoute.Nexthop.NextVr + } } if oRoutingTableIpv6StaticRoute.Option != nil { nestedRoutingTableIpv6StaticRoute.Option = &RoutingTableIpv6StaticRouteOptionXml{} @@ -5904,26 +6068,17 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["RoutingTableIpv6StaticRouteRouteTable"]; ok { nestedRoutingTableIpv6StaticRoute.RouteTable.Misc = o.Misc["RoutingTableIpv6StaticRouteRouteTable"] } - if oRoutingTableIpv6StaticRoute.RouteTable.NoInstall != nil { - nestedRoutingTableIpv6StaticRoute.RouteTable.NoInstall = &RoutingTableIpv6StaticRouteRouteTableNoInstallXml{} - if _, ok := o.Misc["RoutingTableIpv6StaticRouteRouteTableNoInstall"]; ok { - nestedRoutingTableIpv6StaticRoute.RouteTable.NoInstall.Misc = o.Misc["RoutingTableIpv6StaticRouteRouteTableNoInstall"] - } - } if oRoutingTableIpv6StaticRoute.RouteTable.Unicast != nil { nestedRoutingTableIpv6StaticRoute.RouteTable.Unicast = &RoutingTableIpv6StaticRouteRouteTableUnicastXml{} if _, ok := o.Misc["RoutingTableIpv6StaticRouteRouteTableUnicast"]; ok { nestedRoutingTableIpv6StaticRoute.RouteTable.Unicast.Misc = o.Misc["RoutingTableIpv6StaticRouteRouteTableUnicast"] } } - } - if oRoutingTableIpv6StaticRoute.Bfd != nil { - nestedRoutingTableIpv6StaticRoute.Bfd = &RoutingTableIpv6StaticRouteBfdXml{} - if _, ok := o.Misc["RoutingTableIpv6StaticRouteBfd"]; ok { - nestedRoutingTableIpv6StaticRoute.Bfd.Misc = o.Misc["RoutingTableIpv6StaticRouteBfd"] - } - if oRoutingTableIpv6StaticRoute.Bfd.Profile != nil { - nestedRoutingTableIpv6StaticRoute.Bfd.Profile = oRoutingTableIpv6StaticRoute.Bfd.Profile + if oRoutingTableIpv6StaticRoute.RouteTable.NoInstall != nil { + nestedRoutingTableIpv6StaticRoute.RouteTable.NoInstall = &RoutingTableIpv6StaticRouteRouteTableNoInstallXml{} + if _, ok := o.Misc["RoutingTableIpv6StaticRouteRouteTableNoInstall"]; ok { + nestedRoutingTableIpv6StaticRoute.RouteTable.NoInstall.Misc = o.Misc["RoutingTableIpv6StaticRouteRouteTableNoInstall"] + } } } if oRoutingTableIpv6StaticRoute.PathMonitor != nil { @@ -5931,6 +6086,12 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["RoutingTableIpv6StaticRoutePathMonitor"]; ok { nestedRoutingTableIpv6StaticRoute.PathMonitor.Misc = o.Misc["RoutingTableIpv6StaticRoutePathMonitor"] } + if oRoutingTableIpv6StaticRoute.PathMonitor.Enable != nil { + nestedRoutingTableIpv6StaticRoute.PathMonitor.Enable = util.YesNo(oRoutingTableIpv6StaticRoute.PathMonitor.Enable, nil) + } + if oRoutingTableIpv6StaticRoute.PathMonitor.FailureCondition != nil { + nestedRoutingTableIpv6StaticRoute.PathMonitor.FailureCondition = oRoutingTableIpv6StaticRoute.PathMonitor.FailureCondition + } if oRoutingTableIpv6StaticRoute.PathMonitor.HoldTime != nil { nestedRoutingTableIpv6StaticRoute.PathMonitor.HoldTime = oRoutingTableIpv6StaticRoute.PathMonitor.HoldTime } @@ -5941,12 +6102,6 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["RoutingTableIpv6StaticRoutePathMonitorMonitorDestinations"]; ok { nestedRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Misc = o.Misc["RoutingTableIpv6StaticRoutePathMonitorMonitorDestinations"] } - if oRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Count != nil { - nestedRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Count = oRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Count - } - if oRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Name != "" { - nestedRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Name = oRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Name - } if oRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Enable != nil { nestedRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Enable = util.YesNo(oRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Enable, nil) } @@ -5959,241 +6114,86 @@ func specifyEntry(o *Entry) (any, error) { if oRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Interval != nil { nestedRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Interval = oRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Interval } + if oRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Count != nil { + nestedRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Count = oRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Count + } + if oRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Name != "" { + nestedRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Name = oRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Name + } nestedRoutingTableIpv6StaticRoute.PathMonitor.MonitorDestinations = append(nestedRoutingTableIpv6StaticRoute.PathMonitor.MonitorDestinations, nestedRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations) } } - if oRoutingTableIpv6StaticRoute.PathMonitor.Enable != nil { - nestedRoutingTableIpv6StaticRoute.PathMonitor.Enable = util.YesNo(oRoutingTableIpv6StaticRoute.PathMonitor.Enable, nil) - } - if oRoutingTableIpv6StaticRoute.PathMonitor.FailureCondition != nil { - nestedRoutingTableIpv6StaticRoute.PathMonitor.FailureCondition = oRoutingTableIpv6StaticRoute.PathMonitor.FailureCondition - } - } - if oRoutingTableIpv6StaticRoute.Name != "" { - nestedRoutingTableIpv6StaticRoute.Name = oRoutingTableIpv6StaticRoute.Name } if oRoutingTableIpv6StaticRoute.Destination != nil { nestedRoutingTableIpv6StaticRoute.Destination = oRoutingTableIpv6StaticRoute.Destination } - if oRoutingTableIpv6StaticRoute.Metric != nil { - nestedRoutingTableIpv6StaticRoute.Metric = oRoutingTableIpv6StaticRoute.Metric + if oRoutingTableIpv6StaticRoute.Interface != nil { + nestedRoutingTableIpv6StaticRoute.Interface = oRoutingTableIpv6StaticRoute.Interface } - if oRoutingTableIpv6StaticRoute.Nexthop != nil { - nestedRoutingTableIpv6StaticRoute.Nexthop = &RoutingTableIpv6StaticRouteNexthopXml{} - if _, ok := o.Misc["RoutingTableIpv6StaticRouteNexthop"]; ok { - nestedRoutingTableIpv6StaticRoute.Nexthop.Misc = o.Misc["RoutingTableIpv6StaticRouteNexthop"] - } - if oRoutingTableIpv6StaticRoute.Nexthop.Discard != nil { - nestedRoutingTableIpv6StaticRoute.Nexthop.Discard = &RoutingTableIpv6StaticRouteNexthopDiscardXml{} - if _, ok := o.Misc["RoutingTableIpv6StaticRouteNexthopDiscard"]; ok { - nestedRoutingTableIpv6StaticRoute.Nexthop.Discard.Misc = o.Misc["RoutingTableIpv6StaticRouteNexthopDiscard"] - } - } - if oRoutingTableIpv6StaticRoute.Nexthop.Ipv6Address != nil { - nestedRoutingTableIpv6StaticRoute.Nexthop.Ipv6Address = oRoutingTableIpv6StaticRoute.Nexthop.Ipv6Address - } - if oRoutingTableIpv6StaticRoute.Nexthop.NextVr != nil { - nestedRoutingTableIpv6StaticRoute.Nexthop.NextVr = oRoutingTableIpv6StaticRoute.Nexthop.NextVr + if oRoutingTableIpv6StaticRoute.Bfd != nil { + nestedRoutingTableIpv6StaticRoute.Bfd = &RoutingTableIpv6StaticRouteBfdXml{} + if _, ok := o.Misc["RoutingTableIpv6StaticRouteBfd"]; ok { + nestedRoutingTableIpv6StaticRoute.Bfd.Misc = o.Misc["RoutingTableIpv6StaticRouteBfd"] } - if oRoutingTableIpv6StaticRoute.Nexthop.Receive != nil { - nestedRoutingTableIpv6StaticRoute.Nexthop.Receive = &RoutingTableIpv6StaticRouteNexthopReceiveXml{} - if _, ok := o.Misc["RoutingTableIpv6StaticRouteNexthopReceive"]; ok { - nestedRoutingTableIpv6StaticRoute.Nexthop.Receive.Misc = o.Misc["RoutingTableIpv6StaticRouteNexthopReceive"] - } + if oRoutingTableIpv6StaticRoute.Bfd.Profile != nil { + nestedRoutingTableIpv6StaticRoute.Bfd.Profile = oRoutingTableIpv6StaticRoute.Bfd.Profile } } + if oRoutingTableIpv6StaticRoute.Name != "" { + nestedRoutingTableIpv6StaticRoute.Name = oRoutingTableIpv6StaticRoute.Name + } nestedRoutingTable.Ipv6.StaticRoute = append(nestedRoutingTable.Ipv6.StaticRoute, nestedRoutingTableIpv6StaticRoute) } } } - if o.RoutingTable.Ip != nil { - nestedRoutingTable.Ip = &RoutingTableIpXml{} - if _, ok := o.Misc["RoutingTableIp"]; ok { - nestedRoutingTable.Ip.Misc = o.Misc["RoutingTableIp"] - } - if o.RoutingTable.Ip.StaticRoute != nil { - nestedRoutingTable.Ip.StaticRoute = []RoutingTableIpStaticRouteXml{} - for _, oRoutingTableIpStaticRoute := range o.RoutingTable.Ip.StaticRoute { - nestedRoutingTableIpStaticRoute := RoutingTableIpStaticRouteXml{} - if _, ok := o.Misc["RoutingTableIpStaticRoute"]; ok { - nestedRoutingTableIpStaticRoute.Misc = o.Misc["RoutingTableIpStaticRoute"] - } - if oRoutingTableIpStaticRoute.Destination != nil { - nestedRoutingTableIpStaticRoute.Destination = oRoutingTableIpStaticRoute.Destination - } - if oRoutingTableIpStaticRoute.Interface != nil { - nestedRoutingTableIpStaticRoute.Interface = oRoutingTableIpStaticRoute.Interface - } - if oRoutingTableIpStaticRoute.AdminDist != nil { - nestedRoutingTableIpStaticRoute.AdminDist = oRoutingTableIpStaticRoute.AdminDist - } - if oRoutingTableIpStaticRoute.RouteTable != nil { - nestedRoutingTableIpStaticRoute.RouteTable = &RoutingTableIpStaticRouteRouteTableXml{} - if _, ok := o.Misc["RoutingTableIpStaticRouteRouteTable"]; ok { - nestedRoutingTableIpStaticRoute.RouteTable.Misc = o.Misc["RoutingTableIpStaticRouteRouteTable"] - } - if oRoutingTableIpStaticRoute.RouteTable.Unicast != nil { - nestedRoutingTableIpStaticRoute.RouteTable.Unicast = &RoutingTableIpStaticRouteRouteTableUnicastXml{} - if _, ok := o.Misc["RoutingTableIpStaticRouteRouteTableUnicast"]; ok { - nestedRoutingTableIpStaticRoute.RouteTable.Unicast.Misc = o.Misc["RoutingTableIpStaticRouteRouteTableUnicast"] - } - } - if oRoutingTableIpStaticRoute.RouteTable.Multicast != nil { - nestedRoutingTableIpStaticRoute.RouteTable.Multicast = &RoutingTableIpStaticRouteRouteTableMulticastXml{} - if _, ok := o.Misc["RoutingTableIpStaticRouteRouteTableMulticast"]; ok { - nestedRoutingTableIpStaticRoute.RouteTable.Multicast.Misc = o.Misc["RoutingTableIpStaticRouteRouteTableMulticast"] - } - } - if oRoutingTableIpStaticRoute.RouteTable.Both != nil { - nestedRoutingTableIpStaticRoute.RouteTable.Both = &RoutingTableIpStaticRouteRouteTableBothXml{} - if _, ok := o.Misc["RoutingTableIpStaticRouteRouteTableBoth"]; ok { - nestedRoutingTableIpStaticRoute.RouteTable.Both.Misc = o.Misc["RoutingTableIpStaticRouteRouteTableBoth"] - } - } - if oRoutingTableIpStaticRoute.RouteTable.NoInstall != nil { - nestedRoutingTableIpStaticRoute.RouteTable.NoInstall = &RoutingTableIpStaticRouteRouteTableNoInstallXml{} - if _, ok := o.Misc["RoutingTableIpStaticRouteRouteTableNoInstall"]; ok { - nestedRoutingTableIpStaticRoute.RouteTable.NoInstall.Misc = o.Misc["RoutingTableIpStaticRouteRouteTableNoInstall"] - } - } - } - if oRoutingTableIpStaticRoute.Bfd != nil { - nestedRoutingTableIpStaticRoute.Bfd = &RoutingTableIpStaticRouteBfdXml{} - if _, ok := o.Misc["RoutingTableIpStaticRouteBfd"]; ok { - nestedRoutingTableIpStaticRoute.Bfd.Misc = o.Misc["RoutingTableIpStaticRouteBfd"] - } - if oRoutingTableIpStaticRoute.Bfd.Profile != nil { - nestedRoutingTableIpStaticRoute.Bfd.Profile = oRoutingTableIpStaticRoute.Bfd.Profile - } - } - if oRoutingTableIpStaticRoute.Name != "" { - nestedRoutingTableIpStaticRoute.Name = oRoutingTableIpStaticRoute.Name - } - if oRoutingTableIpStaticRoute.Metric != nil { - nestedRoutingTableIpStaticRoute.Metric = oRoutingTableIpStaticRoute.Metric - } - if oRoutingTableIpStaticRoute.Nexthop != nil { - nestedRoutingTableIpStaticRoute.Nexthop = &RoutingTableIpStaticRouteNexthopXml{} - if _, ok := o.Misc["RoutingTableIpStaticRouteNexthop"]; ok { - nestedRoutingTableIpStaticRoute.Nexthop.Misc = o.Misc["RoutingTableIpStaticRouteNexthop"] - } - if oRoutingTableIpStaticRoute.Nexthop.Receive != nil { - nestedRoutingTableIpStaticRoute.Nexthop.Receive = &RoutingTableIpStaticRouteNexthopReceiveXml{} - if _, ok := o.Misc["RoutingTableIpStaticRouteNexthopReceive"]; ok { - nestedRoutingTableIpStaticRoute.Nexthop.Receive.Misc = o.Misc["RoutingTableIpStaticRouteNexthopReceive"] - } - } - if oRoutingTableIpStaticRoute.Nexthop.Discard != nil { - nestedRoutingTableIpStaticRoute.Nexthop.Discard = &RoutingTableIpStaticRouteNexthopDiscardXml{} - if _, ok := o.Misc["RoutingTableIpStaticRouteNexthopDiscard"]; ok { - nestedRoutingTableIpStaticRoute.Nexthop.Discard.Misc = o.Misc["RoutingTableIpStaticRouteNexthopDiscard"] - } - } - if oRoutingTableIpStaticRoute.Nexthop.IpAddress != nil { - nestedRoutingTableIpStaticRoute.Nexthop.IpAddress = oRoutingTableIpStaticRoute.Nexthop.IpAddress - } - if oRoutingTableIpStaticRoute.Nexthop.Fqdn != nil { - nestedRoutingTableIpStaticRoute.Nexthop.Fqdn = oRoutingTableIpStaticRoute.Nexthop.Fqdn - } - if oRoutingTableIpStaticRoute.Nexthop.NextVr != nil { - nestedRoutingTableIpStaticRoute.Nexthop.NextVr = oRoutingTableIpStaticRoute.Nexthop.NextVr - } - } - if oRoutingTableIpStaticRoute.PathMonitor != nil { - nestedRoutingTableIpStaticRoute.PathMonitor = &RoutingTableIpStaticRoutePathMonitorXml{} - if _, ok := o.Misc["RoutingTableIpStaticRoutePathMonitor"]; ok { - nestedRoutingTableIpStaticRoute.PathMonitor.Misc = o.Misc["RoutingTableIpStaticRoutePathMonitor"] - } - if oRoutingTableIpStaticRoute.PathMonitor.Enable != nil { - nestedRoutingTableIpStaticRoute.PathMonitor.Enable = util.YesNo(oRoutingTableIpStaticRoute.PathMonitor.Enable, nil) - } - if oRoutingTableIpStaticRoute.PathMonitor.FailureCondition != nil { - nestedRoutingTableIpStaticRoute.PathMonitor.FailureCondition = oRoutingTableIpStaticRoute.PathMonitor.FailureCondition - } - if oRoutingTableIpStaticRoute.PathMonitor.HoldTime != nil { - nestedRoutingTableIpStaticRoute.PathMonitor.HoldTime = oRoutingTableIpStaticRoute.PathMonitor.HoldTime - } - if oRoutingTableIpStaticRoute.PathMonitor.MonitorDestinations != nil { - nestedRoutingTableIpStaticRoute.PathMonitor.MonitorDestinations = []RoutingTableIpStaticRoutePathMonitorMonitorDestinationsXml{} - for _, oRoutingTableIpStaticRoutePathMonitorMonitorDestinations := range oRoutingTableIpStaticRoute.PathMonitor.MonitorDestinations { - nestedRoutingTableIpStaticRoutePathMonitorMonitorDestinations := RoutingTableIpStaticRoutePathMonitorMonitorDestinationsXml{} - if _, ok := o.Misc["RoutingTableIpStaticRoutePathMonitorMonitorDestinations"]; ok { - nestedRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Misc = o.Misc["RoutingTableIpStaticRoutePathMonitorMonitorDestinations"] - } - if oRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Count != nil { - nestedRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Count = oRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Count - } - if oRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Name != "" { - nestedRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Name = oRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Name - } - if oRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Enable != nil { - nestedRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Enable = util.YesNo(oRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Enable, nil) - } - if oRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Source != nil { - nestedRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Source = oRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Source - } - if oRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Destination != nil { - nestedRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Destination = oRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Destination - } - if oRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Interval != nil { - nestedRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Interval = oRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Interval - } - nestedRoutingTableIpStaticRoute.PathMonitor.MonitorDestinations = append(nestedRoutingTableIpStaticRoute.PathMonitor.MonitorDestinations, nestedRoutingTableIpStaticRoutePathMonitorMonitorDestinations) - } - } - } - nestedRoutingTable.Ip.StaticRoute = append(nestedRoutingTable.Ip.StaticRoute, nestedRoutingTableIpStaticRoute) - } - } - } - } - entry.RoutingTable = nestedRoutingTable - - entry.Misc = o.Misc["Entry"] - - return entry, nil -} - -func (c *entryXmlContainer) Normalize() ([]*Entry, error) { - entryList := make([]*Entry, 0, len(c.Answer)) - for _, o := range c.Answer { - entry := &Entry{ - Misc: make(map[string][]generic.Xml), - } - entry.Name = o.Name - var nestedAdminDists *AdminDists - if o.AdminDists != nil { - nestedAdminDists = &AdminDists{} - if o.AdminDists.Misc != nil { - entry.Misc["AdminDists"] = o.AdminDists.Misc - } - if o.AdminDists.StaticIpv6 != nil { - nestedAdminDists.StaticIpv6 = o.AdminDists.StaticIpv6 - } - if o.AdminDists.Ibgp != nil { - nestedAdminDists.Ibgp = o.AdminDists.Ibgp + } + entry.RoutingTable = nestedRoutingTable + + entry.Misc = o.Misc["Entry"] + + return entry, nil +} + +func (c *entryXmlContainer) Normalize() ([]*Entry, error) { + entryList := make([]*Entry, 0, len(c.Answer)) + for _, o := range c.Answer { + entry := &Entry{ + Misc: make(map[string][]generic.Xml), + } + entry.Name = o.Name + var nestedAdminDists *AdminDists + if o.AdminDists != nil { + nestedAdminDists = &AdminDists{} + if o.AdminDists.Misc != nil { + entry.Misc["AdminDists"] = o.AdminDists.Misc } if o.AdminDists.OspfExt != nil { nestedAdminDists.OspfExt = o.AdminDists.OspfExt } - if o.AdminDists.OspfInt != nil { - nestedAdminDists.OspfInt = o.AdminDists.OspfInt - } if o.AdminDists.Ospfv3Ext != nil { nestedAdminDists.Ospfv3Ext = o.AdminDists.Ospfv3Ext } + if o.AdminDists.Ospfv3Int != nil { + nestedAdminDists.Ospfv3Int = o.AdminDists.Ospfv3Int + } if o.AdminDists.Rip != nil { nestedAdminDists.Rip = o.AdminDists.Rip } if o.AdminDists.Ebgp != nil { nestedAdminDists.Ebgp = o.AdminDists.Ebgp } - if o.AdminDists.Ospfv3Int != nil { - nestedAdminDists.Ospfv3Int = o.AdminDists.Ospfv3Int + if o.AdminDists.Ibgp != nil { + nestedAdminDists.Ibgp = o.AdminDists.Ibgp + } + if o.AdminDists.OspfInt != nil { + nestedAdminDists.OspfInt = o.AdminDists.OspfInt } if o.AdminDists.Static != nil { nestedAdminDists.Static = o.AdminDists.Static } + if o.AdminDists.StaticIpv6 != nil { + nestedAdminDists.StaticIpv6 = o.AdminDists.StaticIpv6 + } } entry.AdminDists = nestedAdminDists @@ -6208,27 +6208,6 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Ecmp.Algorithm.Misc != nil { entry.Misc["EcmpAlgorithm"] = o.Ecmp.Algorithm.Misc } - if o.Ecmp.Algorithm.BalancedRoundRobin != nil { - nestedEcmp.Algorithm.BalancedRoundRobin = &EcmpAlgorithmBalancedRoundRobin{} - if o.Ecmp.Algorithm.BalancedRoundRobin.Misc != nil { - entry.Misc["EcmpAlgorithmBalancedRoundRobin"] = o.Ecmp.Algorithm.BalancedRoundRobin.Misc - } - } - if o.Ecmp.Algorithm.IpHash != nil { - nestedEcmp.Algorithm.IpHash = &EcmpAlgorithmIpHash{} - if o.Ecmp.Algorithm.IpHash.Misc != nil { - entry.Misc["EcmpAlgorithmIpHash"] = o.Ecmp.Algorithm.IpHash.Misc - } - if o.Ecmp.Algorithm.IpHash.UsePort != nil { - nestedEcmp.Algorithm.IpHash.UsePort = util.AsBool(o.Ecmp.Algorithm.IpHash.UsePort, nil) - } - if o.Ecmp.Algorithm.IpHash.HashSeed != nil { - nestedEcmp.Algorithm.IpHash.HashSeed = o.Ecmp.Algorithm.IpHash.HashSeed - } - if o.Ecmp.Algorithm.IpHash.SrcOnly != nil { - nestedEcmp.Algorithm.IpHash.SrcOnly = util.AsBool(o.Ecmp.Algorithm.IpHash.SrcOnly, nil) - } - } if o.Ecmp.Algorithm.IpModulo != nil { nestedEcmp.Algorithm.IpModulo = &EcmpAlgorithmIpModulo{} if o.Ecmp.Algorithm.IpModulo.Misc != nil { @@ -6257,6 +6236,27 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { } } } + if o.Ecmp.Algorithm.BalancedRoundRobin != nil { + nestedEcmp.Algorithm.BalancedRoundRobin = &EcmpAlgorithmBalancedRoundRobin{} + if o.Ecmp.Algorithm.BalancedRoundRobin.Misc != nil { + entry.Misc["EcmpAlgorithmBalancedRoundRobin"] = o.Ecmp.Algorithm.BalancedRoundRobin.Misc + } + } + if o.Ecmp.Algorithm.IpHash != nil { + nestedEcmp.Algorithm.IpHash = &EcmpAlgorithmIpHash{} + if o.Ecmp.Algorithm.IpHash.Misc != nil { + entry.Misc["EcmpAlgorithmIpHash"] = o.Ecmp.Algorithm.IpHash.Misc + } + if o.Ecmp.Algorithm.IpHash.HashSeed != nil { + nestedEcmp.Algorithm.IpHash.HashSeed = o.Ecmp.Algorithm.IpHash.HashSeed + } + if o.Ecmp.Algorithm.IpHash.SrcOnly != nil { + nestedEcmp.Algorithm.IpHash.SrcOnly = util.AsBool(o.Ecmp.Algorithm.IpHash.SrcOnly, nil) + } + if o.Ecmp.Algorithm.IpHash.UsePort != nil { + nestedEcmp.Algorithm.IpHash.UsePort = util.AsBool(o.Ecmp.Algorithm.IpHash.UsePort, nil) + } + } } if o.Ecmp.Enable != nil { nestedEcmp.Enable = util.AsBool(o.Ecmp.Enable, nil) @@ -6280,177 +6280,76 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Multicast.Misc != nil { entry.Misc["Multicast"] = o.Multicast.Misc } - if o.Multicast.Rp != nil { - nestedMulticast.Rp = &MulticastRp{} - if o.Multicast.Rp.Misc != nil { - entry.Misc["MulticastRp"] = o.Multicast.Rp.Misc - } - if o.Multicast.Rp.ExternalRp != nil { - nestedMulticast.Rp.ExternalRp = []MulticastRpExternalRp{} - for _, oMulticastRpExternalRp := range o.Multicast.Rp.ExternalRp { - nestedMulticastRpExternalRp := MulticastRpExternalRp{} - if oMulticastRpExternalRp.Misc != nil { - entry.Misc["MulticastRpExternalRp"] = oMulticastRpExternalRp.Misc - } - if oMulticastRpExternalRp.GroupAddresses != nil { - nestedMulticastRpExternalRp.GroupAddresses = util.MemToStr(oMulticastRpExternalRp.GroupAddresses) - } - if oMulticastRpExternalRp.Override != nil { - nestedMulticastRpExternalRp.Override = util.AsBool(oMulticastRpExternalRp.Override, nil) - } - if oMulticastRpExternalRp.Name != "" { - nestedMulticastRpExternalRp.Name = oMulticastRpExternalRp.Name - } - nestedMulticast.Rp.ExternalRp = append(nestedMulticast.Rp.ExternalRp, nestedMulticastRpExternalRp) + if o.Multicast.SsmAddressSpace != nil { + nestedMulticast.SsmAddressSpace = []MulticastSsmAddressSpace{} + for _, oMulticastSsmAddressSpace := range o.Multicast.SsmAddressSpace { + nestedMulticastSsmAddressSpace := MulticastSsmAddressSpace{} + if oMulticastSsmAddressSpace.Misc != nil { + entry.Misc["MulticastSsmAddressSpace"] = oMulticastSsmAddressSpace.Misc + } + if oMulticastSsmAddressSpace.GroupAddress != nil { + nestedMulticastSsmAddressSpace.GroupAddress = oMulticastSsmAddressSpace.GroupAddress + } + if oMulticastSsmAddressSpace.Included != nil { + nestedMulticastSsmAddressSpace.Included = util.AsBool(oMulticastSsmAddressSpace.Included, nil) } + if oMulticastSsmAddressSpace.Name != "" { + nestedMulticastSsmAddressSpace.Name = oMulticastSsmAddressSpace.Name + } + nestedMulticast.SsmAddressSpace = append(nestedMulticast.SsmAddressSpace, nestedMulticastSsmAddressSpace) } - if o.Multicast.Rp.LocalRp != nil { - nestedMulticast.Rp.LocalRp = &MulticastRpLocalRp{} - if o.Multicast.Rp.LocalRp.Misc != nil { - entry.Misc["MulticastRpLocalRp"] = o.Multicast.Rp.LocalRp.Misc + } + if o.Multicast.Enable != nil { + nestedMulticast.Enable = util.AsBool(o.Multicast.Enable, nil) + } + if o.Multicast.InterfaceGroup != nil { + nestedMulticast.InterfaceGroup = []MulticastInterfaceGroup{} + for _, oMulticastInterfaceGroup := range o.Multicast.InterfaceGroup { + nestedMulticastInterfaceGroup := MulticastInterfaceGroup{} + if oMulticastInterfaceGroup.Misc != nil { + entry.Misc["MulticastInterfaceGroup"] = oMulticastInterfaceGroup.Misc } - if o.Multicast.Rp.LocalRp.CandidateRp != nil { - nestedMulticast.Rp.LocalRp.CandidateRp = &MulticastRpLocalRpCandidateRp{} - if o.Multicast.Rp.LocalRp.CandidateRp.Misc != nil { - entry.Misc["MulticastRpLocalRpCandidateRp"] = o.Multicast.Rp.LocalRp.CandidateRp.Misc + if oMulticastInterfaceGroup.Igmp != nil { + nestedMulticastInterfaceGroup.Igmp = &MulticastInterfaceGroupIgmp{} + if oMulticastInterfaceGroup.Igmp.Misc != nil { + entry.Misc["MulticastInterfaceGroupIgmp"] = oMulticastInterfaceGroup.Igmp.Misc } - if o.Multicast.Rp.LocalRp.CandidateRp.AdvertisementInterval != nil { - nestedMulticast.Rp.LocalRp.CandidateRp.AdvertisementInterval = o.Multicast.Rp.LocalRp.CandidateRp.AdvertisementInterval + if oMulticastInterfaceGroup.Igmp.Enable != nil { + nestedMulticastInterfaceGroup.Igmp.Enable = util.AsBool(oMulticastInterfaceGroup.Igmp.Enable, nil) } - if o.Multicast.Rp.LocalRp.CandidateRp.GroupAddresses != nil { - nestedMulticast.Rp.LocalRp.CandidateRp.GroupAddresses = util.MemToStr(o.Multicast.Rp.LocalRp.CandidateRp.GroupAddresses) + if oMulticastInterfaceGroup.Igmp.QueryInterval != nil { + nestedMulticastInterfaceGroup.Igmp.QueryInterval = oMulticastInterfaceGroup.Igmp.QueryInterval } - if o.Multicast.Rp.LocalRp.CandidateRp.Interface != nil { - nestedMulticast.Rp.LocalRp.CandidateRp.Interface = o.Multicast.Rp.LocalRp.CandidateRp.Interface - } - if o.Multicast.Rp.LocalRp.CandidateRp.Priority != nil { - nestedMulticast.Rp.LocalRp.CandidateRp.Priority = o.Multicast.Rp.LocalRp.CandidateRp.Priority - } - if o.Multicast.Rp.LocalRp.CandidateRp.Address != nil { - nestedMulticast.Rp.LocalRp.CandidateRp.Address = o.Multicast.Rp.LocalRp.CandidateRp.Address - } - } - if o.Multicast.Rp.LocalRp.StaticRp != nil { - nestedMulticast.Rp.LocalRp.StaticRp = &MulticastRpLocalRpStaticRp{} - if o.Multicast.Rp.LocalRp.StaticRp.Misc != nil { - entry.Misc["MulticastRpLocalRpStaticRp"] = o.Multicast.Rp.LocalRp.StaticRp.Misc - } - if o.Multicast.Rp.LocalRp.StaticRp.Interface != nil { - nestedMulticast.Rp.LocalRp.StaticRp.Interface = o.Multicast.Rp.LocalRp.StaticRp.Interface - } - if o.Multicast.Rp.LocalRp.StaticRp.Override != nil { - nestedMulticast.Rp.LocalRp.StaticRp.Override = util.AsBool(o.Multicast.Rp.LocalRp.StaticRp.Override, nil) - } - if o.Multicast.Rp.LocalRp.StaticRp.Address != nil { - nestedMulticast.Rp.LocalRp.StaticRp.Address = o.Multicast.Rp.LocalRp.StaticRp.Address - } - if o.Multicast.Rp.LocalRp.StaticRp.GroupAddresses != nil { - nestedMulticast.Rp.LocalRp.StaticRp.GroupAddresses = util.MemToStr(o.Multicast.Rp.LocalRp.StaticRp.GroupAddresses) - } - } - } - } - if o.Multicast.SptThreshold != nil { - nestedMulticast.SptThreshold = []MulticastSptThreshold{} - for _, oMulticastSptThreshold := range o.Multicast.SptThreshold { - nestedMulticastSptThreshold := MulticastSptThreshold{} - if oMulticastSptThreshold.Misc != nil { - entry.Misc["MulticastSptThreshold"] = oMulticastSptThreshold.Misc - } - if oMulticastSptThreshold.Threshold != nil { - nestedMulticastSptThreshold.Threshold = oMulticastSptThreshold.Threshold - } - if oMulticastSptThreshold.Name != "" { - nestedMulticastSptThreshold.Name = oMulticastSptThreshold.Name - } - nestedMulticast.SptThreshold = append(nestedMulticast.SptThreshold, nestedMulticastSptThreshold) - } - } - if o.Multicast.SsmAddressSpace != nil { - nestedMulticast.SsmAddressSpace = []MulticastSsmAddressSpace{} - for _, oMulticastSsmAddressSpace := range o.Multicast.SsmAddressSpace { - nestedMulticastSsmAddressSpace := MulticastSsmAddressSpace{} - if oMulticastSsmAddressSpace.Misc != nil { - entry.Misc["MulticastSsmAddressSpace"] = oMulticastSsmAddressSpace.Misc - } - if oMulticastSsmAddressSpace.GroupAddress != nil { - nestedMulticastSsmAddressSpace.GroupAddress = oMulticastSsmAddressSpace.GroupAddress - } - if oMulticastSsmAddressSpace.Included != nil { - nestedMulticastSsmAddressSpace.Included = util.AsBool(oMulticastSsmAddressSpace.Included, nil) - } - if oMulticastSsmAddressSpace.Name != "" { - nestedMulticastSsmAddressSpace.Name = oMulticastSsmAddressSpace.Name - } - nestedMulticast.SsmAddressSpace = append(nestedMulticast.SsmAddressSpace, nestedMulticastSsmAddressSpace) - } - } - if o.Multicast.Enable != nil { - nestedMulticast.Enable = util.AsBool(o.Multicast.Enable, nil) - } - if o.Multicast.InterfaceGroup != nil { - nestedMulticast.InterfaceGroup = []MulticastInterfaceGroup{} - for _, oMulticastInterfaceGroup := range o.Multicast.InterfaceGroup { - nestedMulticastInterfaceGroup := MulticastInterfaceGroup{} - if oMulticastInterfaceGroup.Misc != nil { - entry.Misc["MulticastInterfaceGroup"] = oMulticastInterfaceGroup.Misc - } - if oMulticastInterfaceGroup.Igmp != nil { - nestedMulticastInterfaceGroup.Igmp = &MulticastInterfaceGroupIgmp{} - if oMulticastInterfaceGroup.Igmp.Misc != nil { - entry.Misc["MulticastInterfaceGroupIgmp"] = oMulticastInterfaceGroup.Igmp.Misc + if oMulticastInterfaceGroup.Igmp.LastMemberQueryInterval != nil { + nestedMulticastInterfaceGroup.Igmp.LastMemberQueryInterval = oMulticastInterfaceGroup.Igmp.LastMemberQueryInterval } if oMulticastInterfaceGroup.Igmp.ImmediateLeave != nil { nestedMulticastInterfaceGroup.Igmp.ImmediateLeave = util.AsBool(oMulticastInterfaceGroup.Igmp.ImmediateLeave, nil) } - if oMulticastInterfaceGroup.Igmp.MaxGroups != nil { - nestedMulticastInterfaceGroup.Igmp.MaxGroups = oMulticastInterfaceGroup.Igmp.MaxGroups + if oMulticastInterfaceGroup.Igmp.Robustness != nil { + nestedMulticastInterfaceGroup.Igmp.Robustness = oMulticastInterfaceGroup.Igmp.Robustness } if oMulticastInterfaceGroup.Igmp.MaxSources != nil { nestedMulticastInterfaceGroup.Igmp.MaxSources = oMulticastInterfaceGroup.Igmp.MaxSources } + if oMulticastInterfaceGroup.Igmp.Version != nil { + nestedMulticastInterfaceGroup.Igmp.Version = oMulticastInterfaceGroup.Igmp.Version + } if oMulticastInterfaceGroup.Igmp.MaxQueryResponseTime != nil { nestedMulticastInterfaceGroup.Igmp.MaxQueryResponseTime = oMulticastInterfaceGroup.Igmp.MaxQueryResponseTime } - if oMulticastInterfaceGroup.Igmp.QueryInterval != nil { - nestedMulticastInterfaceGroup.Igmp.QueryInterval = oMulticastInterfaceGroup.Igmp.QueryInterval - } - if oMulticastInterfaceGroup.Igmp.LastMemberQueryInterval != nil { - nestedMulticastInterfaceGroup.Igmp.LastMemberQueryInterval = oMulticastInterfaceGroup.Igmp.LastMemberQueryInterval - } - if oMulticastInterfaceGroup.Igmp.Robustness != nil { - nestedMulticastInterfaceGroup.Igmp.Robustness = oMulticastInterfaceGroup.Igmp.Robustness + if oMulticastInterfaceGroup.Igmp.MaxGroups != nil { + nestedMulticastInterfaceGroup.Igmp.MaxGroups = oMulticastInterfaceGroup.Igmp.MaxGroups } if oMulticastInterfaceGroup.Igmp.RouterAlertPolicing != nil { nestedMulticastInterfaceGroup.Igmp.RouterAlertPolicing = util.AsBool(oMulticastInterfaceGroup.Igmp.RouterAlertPolicing, nil) } - if oMulticastInterfaceGroup.Igmp.Enable != nil { - nestedMulticastInterfaceGroup.Igmp.Enable = util.AsBool(oMulticastInterfaceGroup.Igmp.Enable, nil) - } - if oMulticastInterfaceGroup.Igmp.Version != nil { - nestedMulticastInterfaceGroup.Igmp.Version = oMulticastInterfaceGroup.Igmp.Version - } } if oMulticastInterfaceGroup.Pim != nil { nestedMulticastInterfaceGroup.Pim = &MulticastInterfaceGroupPim{} if oMulticastInterfaceGroup.Pim.Misc != nil { entry.Misc["MulticastInterfaceGroupPim"] = oMulticastInterfaceGroup.Pim.Misc } - if oMulticastInterfaceGroup.Pim.Enable != nil { - nestedMulticastInterfaceGroup.Pim.Enable = util.AsBool(oMulticastInterfaceGroup.Pim.Enable, nil) - } - if oMulticastInterfaceGroup.Pim.AssertInterval != nil { - nestedMulticastInterfaceGroup.Pim.AssertInterval = oMulticastInterfaceGroup.Pim.AssertInterval - } - if oMulticastInterfaceGroup.Pim.HelloInterval != nil { - nestedMulticastInterfaceGroup.Pim.HelloInterval = oMulticastInterfaceGroup.Pim.HelloInterval - } - if oMulticastInterfaceGroup.Pim.JoinPruneInterval != nil { - nestedMulticastInterfaceGroup.Pim.JoinPruneInterval = oMulticastInterfaceGroup.Pim.JoinPruneInterval - } - if oMulticastInterfaceGroup.Pim.DrPriority != nil { - nestedMulticastInterfaceGroup.Pim.DrPriority = oMulticastInterfaceGroup.Pim.DrPriority - } if oMulticastInterfaceGroup.Pim.BsrBorder != nil { nestedMulticastInterfaceGroup.Pim.BsrBorder = util.AsBool(oMulticastInterfaceGroup.Pim.BsrBorder, nil) } @@ -6467,6 +6366,21 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { nestedMulticastInterfaceGroup.Pim.AllowedNeighbors = append(nestedMulticastInterfaceGroup.Pim.AllowedNeighbors, nestedMulticastInterfaceGroupPimAllowedNeighbors) } } + if oMulticastInterfaceGroup.Pim.Enable != nil { + nestedMulticastInterfaceGroup.Pim.Enable = util.AsBool(oMulticastInterfaceGroup.Pim.Enable, nil) + } + if oMulticastInterfaceGroup.Pim.AssertInterval != nil { + nestedMulticastInterfaceGroup.Pim.AssertInterval = oMulticastInterfaceGroup.Pim.AssertInterval + } + if oMulticastInterfaceGroup.Pim.HelloInterval != nil { + nestedMulticastInterfaceGroup.Pim.HelloInterval = oMulticastInterfaceGroup.Pim.HelloInterval + } + if oMulticastInterfaceGroup.Pim.JoinPruneInterval != nil { + nestedMulticastInterfaceGroup.Pim.JoinPruneInterval = oMulticastInterfaceGroup.Pim.JoinPruneInterval + } + if oMulticastInterfaceGroup.Pim.DrPriority != nil { + nestedMulticastInterfaceGroup.Pim.DrPriority = oMulticastInterfaceGroup.Pim.DrPriority + } } if oMulticastInterfaceGroup.Name != "" { nestedMulticastInterfaceGroup.Name = oMulticastInterfaceGroup.Name @@ -6489,15 +6403,15 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oMulticastInterfaceGroupGroupPermissionAnySourceMulticast.Misc != nil { entry.Misc["MulticastInterfaceGroupGroupPermissionAnySourceMulticast"] = oMulticastInterfaceGroupGroupPermissionAnySourceMulticast.Misc } + if oMulticastInterfaceGroupGroupPermissionAnySourceMulticast.Name != "" { + nestedMulticastInterfaceGroupGroupPermissionAnySourceMulticast.Name = oMulticastInterfaceGroupGroupPermissionAnySourceMulticast.Name + } if oMulticastInterfaceGroupGroupPermissionAnySourceMulticast.GroupAddress != nil { nestedMulticastInterfaceGroupGroupPermissionAnySourceMulticast.GroupAddress = oMulticastInterfaceGroupGroupPermissionAnySourceMulticast.GroupAddress } if oMulticastInterfaceGroupGroupPermissionAnySourceMulticast.Included != nil { nestedMulticastInterfaceGroupGroupPermissionAnySourceMulticast.Included = util.AsBool(oMulticastInterfaceGroupGroupPermissionAnySourceMulticast.Included, nil) } - if oMulticastInterfaceGroupGroupPermissionAnySourceMulticast.Name != "" { - nestedMulticastInterfaceGroupGroupPermissionAnySourceMulticast.Name = oMulticastInterfaceGroupGroupPermissionAnySourceMulticast.Name - } nestedMulticastInterfaceGroup.GroupPermission.AnySourceMulticast = append(nestedMulticastInterfaceGroup.GroupPermission.AnySourceMulticast, nestedMulticastInterfaceGroupGroupPermissionAnySourceMulticast) } } @@ -6508,9 +6422,6 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oMulticastInterfaceGroupGroupPermissionSourceSpecificMulticast.Misc != nil { entry.Misc["MulticastInterfaceGroupGroupPermissionSourceSpecificMulticast"] = oMulticastInterfaceGroupGroupPermissionSourceSpecificMulticast.Misc } - if oMulticastInterfaceGroupGroupPermissionSourceSpecificMulticast.GroupAddress != nil { - nestedMulticastInterfaceGroupGroupPermissionSourceSpecificMulticast.GroupAddress = oMulticastInterfaceGroupGroupPermissionSourceSpecificMulticast.GroupAddress - } if oMulticastInterfaceGroupGroupPermissionSourceSpecificMulticast.SourceAddress != nil { nestedMulticastInterfaceGroupGroupPermissionSourceSpecificMulticast.SourceAddress = oMulticastInterfaceGroupGroupPermissionSourceSpecificMulticast.SourceAddress } @@ -6520,6 +6431,9 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oMulticastInterfaceGroupGroupPermissionSourceSpecificMulticast.Name != "" { nestedMulticastInterfaceGroupGroupPermissionSourceSpecificMulticast.Name = oMulticastInterfaceGroupGroupPermissionSourceSpecificMulticast.Name } + if oMulticastInterfaceGroupGroupPermissionSourceSpecificMulticast.GroupAddress != nil { + nestedMulticastInterfaceGroupGroupPermissionSourceSpecificMulticast.GroupAddress = oMulticastInterfaceGroupGroupPermissionSourceSpecificMulticast.GroupAddress + } nestedMulticastInterfaceGroup.GroupPermission.SourceSpecificMulticast = append(nestedMulticastInterfaceGroup.GroupPermission.SourceSpecificMulticast, nestedMulticastInterfaceGroupGroupPermissionSourceSpecificMulticast) } } @@ -6530,524 +6444,101 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Multicast.RouteAgeoutTime != nil { nestedMulticast.RouteAgeoutTime = o.Multicast.RouteAgeoutTime } - } - entry.Multicast = nestedMulticast - - var nestedProtocol *Protocol - if o.Protocol != nil { - nestedProtocol = &Protocol{} - if o.Protocol.Misc != nil { - entry.Misc["Protocol"] = o.Protocol.Misc - } - if o.Protocol.Ospfv3 != nil { - nestedProtocol.Ospfv3 = &ProtocolOspfv3{} - if o.Protocol.Ospfv3.Misc != nil { - entry.Misc["ProtocolOspfv3"] = o.Protocol.Ospfv3.Misc - } - if o.Protocol.Ospfv3.RouterId != nil { - nestedProtocol.Ospfv3.RouterId = o.Protocol.Ospfv3.RouterId + if o.Multicast.Rp != nil { + nestedMulticast.Rp = &MulticastRp{} + if o.Multicast.Rp.Misc != nil { + entry.Misc["MulticastRp"] = o.Multicast.Rp.Misc } - if o.Protocol.Ospfv3.Timers != nil { - nestedProtocol.Ospfv3.Timers = &ProtocolOspfv3Timers{} - if o.Protocol.Ospfv3.Timers.Misc != nil { - entry.Misc["ProtocolOspfv3Timers"] = o.Protocol.Ospfv3.Timers.Misc + if o.Multicast.Rp.ExternalRp != nil { + nestedMulticast.Rp.ExternalRp = []MulticastRpExternalRp{} + for _, oMulticastRpExternalRp := range o.Multicast.Rp.ExternalRp { + nestedMulticastRpExternalRp := MulticastRpExternalRp{} + if oMulticastRpExternalRp.Misc != nil { + entry.Misc["MulticastRpExternalRp"] = oMulticastRpExternalRp.Misc + } + if oMulticastRpExternalRp.GroupAddresses != nil { + nestedMulticastRpExternalRp.GroupAddresses = util.MemToStr(oMulticastRpExternalRp.GroupAddresses) + } + if oMulticastRpExternalRp.Override != nil { + nestedMulticastRpExternalRp.Override = util.AsBool(oMulticastRpExternalRp.Override, nil) + } + if oMulticastRpExternalRp.Name != "" { + nestedMulticastRpExternalRp.Name = oMulticastRpExternalRp.Name + } + nestedMulticast.Rp.ExternalRp = append(nestedMulticast.Rp.ExternalRp, nestedMulticastRpExternalRp) } - if o.Protocol.Ospfv3.Timers.LsaInterval != nil { - nestedProtocol.Ospfv3.Timers.LsaInterval = o.Protocol.Ospfv3.Timers.LsaInterval + } + if o.Multicast.Rp.LocalRp != nil { + nestedMulticast.Rp.LocalRp = &MulticastRpLocalRp{} + if o.Multicast.Rp.LocalRp.Misc != nil { + entry.Misc["MulticastRpLocalRp"] = o.Multicast.Rp.LocalRp.Misc } - if o.Protocol.Ospfv3.Timers.SpfCalculationDelay != nil { - nestedProtocol.Ospfv3.Timers.SpfCalculationDelay = o.Protocol.Ospfv3.Timers.SpfCalculationDelay + if o.Multicast.Rp.LocalRp.CandidateRp != nil { + nestedMulticast.Rp.LocalRp.CandidateRp = &MulticastRpLocalRpCandidateRp{} + if o.Multicast.Rp.LocalRp.CandidateRp.Misc != nil { + entry.Misc["MulticastRpLocalRpCandidateRp"] = o.Multicast.Rp.LocalRp.CandidateRp.Misc + } + if o.Multicast.Rp.LocalRp.CandidateRp.GroupAddresses != nil { + nestedMulticast.Rp.LocalRp.CandidateRp.GroupAddresses = util.MemToStr(o.Multicast.Rp.LocalRp.CandidateRp.GroupAddresses) + } + if o.Multicast.Rp.LocalRp.CandidateRp.Interface != nil { + nestedMulticast.Rp.LocalRp.CandidateRp.Interface = o.Multicast.Rp.LocalRp.CandidateRp.Interface + } + if o.Multicast.Rp.LocalRp.CandidateRp.Priority != nil { + nestedMulticast.Rp.LocalRp.CandidateRp.Priority = o.Multicast.Rp.LocalRp.CandidateRp.Priority + } + if o.Multicast.Rp.LocalRp.CandidateRp.Address != nil { + nestedMulticast.Rp.LocalRp.CandidateRp.Address = o.Multicast.Rp.LocalRp.CandidateRp.Address + } + if o.Multicast.Rp.LocalRp.CandidateRp.AdvertisementInterval != nil { + nestedMulticast.Rp.LocalRp.CandidateRp.AdvertisementInterval = o.Multicast.Rp.LocalRp.CandidateRp.AdvertisementInterval + } } - } - if o.Protocol.Ospfv3.AllowRedistDefaultRoute != nil { - nestedProtocol.Ospfv3.AllowRedistDefaultRoute = util.AsBool(o.Protocol.Ospfv3.AllowRedistDefaultRoute, nil) - } - if o.Protocol.Ospfv3.Enable != nil { - nestedProtocol.Ospfv3.Enable = util.AsBool(o.Protocol.Ospfv3.Enable, nil) - } - if o.Protocol.Ospfv3.DisableTransitTraffic != nil { - nestedProtocol.Ospfv3.DisableTransitTraffic = util.AsBool(o.Protocol.Ospfv3.DisableTransitTraffic, nil) - } - if o.Protocol.Ospfv3.ExportRules != nil { - nestedProtocol.Ospfv3.ExportRules = []ProtocolOspfv3ExportRules{} - for _, oProtocolOspfv3ExportRules := range o.Protocol.Ospfv3.ExportRules { - nestedProtocolOspfv3ExportRules := ProtocolOspfv3ExportRules{} - if oProtocolOspfv3ExportRules.Misc != nil { - entry.Misc["ProtocolOspfv3ExportRules"] = oProtocolOspfv3ExportRules.Misc + if o.Multicast.Rp.LocalRp.StaticRp != nil { + nestedMulticast.Rp.LocalRp.StaticRp = &MulticastRpLocalRpStaticRp{} + if o.Multicast.Rp.LocalRp.StaticRp.Misc != nil { + entry.Misc["MulticastRpLocalRpStaticRp"] = o.Multicast.Rp.LocalRp.StaticRp.Misc } - if oProtocolOspfv3ExportRules.Metric != nil { - nestedProtocolOspfv3ExportRules.Metric = oProtocolOspfv3ExportRules.Metric + if o.Multicast.Rp.LocalRp.StaticRp.Address != nil { + nestedMulticast.Rp.LocalRp.StaticRp.Address = o.Multicast.Rp.LocalRp.StaticRp.Address } - if oProtocolOspfv3ExportRules.Name != "" { - nestedProtocolOspfv3ExportRules.Name = oProtocolOspfv3ExportRules.Name + if o.Multicast.Rp.LocalRp.StaticRp.GroupAddresses != nil { + nestedMulticast.Rp.LocalRp.StaticRp.GroupAddresses = util.MemToStr(o.Multicast.Rp.LocalRp.StaticRp.GroupAddresses) } - if oProtocolOspfv3ExportRules.NewPathType != nil { - nestedProtocolOspfv3ExportRules.NewPathType = oProtocolOspfv3ExportRules.NewPathType + if o.Multicast.Rp.LocalRp.StaticRp.Interface != nil { + nestedMulticast.Rp.LocalRp.StaticRp.Interface = o.Multicast.Rp.LocalRp.StaticRp.Interface } - if oProtocolOspfv3ExportRules.NewTag != nil { - nestedProtocolOspfv3ExportRules.NewTag = oProtocolOspfv3ExportRules.NewTag + if o.Multicast.Rp.LocalRp.StaticRp.Override != nil { + nestedMulticast.Rp.LocalRp.StaticRp.Override = util.AsBool(o.Multicast.Rp.LocalRp.StaticRp.Override, nil) } - nestedProtocol.Ospfv3.ExportRules = append(nestedProtocol.Ospfv3.ExportRules, nestedProtocolOspfv3ExportRules) } } - if o.Protocol.Ospfv3.GlobalBfd != nil { - nestedProtocol.Ospfv3.GlobalBfd = &ProtocolOspfv3GlobalBfd{} - if o.Protocol.Ospfv3.GlobalBfd.Misc != nil { - entry.Misc["ProtocolOspfv3GlobalBfd"] = o.Protocol.Ospfv3.GlobalBfd.Misc - } - if o.Protocol.Ospfv3.GlobalBfd.Profile != nil { - nestedProtocol.Ospfv3.GlobalBfd.Profile = o.Protocol.Ospfv3.GlobalBfd.Profile - } - } - if o.Protocol.Ospfv3.GracefulRestart != nil { - nestedProtocol.Ospfv3.GracefulRestart = &ProtocolOspfv3GracefulRestart{} - if o.Protocol.Ospfv3.GracefulRestart.Misc != nil { - entry.Misc["ProtocolOspfv3GracefulRestart"] = o.Protocol.Ospfv3.GracefulRestart.Misc - } - if o.Protocol.Ospfv3.GracefulRestart.Enable != nil { - nestedProtocol.Ospfv3.GracefulRestart.Enable = util.AsBool(o.Protocol.Ospfv3.GracefulRestart.Enable, nil) - } - if o.Protocol.Ospfv3.GracefulRestart.GracePeriod != nil { - nestedProtocol.Ospfv3.GracefulRestart.GracePeriod = o.Protocol.Ospfv3.GracefulRestart.GracePeriod - } - if o.Protocol.Ospfv3.GracefulRestart.HelperEnable != nil { - nestedProtocol.Ospfv3.GracefulRestart.HelperEnable = util.AsBool(o.Protocol.Ospfv3.GracefulRestart.HelperEnable, nil) - } - if o.Protocol.Ospfv3.GracefulRestart.MaxNeighborRestartTime != nil { - nestedProtocol.Ospfv3.GracefulRestart.MaxNeighborRestartTime = o.Protocol.Ospfv3.GracefulRestart.MaxNeighborRestartTime - } - if o.Protocol.Ospfv3.GracefulRestart.StrictLSAChecking != nil { - nestedProtocol.Ospfv3.GracefulRestart.StrictLSAChecking = util.AsBool(o.Protocol.Ospfv3.GracefulRestart.StrictLSAChecking, nil) - } - } - if o.Protocol.Ospfv3.RejectDefaultRoute != nil { - nestedProtocol.Ospfv3.RejectDefaultRoute = util.AsBool(o.Protocol.Ospfv3.RejectDefaultRoute, nil) - } - if o.Protocol.Ospfv3.Area != nil { - nestedProtocol.Ospfv3.Area = []ProtocolOspfv3Area{} - for _, oProtocolOspfv3Area := range o.Protocol.Ospfv3.Area { - nestedProtocolOspfv3Area := ProtocolOspfv3Area{} - if oProtocolOspfv3Area.Misc != nil { - entry.Misc["ProtocolOspfv3Area"] = oProtocolOspfv3Area.Misc - } - if oProtocolOspfv3Area.Name != "" { - nestedProtocolOspfv3Area.Name = oProtocolOspfv3Area.Name - } - if oProtocolOspfv3Area.Authentication != nil { - nestedProtocolOspfv3Area.Authentication = oProtocolOspfv3Area.Authentication - } - if oProtocolOspfv3Area.Type != nil { - nestedProtocolOspfv3Area.Type = &ProtocolOspfv3AreaType{} - if oProtocolOspfv3Area.Type.Misc != nil { - entry.Misc["ProtocolOspfv3AreaType"] = oProtocolOspfv3Area.Type.Misc - } - if oProtocolOspfv3Area.Type.Stub != nil { - nestedProtocolOspfv3Area.Type.Stub = &ProtocolOspfv3AreaTypeStub{} - if oProtocolOspfv3Area.Type.Stub.Misc != nil { - entry.Misc["ProtocolOspfv3AreaTypeStub"] = oProtocolOspfv3Area.Type.Stub.Misc - } - if oProtocolOspfv3Area.Type.Stub.AcceptSummary != nil { - nestedProtocolOspfv3Area.Type.Stub.AcceptSummary = util.AsBool(oProtocolOspfv3Area.Type.Stub.AcceptSummary, nil) - } - if oProtocolOspfv3Area.Type.Stub.DefaultRoute != nil { - nestedProtocolOspfv3Area.Type.Stub.DefaultRoute = &ProtocolOspfv3AreaTypeStubDefaultRoute{} - if oProtocolOspfv3Area.Type.Stub.DefaultRoute.Misc != nil { - entry.Misc["ProtocolOspfv3AreaTypeStubDefaultRoute"] = oProtocolOspfv3Area.Type.Stub.DefaultRoute.Misc - } - if oProtocolOspfv3Area.Type.Stub.DefaultRoute.Disable != nil { - nestedProtocolOspfv3Area.Type.Stub.DefaultRoute.Disable = &ProtocolOspfv3AreaTypeStubDefaultRouteDisable{} - if oProtocolOspfv3Area.Type.Stub.DefaultRoute.Disable.Misc != nil { - entry.Misc["ProtocolOspfv3AreaTypeStubDefaultRouteDisable"] = oProtocolOspfv3Area.Type.Stub.DefaultRoute.Disable.Misc - } - } - if oProtocolOspfv3Area.Type.Stub.DefaultRoute.Advertise != nil { - nestedProtocolOspfv3Area.Type.Stub.DefaultRoute.Advertise = &ProtocolOspfv3AreaTypeStubDefaultRouteAdvertise{} - if oProtocolOspfv3Area.Type.Stub.DefaultRoute.Advertise.Misc != nil { - entry.Misc["ProtocolOspfv3AreaTypeStubDefaultRouteAdvertise"] = oProtocolOspfv3Area.Type.Stub.DefaultRoute.Advertise.Misc - } - if oProtocolOspfv3Area.Type.Stub.DefaultRoute.Advertise.Metric != nil { - nestedProtocolOspfv3Area.Type.Stub.DefaultRoute.Advertise.Metric = oProtocolOspfv3Area.Type.Stub.DefaultRoute.Advertise.Metric - } - } - } - } - if oProtocolOspfv3Area.Type.Nssa != nil { - nestedProtocolOspfv3Area.Type.Nssa = &ProtocolOspfv3AreaTypeNssa{} - if oProtocolOspfv3Area.Type.Nssa.Misc != nil { - entry.Misc["ProtocolOspfv3AreaTypeNssa"] = oProtocolOspfv3Area.Type.Nssa.Misc - } - if oProtocolOspfv3Area.Type.Nssa.AcceptSummary != nil { - nestedProtocolOspfv3Area.Type.Nssa.AcceptSummary = util.AsBool(oProtocolOspfv3Area.Type.Nssa.AcceptSummary, nil) - } - if oProtocolOspfv3Area.Type.Nssa.DefaultRoute != nil { - nestedProtocolOspfv3Area.Type.Nssa.DefaultRoute = &ProtocolOspfv3AreaTypeNssaDefaultRoute{} - if oProtocolOspfv3Area.Type.Nssa.DefaultRoute.Misc != nil { - entry.Misc["ProtocolOspfv3AreaTypeNssaDefaultRoute"] = oProtocolOspfv3Area.Type.Nssa.DefaultRoute.Misc - } - if oProtocolOspfv3Area.Type.Nssa.DefaultRoute.Disable != nil { - nestedProtocolOspfv3Area.Type.Nssa.DefaultRoute.Disable = &ProtocolOspfv3AreaTypeNssaDefaultRouteDisable{} - if oProtocolOspfv3Area.Type.Nssa.DefaultRoute.Disable.Misc != nil { - entry.Misc["ProtocolOspfv3AreaTypeNssaDefaultRouteDisable"] = oProtocolOspfv3Area.Type.Nssa.DefaultRoute.Disable.Misc - } - } - if oProtocolOspfv3Area.Type.Nssa.DefaultRoute.Advertise != nil { - nestedProtocolOspfv3Area.Type.Nssa.DefaultRoute.Advertise = &ProtocolOspfv3AreaTypeNssaDefaultRouteAdvertise{} - if oProtocolOspfv3Area.Type.Nssa.DefaultRoute.Advertise.Misc != nil { - entry.Misc["ProtocolOspfv3AreaTypeNssaDefaultRouteAdvertise"] = oProtocolOspfv3Area.Type.Nssa.DefaultRoute.Advertise.Misc - } - if oProtocolOspfv3Area.Type.Nssa.DefaultRoute.Advertise.Metric != nil { - nestedProtocolOspfv3Area.Type.Nssa.DefaultRoute.Advertise.Metric = oProtocolOspfv3Area.Type.Nssa.DefaultRoute.Advertise.Metric - } - if oProtocolOspfv3Area.Type.Nssa.DefaultRoute.Advertise.Type != nil { - nestedProtocolOspfv3Area.Type.Nssa.DefaultRoute.Advertise.Type = oProtocolOspfv3Area.Type.Nssa.DefaultRoute.Advertise.Type - } - } - } - if oProtocolOspfv3Area.Type.Nssa.NssaExtRange != nil { - nestedProtocolOspfv3Area.Type.Nssa.NssaExtRange = []ProtocolOspfv3AreaTypeNssaNssaExtRange{} - for _, oProtocolOspfv3AreaTypeNssaNssaExtRange := range oProtocolOspfv3Area.Type.Nssa.NssaExtRange { - nestedProtocolOspfv3AreaTypeNssaNssaExtRange := ProtocolOspfv3AreaTypeNssaNssaExtRange{} - if oProtocolOspfv3AreaTypeNssaNssaExtRange.Misc != nil { - entry.Misc["ProtocolOspfv3AreaTypeNssaNssaExtRange"] = oProtocolOspfv3AreaTypeNssaNssaExtRange.Misc - } - if oProtocolOspfv3AreaTypeNssaNssaExtRange.Name != "" { - nestedProtocolOspfv3AreaTypeNssaNssaExtRange.Name = oProtocolOspfv3AreaTypeNssaNssaExtRange.Name - } - if oProtocolOspfv3AreaTypeNssaNssaExtRange.Advertise != nil { - nestedProtocolOspfv3AreaTypeNssaNssaExtRange.Advertise = &ProtocolOspfv3AreaTypeNssaNssaExtRangeAdvertise{} - if oProtocolOspfv3AreaTypeNssaNssaExtRange.Advertise.Misc != nil { - entry.Misc["ProtocolOspfv3AreaTypeNssaNssaExtRangeAdvertise"] = oProtocolOspfv3AreaTypeNssaNssaExtRange.Advertise.Misc - } - } - if oProtocolOspfv3AreaTypeNssaNssaExtRange.Suppress != nil { - nestedProtocolOspfv3AreaTypeNssaNssaExtRange.Suppress = &ProtocolOspfv3AreaTypeNssaNssaExtRangeSuppress{} - if oProtocolOspfv3AreaTypeNssaNssaExtRange.Suppress.Misc != nil { - entry.Misc["ProtocolOspfv3AreaTypeNssaNssaExtRangeSuppress"] = oProtocolOspfv3AreaTypeNssaNssaExtRange.Suppress.Misc - } - } - nestedProtocolOspfv3Area.Type.Nssa.NssaExtRange = append(nestedProtocolOspfv3Area.Type.Nssa.NssaExtRange, nestedProtocolOspfv3AreaTypeNssaNssaExtRange) - } - } - } - if oProtocolOspfv3Area.Type.Normal != nil { - nestedProtocolOspfv3Area.Type.Normal = &ProtocolOspfv3AreaTypeNormal{} - if oProtocolOspfv3Area.Type.Normal.Misc != nil { - entry.Misc["ProtocolOspfv3AreaTypeNormal"] = oProtocolOspfv3Area.Type.Normal.Misc - } - } - } - if oProtocolOspfv3Area.Range != nil { - nestedProtocolOspfv3Area.Range = []ProtocolOspfv3AreaRange{} - for _, oProtocolOspfv3AreaRange := range oProtocolOspfv3Area.Range { - nestedProtocolOspfv3AreaRange := ProtocolOspfv3AreaRange{} - if oProtocolOspfv3AreaRange.Misc != nil { - entry.Misc["ProtocolOspfv3AreaRange"] = oProtocolOspfv3AreaRange.Misc - } - if oProtocolOspfv3AreaRange.Name != "" { - nestedProtocolOspfv3AreaRange.Name = oProtocolOspfv3AreaRange.Name - } - if oProtocolOspfv3AreaRange.Advertise != nil { - nestedProtocolOspfv3AreaRange.Advertise = &ProtocolOspfv3AreaRangeAdvertise{} - if oProtocolOspfv3AreaRange.Advertise.Misc != nil { - entry.Misc["ProtocolOspfv3AreaRangeAdvertise"] = oProtocolOspfv3AreaRange.Advertise.Misc - } - } - if oProtocolOspfv3AreaRange.Suppress != nil { - nestedProtocolOspfv3AreaRange.Suppress = &ProtocolOspfv3AreaRangeSuppress{} - if oProtocolOspfv3AreaRange.Suppress.Misc != nil { - entry.Misc["ProtocolOspfv3AreaRangeSuppress"] = oProtocolOspfv3AreaRange.Suppress.Misc - } - } - nestedProtocolOspfv3Area.Range = append(nestedProtocolOspfv3Area.Range, nestedProtocolOspfv3AreaRange) - } - } - if oProtocolOspfv3Area.Interface != nil { - nestedProtocolOspfv3Area.Interface = []ProtocolOspfv3AreaInterface{} - for _, oProtocolOspfv3AreaInterface := range oProtocolOspfv3Area.Interface { - nestedProtocolOspfv3AreaInterface := ProtocolOspfv3AreaInterface{} - if oProtocolOspfv3AreaInterface.Misc != nil { - entry.Misc["ProtocolOspfv3AreaInterface"] = oProtocolOspfv3AreaInterface.Misc - } - if oProtocolOspfv3AreaInterface.Passive != nil { - nestedProtocolOspfv3AreaInterface.Passive = util.AsBool(oProtocolOspfv3AreaInterface.Passive, nil) - } - if oProtocolOspfv3AreaInterface.Priority != nil { - nestedProtocolOspfv3AreaInterface.Priority = oProtocolOspfv3AreaInterface.Priority - } - if oProtocolOspfv3AreaInterface.DeadCounts != nil { - nestedProtocolOspfv3AreaInterface.DeadCounts = oProtocolOspfv3AreaInterface.DeadCounts - } - if oProtocolOspfv3AreaInterface.GrDelay != nil { - nestedProtocolOspfv3AreaInterface.GrDelay = oProtocolOspfv3AreaInterface.GrDelay - } - if oProtocolOspfv3AreaInterface.LinkType != nil { - nestedProtocolOspfv3AreaInterface.LinkType = &ProtocolOspfv3AreaInterfaceLinkType{} - if oProtocolOspfv3AreaInterface.LinkType.Misc != nil { - entry.Misc["ProtocolOspfv3AreaInterfaceLinkType"] = oProtocolOspfv3AreaInterface.LinkType.Misc - } - if oProtocolOspfv3AreaInterface.LinkType.P2mp != nil { - nestedProtocolOspfv3AreaInterface.LinkType.P2mp = &ProtocolOspfv3AreaInterfaceLinkTypeP2mp{} - if oProtocolOspfv3AreaInterface.LinkType.P2mp.Misc != nil { - entry.Misc["ProtocolOspfv3AreaInterfaceLinkTypeP2mp"] = oProtocolOspfv3AreaInterface.LinkType.P2mp.Misc - } - } - if oProtocolOspfv3AreaInterface.LinkType.Broadcast != nil { - nestedProtocolOspfv3AreaInterface.LinkType.Broadcast = &ProtocolOspfv3AreaInterfaceLinkTypeBroadcast{} - if oProtocolOspfv3AreaInterface.LinkType.Broadcast.Misc != nil { - entry.Misc["ProtocolOspfv3AreaInterfaceLinkTypeBroadcast"] = oProtocolOspfv3AreaInterface.LinkType.Broadcast.Misc - } - } - if oProtocolOspfv3AreaInterface.LinkType.P2p != nil { - nestedProtocolOspfv3AreaInterface.LinkType.P2p = &ProtocolOspfv3AreaInterfaceLinkTypeP2p{} - if oProtocolOspfv3AreaInterface.LinkType.P2p.Misc != nil { - entry.Misc["ProtocolOspfv3AreaInterfaceLinkTypeP2p"] = oProtocolOspfv3AreaInterface.LinkType.P2p.Misc - } - } - } - if oProtocolOspfv3AreaInterface.Neighbor != nil { - nestedProtocolOspfv3AreaInterface.Neighbor = []ProtocolOspfv3AreaInterfaceNeighbor{} - for _, oProtocolOspfv3AreaInterfaceNeighbor := range oProtocolOspfv3AreaInterface.Neighbor { - nestedProtocolOspfv3AreaInterfaceNeighbor := ProtocolOspfv3AreaInterfaceNeighbor{} - if oProtocolOspfv3AreaInterfaceNeighbor.Misc != nil { - entry.Misc["ProtocolOspfv3AreaInterfaceNeighbor"] = oProtocolOspfv3AreaInterfaceNeighbor.Misc - } - if oProtocolOspfv3AreaInterfaceNeighbor.Name != "" { - nestedProtocolOspfv3AreaInterfaceNeighbor.Name = oProtocolOspfv3AreaInterfaceNeighbor.Name - } - nestedProtocolOspfv3AreaInterface.Neighbor = append(nestedProtocolOspfv3AreaInterface.Neighbor, nestedProtocolOspfv3AreaInterfaceNeighbor) - } - } - if oProtocolOspfv3AreaInterface.InstanceId != nil { - nestedProtocolOspfv3AreaInterface.InstanceId = oProtocolOspfv3AreaInterface.InstanceId - } - if oProtocolOspfv3AreaInterface.Metric != nil { - nestedProtocolOspfv3AreaInterface.Metric = oProtocolOspfv3AreaInterface.Metric - } - if oProtocolOspfv3AreaInterface.HelloInterval != nil { - nestedProtocolOspfv3AreaInterface.HelloInterval = oProtocolOspfv3AreaInterface.HelloInterval - } - if oProtocolOspfv3AreaInterface.Authentication != nil { - nestedProtocolOspfv3AreaInterface.Authentication = oProtocolOspfv3AreaInterface.Authentication - } - if oProtocolOspfv3AreaInterface.Bfd != nil { - nestedProtocolOspfv3AreaInterface.Bfd = &ProtocolOspfv3AreaInterfaceBfd{} - if oProtocolOspfv3AreaInterface.Bfd.Misc != nil { - entry.Misc["ProtocolOspfv3AreaInterfaceBfd"] = oProtocolOspfv3AreaInterface.Bfd.Misc - } - if oProtocolOspfv3AreaInterface.Bfd.Profile != nil { - nestedProtocolOspfv3AreaInterface.Bfd.Profile = oProtocolOspfv3AreaInterface.Bfd.Profile - } - } - if oProtocolOspfv3AreaInterface.TransitDelay != nil { - nestedProtocolOspfv3AreaInterface.TransitDelay = oProtocolOspfv3AreaInterface.TransitDelay - } - if oProtocolOspfv3AreaInterface.Enable != nil { - nestedProtocolOspfv3AreaInterface.Enable = util.AsBool(oProtocolOspfv3AreaInterface.Enable, nil) - } - if oProtocolOspfv3AreaInterface.RetransmitInterval != nil { - nestedProtocolOspfv3AreaInterface.RetransmitInterval = oProtocolOspfv3AreaInterface.RetransmitInterval - } - if oProtocolOspfv3AreaInterface.Name != "" { - nestedProtocolOspfv3AreaInterface.Name = oProtocolOspfv3AreaInterface.Name - } - nestedProtocolOspfv3Area.Interface = append(nestedProtocolOspfv3Area.Interface, nestedProtocolOspfv3AreaInterface) - } - } - if oProtocolOspfv3Area.VirtualLink != nil { - nestedProtocolOspfv3Area.VirtualLink = []ProtocolOspfv3AreaVirtualLink{} - for _, oProtocolOspfv3AreaVirtualLink := range oProtocolOspfv3Area.VirtualLink { - nestedProtocolOspfv3AreaVirtualLink := ProtocolOspfv3AreaVirtualLink{} - if oProtocolOspfv3AreaVirtualLink.Misc != nil { - entry.Misc["ProtocolOspfv3AreaVirtualLink"] = oProtocolOspfv3AreaVirtualLink.Misc - } - if oProtocolOspfv3AreaVirtualLink.DeadCounts != nil { - nestedProtocolOspfv3AreaVirtualLink.DeadCounts = oProtocolOspfv3AreaVirtualLink.DeadCounts - } - if oProtocolOspfv3AreaVirtualLink.RetransmitInterval != nil { - nestedProtocolOspfv3AreaVirtualLink.RetransmitInterval = oProtocolOspfv3AreaVirtualLink.RetransmitInterval - } - if oProtocolOspfv3AreaVirtualLink.Authentication != nil { - nestedProtocolOspfv3AreaVirtualLink.Authentication = oProtocolOspfv3AreaVirtualLink.Authentication - } - if oProtocolOspfv3AreaVirtualLink.Bfd != nil { - nestedProtocolOspfv3AreaVirtualLink.Bfd = &ProtocolOspfv3AreaVirtualLinkBfd{} - if oProtocolOspfv3AreaVirtualLink.Bfd.Misc != nil { - entry.Misc["ProtocolOspfv3AreaVirtualLinkBfd"] = oProtocolOspfv3AreaVirtualLink.Bfd.Misc - } - if oProtocolOspfv3AreaVirtualLink.Bfd.Profile != nil { - nestedProtocolOspfv3AreaVirtualLink.Bfd.Profile = oProtocolOspfv3AreaVirtualLink.Bfd.Profile - } - } - if oProtocolOspfv3AreaVirtualLink.Name != "" { - nestedProtocolOspfv3AreaVirtualLink.Name = oProtocolOspfv3AreaVirtualLink.Name - } - if oProtocolOspfv3AreaVirtualLink.NeighborId != nil { - nestedProtocolOspfv3AreaVirtualLink.NeighborId = oProtocolOspfv3AreaVirtualLink.NeighborId - } - if oProtocolOspfv3AreaVirtualLink.InstanceId != nil { - nestedProtocolOspfv3AreaVirtualLink.InstanceId = oProtocolOspfv3AreaVirtualLink.InstanceId - } - if oProtocolOspfv3AreaVirtualLink.HelloInterval != nil { - nestedProtocolOspfv3AreaVirtualLink.HelloInterval = oProtocolOspfv3AreaVirtualLink.HelloInterval - } - if oProtocolOspfv3AreaVirtualLink.TransitAreaId != nil { - nestedProtocolOspfv3AreaVirtualLink.TransitAreaId = oProtocolOspfv3AreaVirtualLink.TransitAreaId - } - if oProtocolOspfv3AreaVirtualLink.Enable != nil { - nestedProtocolOspfv3AreaVirtualLink.Enable = util.AsBool(oProtocolOspfv3AreaVirtualLink.Enable, nil) - } - if oProtocolOspfv3AreaVirtualLink.TransitDelay != nil { - nestedProtocolOspfv3AreaVirtualLink.TransitDelay = oProtocolOspfv3AreaVirtualLink.TransitDelay - } - nestedProtocolOspfv3Area.VirtualLink = append(nestedProtocolOspfv3Area.VirtualLink, nestedProtocolOspfv3AreaVirtualLink) - } - } - nestedProtocol.Ospfv3.Area = append(nestedProtocol.Ospfv3.Area, nestedProtocolOspfv3Area) + } + if o.Multicast.SptThreshold != nil { + nestedMulticast.SptThreshold = []MulticastSptThreshold{} + for _, oMulticastSptThreshold := range o.Multicast.SptThreshold { + nestedMulticastSptThreshold := MulticastSptThreshold{} + if oMulticastSptThreshold.Misc != nil { + entry.Misc["MulticastSptThreshold"] = oMulticastSptThreshold.Misc } - } - if o.Protocol.Ospfv3.AuthProfile != nil { - nestedProtocol.Ospfv3.AuthProfile = []ProtocolOspfv3AuthProfile{} - for _, oProtocolOspfv3AuthProfile := range o.Protocol.Ospfv3.AuthProfile { - nestedProtocolOspfv3AuthProfile := ProtocolOspfv3AuthProfile{} - if oProtocolOspfv3AuthProfile.Misc != nil { - entry.Misc["ProtocolOspfv3AuthProfile"] = oProtocolOspfv3AuthProfile.Misc - } - if oProtocolOspfv3AuthProfile.Spi != nil { - nestedProtocolOspfv3AuthProfile.Spi = oProtocolOspfv3AuthProfile.Spi - } - if oProtocolOspfv3AuthProfile.Name != "" { - nestedProtocolOspfv3AuthProfile.Name = oProtocolOspfv3AuthProfile.Name - } - if oProtocolOspfv3AuthProfile.Esp != nil { - nestedProtocolOspfv3AuthProfile.Esp = &ProtocolOspfv3AuthProfileEsp{} - if oProtocolOspfv3AuthProfile.Esp.Misc != nil { - entry.Misc["ProtocolOspfv3AuthProfileEsp"] = oProtocolOspfv3AuthProfile.Esp.Misc - } - if oProtocolOspfv3AuthProfile.Esp.Authentication != nil { - nestedProtocolOspfv3AuthProfile.Esp.Authentication = &ProtocolOspfv3AuthProfileEspAuthentication{} - if oProtocolOspfv3AuthProfile.Esp.Authentication.Misc != nil { - entry.Misc["ProtocolOspfv3AuthProfileEspAuthentication"] = oProtocolOspfv3AuthProfile.Esp.Authentication.Misc - } - if oProtocolOspfv3AuthProfile.Esp.Authentication.Sha384 != nil { - nestedProtocolOspfv3AuthProfile.Esp.Authentication.Sha384 = &ProtocolOspfv3AuthProfileEspAuthenticationSha384{} - if oProtocolOspfv3AuthProfile.Esp.Authentication.Sha384.Misc != nil { - entry.Misc["ProtocolOspfv3AuthProfileEspAuthenticationSha384"] = oProtocolOspfv3AuthProfile.Esp.Authentication.Sha384.Misc - } - if oProtocolOspfv3AuthProfile.Esp.Authentication.Sha384.Key != nil { - nestedProtocolOspfv3AuthProfile.Esp.Authentication.Sha384.Key = oProtocolOspfv3AuthProfile.Esp.Authentication.Sha384.Key - } - } - if oProtocolOspfv3AuthProfile.Esp.Authentication.Sha512 != nil { - nestedProtocolOspfv3AuthProfile.Esp.Authentication.Sha512 = &ProtocolOspfv3AuthProfileEspAuthenticationSha512{} - if oProtocolOspfv3AuthProfile.Esp.Authentication.Sha512.Misc != nil { - entry.Misc["ProtocolOspfv3AuthProfileEspAuthenticationSha512"] = oProtocolOspfv3AuthProfile.Esp.Authentication.Sha512.Misc - } - if oProtocolOspfv3AuthProfile.Esp.Authentication.Sha512.Key != nil { - nestedProtocolOspfv3AuthProfile.Esp.Authentication.Sha512.Key = oProtocolOspfv3AuthProfile.Esp.Authentication.Sha512.Key - } - } - if oProtocolOspfv3AuthProfile.Esp.Authentication.None != nil { - nestedProtocolOspfv3AuthProfile.Esp.Authentication.None = &ProtocolOspfv3AuthProfileEspAuthenticationNone{} - if oProtocolOspfv3AuthProfile.Esp.Authentication.None.Misc != nil { - entry.Misc["ProtocolOspfv3AuthProfileEspAuthenticationNone"] = oProtocolOspfv3AuthProfile.Esp.Authentication.None.Misc - } - } - if oProtocolOspfv3AuthProfile.Esp.Authentication.Md5 != nil { - nestedProtocolOspfv3AuthProfile.Esp.Authentication.Md5 = &ProtocolOspfv3AuthProfileEspAuthenticationMd5{} - if oProtocolOspfv3AuthProfile.Esp.Authentication.Md5.Misc != nil { - entry.Misc["ProtocolOspfv3AuthProfileEspAuthenticationMd5"] = oProtocolOspfv3AuthProfile.Esp.Authentication.Md5.Misc - } - if oProtocolOspfv3AuthProfile.Esp.Authentication.Md5.Key != nil { - nestedProtocolOspfv3AuthProfile.Esp.Authentication.Md5.Key = oProtocolOspfv3AuthProfile.Esp.Authentication.Md5.Key - } - } - if oProtocolOspfv3AuthProfile.Esp.Authentication.Sha1 != nil { - nestedProtocolOspfv3AuthProfile.Esp.Authentication.Sha1 = &ProtocolOspfv3AuthProfileEspAuthenticationSha1{} - if oProtocolOspfv3AuthProfile.Esp.Authentication.Sha1.Misc != nil { - entry.Misc["ProtocolOspfv3AuthProfileEspAuthenticationSha1"] = oProtocolOspfv3AuthProfile.Esp.Authentication.Sha1.Misc - } - if oProtocolOspfv3AuthProfile.Esp.Authentication.Sha1.Key != nil { - nestedProtocolOspfv3AuthProfile.Esp.Authentication.Sha1.Key = oProtocolOspfv3AuthProfile.Esp.Authentication.Sha1.Key - } - } - if oProtocolOspfv3AuthProfile.Esp.Authentication.Sha256 != nil { - nestedProtocolOspfv3AuthProfile.Esp.Authentication.Sha256 = &ProtocolOspfv3AuthProfileEspAuthenticationSha256{} - if oProtocolOspfv3AuthProfile.Esp.Authentication.Sha256.Misc != nil { - entry.Misc["ProtocolOspfv3AuthProfileEspAuthenticationSha256"] = oProtocolOspfv3AuthProfile.Esp.Authentication.Sha256.Misc - } - if oProtocolOspfv3AuthProfile.Esp.Authentication.Sha256.Key != nil { - nestedProtocolOspfv3AuthProfile.Esp.Authentication.Sha256.Key = oProtocolOspfv3AuthProfile.Esp.Authentication.Sha256.Key - } - } - } - if oProtocolOspfv3AuthProfile.Esp.Encryption != nil { - nestedProtocolOspfv3AuthProfile.Esp.Encryption = &ProtocolOspfv3AuthProfileEspEncryption{} - if oProtocolOspfv3AuthProfile.Esp.Encryption.Misc != nil { - entry.Misc["ProtocolOspfv3AuthProfileEspEncryption"] = oProtocolOspfv3AuthProfile.Esp.Encryption.Misc - } - if oProtocolOspfv3AuthProfile.Esp.Encryption.Algorithm != nil { - nestedProtocolOspfv3AuthProfile.Esp.Encryption.Algorithm = oProtocolOspfv3AuthProfile.Esp.Encryption.Algorithm - } - if oProtocolOspfv3AuthProfile.Esp.Encryption.Key != nil { - nestedProtocolOspfv3AuthProfile.Esp.Encryption.Key = oProtocolOspfv3AuthProfile.Esp.Encryption.Key - } - } - } - if oProtocolOspfv3AuthProfile.Ah != nil { - nestedProtocolOspfv3AuthProfile.Ah = &ProtocolOspfv3AuthProfileAh{} - if oProtocolOspfv3AuthProfile.Ah.Misc != nil { - entry.Misc["ProtocolOspfv3AuthProfileAh"] = oProtocolOspfv3AuthProfile.Ah.Misc - } - if oProtocolOspfv3AuthProfile.Ah.Md5 != nil { - nestedProtocolOspfv3AuthProfile.Ah.Md5 = &ProtocolOspfv3AuthProfileAhMd5{} - if oProtocolOspfv3AuthProfile.Ah.Md5.Misc != nil { - entry.Misc["ProtocolOspfv3AuthProfileAhMd5"] = oProtocolOspfv3AuthProfile.Ah.Md5.Misc - } - if oProtocolOspfv3AuthProfile.Ah.Md5.Key != nil { - nestedProtocolOspfv3AuthProfile.Ah.Md5.Key = oProtocolOspfv3AuthProfile.Ah.Md5.Key - } - } - if oProtocolOspfv3AuthProfile.Ah.Sha1 != nil { - nestedProtocolOspfv3AuthProfile.Ah.Sha1 = &ProtocolOspfv3AuthProfileAhSha1{} - if oProtocolOspfv3AuthProfile.Ah.Sha1.Misc != nil { - entry.Misc["ProtocolOspfv3AuthProfileAhSha1"] = oProtocolOspfv3AuthProfile.Ah.Sha1.Misc - } - if oProtocolOspfv3AuthProfile.Ah.Sha1.Key != nil { - nestedProtocolOspfv3AuthProfile.Ah.Sha1.Key = oProtocolOspfv3AuthProfile.Ah.Sha1.Key - } - } - if oProtocolOspfv3AuthProfile.Ah.Sha256 != nil { - nestedProtocolOspfv3AuthProfile.Ah.Sha256 = &ProtocolOspfv3AuthProfileAhSha256{} - if oProtocolOspfv3AuthProfile.Ah.Sha256.Misc != nil { - entry.Misc["ProtocolOspfv3AuthProfileAhSha256"] = oProtocolOspfv3AuthProfile.Ah.Sha256.Misc - } - if oProtocolOspfv3AuthProfile.Ah.Sha256.Key != nil { - nestedProtocolOspfv3AuthProfile.Ah.Sha256.Key = oProtocolOspfv3AuthProfile.Ah.Sha256.Key - } - } - if oProtocolOspfv3AuthProfile.Ah.Sha384 != nil { - nestedProtocolOspfv3AuthProfile.Ah.Sha384 = &ProtocolOspfv3AuthProfileAhSha384{} - if oProtocolOspfv3AuthProfile.Ah.Sha384.Misc != nil { - entry.Misc["ProtocolOspfv3AuthProfileAhSha384"] = oProtocolOspfv3AuthProfile.Ah.Sha384.Misc - } - if oProtocolOspfv3AuthProfile.Ah.Sha384.Key != nil { - nestedProtocolOspfv3AuthProfile.Ah.Sha384.Key = oProtocolOspfv3AuthProfile.Ah.Sha384.Key - } - } - if oProtocolOspfv3AuthProfile.Ah.Sha512 != nil { - nestedProtocolOspfv3AuthProfile.Ah.Sha512 = &ProtocolOspfv3AuthProfileAhSha512{} - if oProtocolOspfv3AuthProfile.Ah.Sha512.Misc != nil { - entry.Misc["ProtocolOspfv3AuthProfileAhSha512"] = oProtocolOspfv3AuthProfile.Ah.Sha512.Misc - } - if oProtocolOspfv3AuthProfile.Ah.Sha512.Key != nil { - nestedProtocolOspfv3AuthProfile.Ah.Sha512.Key = oProtocolOspfv3AuthProfile.Ah.Sha512.Key - } - } - } - nestedProtocol.Ospfv3.AuthProfile = append(nestedProtocol.Ospfv3.AuthProfile, nestedProtocolOspfv3AuthProfile) + if oMulticastSptThreshold.Threshold != nil { + nestedMulticastSptThreshold.Threshold = oMulticastSptThreshold.Threshold } + if oMulticastSptThreshold.Name != "" { + nestedMulticastSptThreshold.Name = oMulticastSptThreshold.Name + } + nestedMulticast.SptThreshold = append(nestedMulticast.SptThreshold, nestedMulticastSptThreshold) } } + } + entry.Multicast = nestedMulticast + + var nestedProtocol *Protocol + if o.Protocol != nil { + nestedProtocol = &Protocol{} + if o.Protocol.Misc != nil { + entry.Misc["Protocol"] = o.Protocol.Misc + } if o.Protocol.RedistProfile != nil { nestedProtocol.RedistProfile = []ProtocolRedistProfile{} for _, oProtocolRedistProfile := range o.Protocol.RedistProfile { @@ -7055,9 +6546,6 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oProtocolRedistProfile.Misc != nil { entry.Misc["ProtocolRedistProfile"] = oProtocolRedistProfile.Misc } - if oProtocolRedistProfile.Priority != nil { - nestedProtocolRedistProfile.Priority = oProtocolRedistProfile.Priority - } if oProtocolRedistProfile.Filter != nil { nestedProtocolRedistProfile.Filter = &ProtocolRedistProfileFilter{} if oProtocolRedistProfile.Filter.Misc != nil { @@ -7080,15 +6568,15 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oProtocolRedistProfile.Filter.Ospf.Misc != nil { entry.Misc["ProtocolRedistProfileFilterOspf"] = oProtocolRedistProfile.Filter.Ospf.Misc } + if oProtocolRedistProfile.Filter.Ospf.Tag != nil { + nestedProtocolRedistProfile.Filter.Ospf.Tag = util.MemToStr(oProtocolRedistProfile.Filter.Ospf.Tag) + } if oProtocolRedistProfile.Filter.Ospf.PathType != nil { nestedProtocolRedistProfile.Filter.Ospf.PathType = util.MemToStr(oProtocolRedistProfile.Filter.Ospf.PathType) } if oProtocolRedistProfile.Filter.Ospf.Area != nil { nestedProtocolRedistProfile.Filter.Ospf.Area = util.MemToStr(oProtocolRedistProfile.Filter.Ospf.Area) } - if oProtocolRedistProfile.Filter.Ospf.Tag != nil { - nestedProtocolRedistProfile.Filter.Ospf.Tag = util.MemToStr(oProtocolRedistProfile.Filter.Ospf.Tag) - } } if oProtocolRedistProfile.Filter.Bgp != nil { nestedProtocolRedistProfile.Filter.Bgp = &ProtocolRedistProfileFilterBgp{} @@ -7108,22 +6596,25 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oProtocolRedistProfile.Action.Misc != nil { entry.Misc["ProtocolRedistProfileAction"] = oProtocolRedistProfile.Action.Misc } - if oProtocolRedistProfile.Action.NoRedist != nil { - nestedProtocolRedistProfile.Action.NoRedist = &ProtocolRedistProfileActionNoRedist{} - if oProtocolRedistProfile.Action.NoRedist.Misc != nil { - entry.Misc["ProtocolRedistProfileActionNoRedist"] = oProtocolRedistProfile.Action.NoRedist.Misc - } - } if oProtocolRedistProfile.Action.Redist != nil { nestedProtocolRedistProfile.Action.Redist = &ProtocolRedistProfileActionRedist{} if oProtocolRedistProfile.Action.Redist.Misc != nil { entry.Misc["ProtocolRedistProfileActionRedist"] = oProtocolRedistProfile.Action.Redist.Misc } } + if oProtocolRedistProfile.Action.NoRedist != nil { + nestedProtocolRedistProfile.Action.NoRedist = &ProtocolRedistProfileActionNoRedist{} + if oProtocolRedistProfile.Action.NoRedist.Misc != nil { + entry.Misc["ProtocolRedistProfileActionNoRedist"] = oProtocolRedistProfile.Action.NoRedist.Misc + } + } } if oProtocolRedistProfile.Name != "" { nestedProtocolRedistProfile.Name = oProtocolRedistProfile.Name } + if oProtocolRedistProfile.Priority != nil { + nestedProtocolRedistProfile.Priority = oProtocolRedistProfile.Priority + } nestedProtocol.RedistProfile = append(nestedProtocol.RedistProfile, nestedProtocolRedistProfile) } } @@ -7134,32 +6625,14 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oProtocolRedistProfileIpv6.Misc != nil { entry.Misc["ProtocolRedistProfileIpv6"] = oProtocolRedistProfileIpv6.Misc } + if oProtocolRedistProfileIpv6.Priority != nil { + nestedProtocolRedistProfileIpv6.Priority = oProtocolRedistProfileIpv6.Priority + } if oProtocolRedistProfileIpv6.Filter != nil { nestedProtocolRedistProfileIpv6.Filter = &ProtocolRedistProfileIpv6Filter{} if oProtocolRedistProfileIpv6.Filter.Misc != nil { entry.Misc["ProtocolRedistProfileIpv6Filter"] = oProtocolRedistProfileIpv6.Filter.Misc } - if oProtocolRedistProfileIpv6.Filter.Bgp != nil { - nestedProtocolRedistProfileIpv6.Filter.Bgp = &ProtocolRedistProfileIpv6FilterBgp{} - if oProtocolRedistProfileIpv6.Filter.Bgp.Misc != nil { - entry.Misc["ProtocolRedistProfileIpv6FilterBgp"] = oProtocolRedistProfileIpv6.Filter.Bgp.Misc - } - if oProtocolRedistProfileIpv6.Filter.Bgp.Community != nil { - nestedProtocolRedistProfileIpv6.Filter.Bgp.Community = util.MemToStr(oProtocolRedistProfileIpv6.Filter.Bgp.Community) - } - if oProtocolRedistProfileIpv6.Filter.Bgp.ExtendedCommunity != nil { - nestedProtocolRedistProfileIpv6.Filter.Bgp.ExtendedCommunity = util.MemToStr(oProtocolRedistProfileIpv6.Filter.Bgp.ExtendedCommunity) - } - } - if oProtocolRedistProfileIpv6.Filter.Type != nil { - nestedProtocolRedistProfileIpv6.Filter.Type = util.MemToStr(oProtocolRedistProfileIpv6.Filter.Type) - } - if oProtocolRedistProfileIpv6.Filter.Interface != nil { - nestedProtocolRedistProfileIpv6.Filter.Interface = util.MemToStr(oProtocolRedistProfileIpv6.Filter.Interface) - } - if oProtocolRedistProfileIpv6.Filter.Destination != nil { - nestedProtocolRedistProfileIpv6.Filter.Destination = util.MemToStr(oProtocolRedistProfileIpv6.Filter.Destination) - } if oProtocolRedistProfileIpv6.Filter.Nexthop != nil { nestedProtocolRedistProfileIpv6.Filter.Nexthop = util.MemToStr(oProtocolRedistProfileIpv6.Filter.Nexthop) } @@ -7168,15 +6641,36 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oProtocolRedistProfileIpv6.Filter.Ospfv3.Misc != nil { entry.Misc["ProtocolRedistProfileIpv6FilterOspfv3"] = oProtocolRedistProfileIpv6.Filter.Ospfv3.Misc } - if oProtocolRedistProfileIpv6.Filter.Ospfv3.Tag != nil { - nestedProtocolRedistProfileIpv6.Filter.Ospfv3.Tag = util.MemToStr(oProtocolRedistProfileIpv6.Filter.Ospfv3.Tag) - } if oProtocolRedistProfileIpv6.Filter.Ospfv3.PathType != nil { nestedProtocolRedistProfileIpv6.Filter.Ospfv3.PathType = util.MemToStr(oProtocolRedistProfileIpv6.Filter.Ospfv3.PathType) } if oProtocolRedistProfileIpv6.Filter.Ospfv3.Area != nil { nestedProtocolRedistProfileIpv6.Filter.Ospfv3.Area = util.MemToStr(oProtocolRedistProfileIpv6.Filter.Ospfv3.Area) } + if oProtocolRedistProfileIpv6.Filter.Ospfv3.Tag != nil { + nestedProtocolRedistProfileIpv6.Filter.Ospfv3.Tag = util.MemToStr(oProtocolRedistProfileIpv6.Filter.Ospfv3.Tag) + } + } + if oProtocolRedistProfileIpv6.Filter.Bgp != nil { + nestedProtocolRedistProfileIpv6.Filter.Bgp = &ProtocolRedistProfileIpv6FilterBgp{} + if oProtocolRedistProfileIpv6.Filter.Bgp.Misc != nil { + entry.Misc["ProtocolRedistProfileIpv6FilterBgp"] = oProtocolRedistProfileIpv6.Filter.Bgp.Misc + } + if oProtocolRedistProfileIpv6.Filter.Bgp.ExtendedCommunity != nil { + nestedProtocolRedistProfileIpv6.Filter.Bgp.ExtendedCommunity = util.MemToStr(oProtocolRedistProfileIpv6.Filter.Bgp.ExtendedCommunity) + } + if oProtocolRedistProfileIpv6.Filter.Bgp.Community != nil { + nestedProtocolRedistProfileIpv6.Filter.Bgp.Community = util.MemToStr(oProtocolRedistProfileIpv6.Filter.Bgp.Community) + } + } + if oProtocolRedistProfileIpv6.Filter.Type != nil { + nestedProtocolRedistProfileIpv6.Filter.Type = util.MemToStr(oProtocolRedistProfileIpv6.Filter.Type) + } + if oProtocolRedistProfileIpv6.Filter.Interface != nil { + nestedProtocolRedistProfileIpv6.Filter.Interface = util.MemToStr(oProtocolRedistProfileIpv6.Filter.Interface) + } + if oProtocolRedistProfileIpv6.Filter.Destination != nil { + nestedProtocolRedistProfileIpv6.Filter.Destination = util.MemToStr(oProtocolRedistProfileIpv6.Filter.Destination) } } if oProtocolRedistProfileIpv6.Action != nil { @@ -7200,9 +6694,6 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oProtocolRedistProfileIpv6.Name != "" { nestedProtocolRedistProfileIpv6.Name = oProtocolRedistProfileIpv6.Name } - if oProtocolRedistProfileIpv6.Priority != nil { - nestedProtocolRedistProfileIpv6.Priority = oProtocolRedistProfileIpv6.Priority - } nestedProtocol.RedistProfileIpv6 = append(nestedProtocol.RedistProfileIpv6, nestedProtocolRedistProfileIpv6) } } @@ -7211,9 +6702,6 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Protocol.Rip.Misc != nil { entry.Misc["ProtocolRip"] = o.Protocol.Rip.Misc } - if o.Protocol.Rip.Enable != nil { - nestedProtocol.Rip.Enable = util.AsBool(o.Protocol.Rip.Enable, nil) - } if o.Protocol.Rip.ExportRules != nil { nestedProtocol.Rip.ExportRules = []ProtocolRipExportRules{} for _, oProtocolRipExportRules := range o.Protocol.Rip.ExportRules { @@ -7299,18 +6787,18 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Protocol.Rip.Timers.Misc != nil { entry.Misc["ProtocolRipTimers"] = o.Protocol.Rip.Timers.Misc } - if o.Protocol.Rip.Timers.DeleteIntervals != nil { - nestedProtocol.Rip.Timers.DeleteIntervals = o.Protocol.Rip.Timers.DeleteIntervals - } - if o.Protocol.Rip.Timers.ExpireIntervals != nil { - nestedProtocol.Rip.Timers.ExpireIntervals = o.Protocol.Rip.Timers.ExpireIntervals - } if o.Protocol.Rip.Timers.IntervalSeconds != nil { nestedProtocol.Rip.Timers.IntervalSeconds = o.Protocol.Rip.Timers.IntervalSeconds } if o.Protocol.Rip.Timers.UpdateIntervals != nil { nestedProtocol.Rip.Timers.UpdateIntervals = o.Protocol.Rip.Timers.UpdateIntervals } + if o.Protocol.Rip.Timers.DeleteIntervals != nil { + nestedProtocol.Rip.Timers.DeleteIntervals = o.Protocol.Rip.Timers.DeleteIntervals + } + if o.Protocol.Rip.Timers.ExpireIntervals != nil { + nestedProtocol.Rip.Timers.ExpireIntervals = o.Protocol.Rip.Timers.ExpireIntervals + } } if o.Protocol.Rip.AllowRedistDefaultRoute != nil { nestedProtocol.Rip.AllowRedistDefaultRoute = util.AsBool(o.Protocol.Rip.AllowRedistDefaultRoute, nil) @@ -7325,6 +6813,9 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oProtocolRipAuthProfile.Name != "" { nestedProtocolRipAuthProfile.Name = oProtocolRipAuthProfile.Name } + if oProtocolRipAuthProfile.Password != nil { + nestedProtocolRipAuthProfile.Password = oProtocolRipAuthProfile.Password + } if oProtocolRipAuthProfile.Md5 != nil { nestedProtocolRipAuthProfile.Md5 = []ProtocolRipAuthProfileMd5{} for _, oProtocolRipAuthProfileMd5 := range oProtocolRipAuthProfile.Md5 { @@ -7332,33 +6823,30 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oProtocolRipAuthProfileMd5.Misc != nil { entry.Misc["ProtocolRipAuthProfileMd5"] = oProtocolRipAuthProfileMd5.Misc } - if oProtocolRipAuthProfileMd5.Key != nil { - nestedProtocolRipAuthProfileMd5.Key = oProtocolRipAuthProfileMd5.Key - } if oProtocolRipAuthProfileMd5.Preferred != nil { nestedProtocolRipAuthProfileMd5.Preferred = util.AsBool(oProtocolRipAuthProfileMd5.Preferred, nil) } if oProtocolRipAuthProfileMd5.Name != "" { nestedProtocolRipAuthProfileMd5.Name = oProtocolRipAuthProfileMd5.Name } + if oProtocolRipAuthProfileMd5.Key != nil { + nestedProtocolRipAuthProfileMd5.Key = oProtocolRipAuthProfileMd5.Key + } nestedProtocolRipAuthProfile.Md5 = append(nestedProtocolRipAuthProfile.Md5, nestedProtocolRipAuthProfileMd5) } } - if oProtocolRipAuthProfile.Password != nil { - nestedProtocolRipAuthProfile.Password = oProtocolRipAuthProfile.Password - } nestedProtocol.Rip.AuthProfile = append(nestedProtocol.Rip.AuthProfile, nestedProtocolRipAuthProfile) } } + if o.Protocol.Rip.Enable != nil { + nestedProtocol.Rip.Enable = util.AsBool(o.Protocol.Rip.Enable, nil) + } } if o.Protocol.Bgp != nil { nestedProtocol.Bgp = &ProtocolBgp{} if o.Protocol.Bgp.Misc != nil { entry.Misc["ProtocolBgp"] = o.Protocol.Bgp.Misc } - if o.Protocol.Bgp.EnforceFirstAs != nil { - nestedProtocol.Bgp.EnforceFirstAs = util.AsBool(o.Protocol.Bgp.EnforceFirstAs, nil) - } if o.Protocol.Bgp.PeerGroup != nil { nestedProtocol.Bgp.PeerGroup = []ProtocolBgpPeerGroup{} for _, oProtocolBgpPeerGroup := range o.Protocol.Bgp.PeerGroup { @@ -7366,6 +6854,12 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oProtocolBgpPeerGroup.Misc != nil { entry.Misc["ProtocolBgpPeerGroup"] = oProtocolBgpPeerGroup.Misc } + if oProtocolBgpPeerGroup.Enable != nil { + nestedProtocolBgpPeerGroup.Enable = util.AsBool(oProtocolBgpPeerGroup.Enable, nil) + } + if oProtocolBgpPeerGroup.AggregatedConfedAsPath != nil { + nestedProtocolBgpPeerGroup.AggregatedConfedAsPath = util.AsBool(oProtocolBgpPeerGroup.AggregatedConfedAsPath, nil) + } if oProtocolBgpPeerGroup.SoftResetWithStoredInfo != nil { nestedProtocolBgpPeerGroup.SoftResetWithStoredInfo = util.AsBool(oProtocolBgpPeerGroup.SoftResetWithStoredInfo, nil) } @@ -7374,29 +6868,20 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oProtocolBgpPeerGroup.Type.Misc != nil { entry.Misc["ProtocolBgpPeerGroupType"] = oProtocolBgpPeerGroup.Type.Misc } - if oProtocolBgpPeerGroup.Type.IbgpConfed != nil { - nestedProtocolBgpPeerGroup.Type.IbgpConfed = &ProtocolBgpPeerGroupTypeIbgpConfed{} - if oProtocolBgpPeerGroup.Type.IbgpConfed.Misc != nil { - entry.Misc["ProtocolBgpPeerGroupTypeIbgpConfed"] = oProtocolBgpPeerGroup.Type.IbgpConfed.Misc - } - if oProtocolBgpPeerGroup.Type.IbgpConfed.ExportNexthop != nil { - nestedProtocolBgpPeerGroup.Type.IbgpConfed.ExportNexthop = oProtocolBgpPeerGroup.Type.IbgpConfed.ExportNexthop - } - } if oProtocolBgpPeerGroup.Type.Ebgp != nil { nestedProtocolBgpPeerGroup.Type.Ebgp = &ProtocolBgpPeerGroupTypeEbgp{} if oProtocolBgpPeerGroup.Type.Ebgp.Misc != nil { entry.Misc["ProtocolBgpPeerGroupTypeEbgp"] = oProtocolBgpPeerGroup.Type.Ebgp.Misc } - if oProtocolBgpPeerGroup.Type.Ebgp.RemovePrivateAs != nil { - nestedProtocolBgpPeerGroup.Type.Ebgp.RemovePrivateAs = util.AsBool(oProtocolBgpPeerGroup.Type.Ebgp.RemovePrivateAs, nil) - } if oProtocolBgpPeerGroup.Type.Ebgp.ImportNexthop != nil { nestedProtocolBgpPeerGroup.Type.Ebgp.ImportNexthop = oProtocolBgpPeerGroup.Type.Ebgp.ImportNexthop } if oProtocolBgpPeerGroup.Type.Ebgp.ExportNexthop != nil { nestedProtocolBgpPeerGroup.Type.Ebgp.ExportNexthop = oProtocolBgpPeerGroup.Type.Ebgp.ExportNexthop } + if oProtocolBgpPeerGroup.Type.Ebgp.RemovePrivateAs != nil { + nestedProtocolBgpPeerGroup.Type.Ebgp.RemovePrivateAs = util.AsBool(oProtocolBgpPeerGroup.Type.Ebgp.RemovePrivateAs, nil) + } } if oProtocolBgpPeerGroup.Type.Ibgp != nil { nestedProtocolBgpPeerGroup.Type.Ibgp = &ProtocolBgpPeerGroupTypeIbgp{} @@ -7416,6 +6901,15 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { nestedProtocolBgpPeerGroup.Type.EbgpConfed.ExportNexthop = oProtocolBgpPeerGroup.Type.EbgpConfed.ExportNexthop } } + if oProtocolBgpPeerGroup.Type.IbgpConfed != nil { + nestedProtocolBgpPeerGroup.Type.IbgpConfed = &ProtocolBgpPeerGroupTypeIbgpConfed{} + if oProtocolBgpPeerGroup.Type.IbgpConfed.Misc != nil { + entry.Misc["ProtocolBgpPeerGroupTypeIbgpConfed"] = oProtocolBgpPeerGroup.Type.IbgpConfed.Misc + } + if oProtocolBgpPeerGroup.Type.IbgpConfed.ExportNexthop != nil { + nestedProtocolBgpPeerGroup.Type.IbgpConfed.ExportNexthop = oProtocolBgpPeerGroup.Type.IbgpConfed.ExportNexthop + } + } } if oProtocolBgpPeerGroup.Peer != nil { nestedProtocolBgpPeerGroup.Peer = []ProtocolBgpPeerGroupPeer{} @@ -7424,29 +6918,17 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oProtocolBgpPeerGroupPeer.Misc != nil { entry.Misc["ProtocolBgpPeerGroupPeer"] = oProtocolBgpPeerGroupPeer.Misc } - if oProtocolBgpPeerGroupPeer.EnableSenderSideLoopDetection != nil { - nestedProtocolBgpPeerGroupPeer.EnableSenderSideLoopDetection = util.AsBool(oProtocolBgpPeerGroupPeer.EnableSenderSideLoopDetection, nil) - } - if oProtocolBgpPeerGroupPeer.PeeringType != nil { - nestedProtocolBgpPeerGroupPeer.PeeringType = oProtocolBgpPeerGroupPeer.PeeringType - } - if oProtocolBgpPeerGroupPeer.LocalAddress != nil { - nestedProtocolBgpPeerGroupPeer.LocalAddress = &ProtocolBgpPeerGroupPeerLocalAddress{} - if oProtocolBgpPeerGroupPeer.LocalAddress.Misc != nil { - entry.Misc["ProtocolBgpPeerGroupPeerLocalAddress"] = oProtocolBgpPeerGroupPeer.LocalAddress.Misc - } - if oProtocolBgpPeerGroupPeer.LocalAddress.Interface != nil { - nestedProtocolBgpPeerGroupPeer.LocalAddress.Interface = oProtocolBgpPeerGroupPeer.LocalAddress.Interface + if oProtocolBgpPeerGroupPeer.Bfd != nil { + nestedProtocolBgpPeerGroupPeer.Bfd = &ProtocolBgpPeerGroupPeerBfd{} + if oProtocolBgpPeerGroupPeer.Bfd.Misc != nil { + entry.Misc["ProtocolBgpPeerGroupPeerBfd"] = oProtocolBgpPeerGroupPeer.Bfd.Misc } - if oProtocolBgpPeerGroupPeer.LocalAddress.Ip != nil { - nestedProtocolBgpPeerGroupPeer.LocalAddress.Ip = oProtocolBgpPeerGroupPeer.LocalAddress.Ip + if oProtocolBgpPeerGroupPeer.Bfd.Profile != nil { + nestedProtocolBgpPeerGroupPeer.Bfd.Profile = oProtocolBgpPeerGroupPeer.Bfd.Profile } } - if oProtocolBgpPeerGroupPeer.Enable != nil { - nestedProtocolBgpPeerGroupPeer.Enable = util.AsBool(oProtocolBgpPeerGroupPeer.Enable, nil) - } - if oProtocolBgpPeerGroupPeer.ReflectorClient != nil { - nestedProtocolBgpPeerGroupPeer.ReflectorClient = oProtocolBgpPeerGroupPeer.ReflectorClient + if oProtocolBgpPeerGroupPeer.EnableMpBgp != nil { + nestedProtocolBgpPeerGroupPeer.EnableMpBgp = util.AsBool(oProtocolBgpPeerGroupPeer.EnableMpBgp, nil) } if oProtocolBgpPeerGroupPeer.SubsequentAddressFamilyIdentifier != nil { nestedProtocolBgpPeerGroupPeer.SubsequentAddressFamilyIdentifier = &ProtocolBgpPeerGroupPeerSubsequentAddressFamilyIdentifier{} @@ -7460,11 +6942,41 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { nestedProtocolBgpPeerGroupPeer.SubsequentAddressFamilyIdentifier.Multicast = util.AsBool(oProtocolBgpPeerGroupPeer.SubsequentAddressFamilyIdentifier.Multicast, nil) } } + if oProtocolBgpPeerGroupPeer.EnableSenderSideLoopDetection != nil { + nestedProtocolBgpPeerGroupPeer.EnableSenderSideLoopDetection = util.AsBool(oProtocolBgpPeerGroupPeer.EnableSenderSideLoopDetection, nil) + } + if oProtocolBgpPeerGroupPeer.PeeringType != nil { + nestedProtocolBgpPeerGroupPeer.PeeringType = oProtocolBgpPeerGroupPeer.PeeringType + } + if oProtocolBgpPeerGroupPeer.LocalAddress != nil { + nestedProtocolBgpPeerGroupPeer.LocalAddress = &ProtocolBgpPeerGroupPeerLocalAddress{} + if oProtocolBgpPeerGroupPeer.LocalAddress.Misc != nil { + entry.Misc["ProtocolBgpPeerGroupPeerLocalAddress"] = oProtocolBgpPeerGroupPeer.LocalAddress.Misc + } + if oProtocolBgpPeerGroupPeer.LocalAddress.Ip != nil { + nestedProtocolBgpPeerGroupPeer.LocalAddress.Ip = oProtocolBgpPeerGroupPeer.LocalAddress.Ip + } + if oProtocolBgpPeerGroupPeer.LocalAddress.Interface != nil { + nestedProtocolBgpPeerGroupPeer.LocalAddress.Interface = oProtocolBgpPeerGroupPeer.LocalAddress.Interface + } + } if oProtocolBgpPeerGroupPeer.ConnectionOptions != nil { nestedProtocolBgpPeerGroupPeer.ConnectionOptions = &ProtocolBgpPeerGroupPeerConnectionOptions{} if oProtocolBgpPeerGroupPeer.ConnectionOptions.Misc != nil { entry.Misc["ProtocolBgpPeerGroupPeerConnectionOptions"] = oProtocolBgpPeerGroupPeer.ConnectionOptions.Misc } + if oProtocolBgpPeerGroupPeer.ConnectionOptions.IncomingBgpConnection != nil { + nestedProtocolBgpPeerGroupPeer.ConnectionOptions.IncomingBgpConnection = &ProtocolBgpPeerGroupPeerConnectionOptionsIncomingBgpConnection{} + if oProtocolBgpPeerGroupPeer.ConnectionOptions.IncomingBgpConnection.Misc != nil { + entry.Misc["ProtocolBgpPeerGroupPeerConnectionOptionsIncomingBgpConnection"] = oProtocolBgpPeerGroupPeer.ConnectionOptions.IncomingBgpConnection.Misc + } + if oProtocolBgpPeerGroupPeer.ConnectionOptions.IncomingBgpConnection.RemotePort != nil { + nestedProtocolBgpPeerGroupPeer.ConnectionOptions.IncomingBgpConnection.RemotePort = oProtocolBgpPeerGroupPeer.ConnectionOptions.IncomingBgpConnection.RemotePort + } + if oProtocolBgpPeerGroupPeer.ConnectionOptions.IncomingBgpConnection.Allow != nil { + nestedProtocolBgpPeerGroupPeer.ConnectionOptions.IncomingBgpConnection.Allow = util.AsBool(oProtocolBgpPeerGroupPeer.ConnectionOptions.IncomingBgpConnection.Allow, nil) + } + } if oProtocolBgpPeerGroupPeer.ConnectionOptions.OutgoingBgpConnection != nil { nestedProtocolBgpPeerGroupPeer.ConnectionOptions.OutgoingBgpConnection = &ProtocolBgpPeerGroupPeerConnectionOptionsOutgoingBgpConnection{} if oProtocolBgpPeerGroupPeer.ConnectionOptions.OutgoingBgpConnection.Misc != nil { @@ -7477,48 +6989,36 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { nestedProtocolBgpPeerGroupPeer.ConnectionOptions.OutgoingBgpConnection.Allow = util.AsBool(oProtocolBgpPeerGroupPeer.ConnectionOptions.OutgoingBgpConnection.Allow, nil) } } - if oProtocolBgpPeerGroupPeer.ConnectionOptions.Authentication != nil { - nestedProtocolBgpPeerGroupPeer.ConnectionOptions.Authentication = oProtocolBgpPeerGroupPeer.ConnectionOptions.Authentication - } if oProtocolBgpPeerGroupPeer.ConnectionOptions.MinRouteAdvInterval != nil { nestedProtocolBgpPeerGroupPeer.ConnectionOptions.MinRouteAdvInterval = oProtocolBgpPeerGroupPeer.ConnectionOptions.MinRouteAdvInterval } + if oProtocolBgpPeerGroupPeer.ConnectionOptions.IdleHoldTime != nil { + nestedProtocolBgpPeerGroupPeer.ConnectionOptions.IdleHoldTime = oProtocolBgpPeerGroupPeer.ConnectionOptions.IdleHoldTime + } if oProtocolBgpPeerGroupPeer.ConnectionOptions.Multihop != nil { nestedProtocolBgpPeerGroupPeer.ConnectionOptions.Multihop = oProtocolBgpPeerGroupPeer.ConnectionOptions.Multihop } if oProtocolBgpPeerGroupPeer.ConnectionOptions.OpenDelayTime != nil { nestedProtocolBgpPeerGroupPeer.ConnectionOptions.OpenDelayTime = oProtocolBgpPeerGroupPeer.ConnectionOptions.OpenDelayTime } - if oProtocolBgpPeerGroupPeer.ConnectionOptions.KeepAliveInterval != nil { - nestedProtocolBgpPeerGroupPeer.ConnectionOptions.KeepAliveInterval = oProtocolBgpPeerGroupPeer.ConnectionOptions.KeepAliveInterval - } if oProtocolBgpPeerGroupPeer.ConnectionOptions.HoldTime != nil { nestedProtocolBgpPeerGroupPeer.ConnectionOptions.HoldTime = oProtocolBgpPeerGroupPeer.ConnectionOptions.HoldTime } - if oProtocolBgpPeerGroupPeer.ConnectionOptions.IdleHoldTime != nil { - nestedProtocolBgpPeerGroupPeer.ConnectionOptions.IdleHoldTime = oProtocolBgpPeerGroupPeer.ConnectionOptions.IdleHoldTime + if oProtocolBgpPeerGroupPeer.ConnectionOptions.Authentication != nil { + nestedProtocolBgpPeerGroupPeer.ConnectionOptions.Authentication = oProtocolBgpPeerGroupPeer.ConnectionOptions.Authentication } - if oProtocolBgpPeerGroupPeer.ConnectionOptions.IncomingBgpConnection != nil { - nestedProtocolBgpPeerGroupPeer.ConnectionOptions.IncomingBgpConnection = &ProtocolBgpPeerGroupPeerConnectionOptionsIncomingBgpConnection{} - if oProtocolBgpPeerGroupPeer.ConnectionOptions.IncomingBgpConnection.Misc != nil { - entry.Misc["ProtocolBgpPeerGroupPeerConnectionOptionsIncomingBgpConnection"] = oProtocolBgpPeerGroupPeer.ConnectionOptions.IncomingBgpConnection.Misc - } - if oProtocolBgpPeerGroupPeer.ConnectionOptions.IncomingBgpConnection.RemotePort != nil { - nestedProtocolBgpPeerGroupPeer.ConnectionOptions.IncomingBgpConnection.RemotePort = oProtocolBgpPeerGroupPeer.ConnectionOptions.IncomingBgpConnection.RemotePort - } - if oProtocolBgpPeerGroupPeer.ConnectionOptions.IncomingBgpConnection.Allow != nil { - nestedProtocolBgpPeerGroupPeer.ConnectionOptions.IncomingBgpConnection.Allow = util.AsBool(oProtocolBgpPeerGroupPeer.ConnectionOptions.IncomingBgpConnection.Allow, nil) - } + if oProtocolBgpPeerGroupPeer.ConnectionOptions.KeepAliveInterval != nil { + nestedProtocolBgpPeerGroupPeer.ConnectionOptions.KeepAliveInterval = oProtocolBgpPeerGroupPeer.ConnectionOptions.KeepAliveInterval } } + if oProtocolBgpPeerGroupPeer.Enable != nil { + nestedProtocolBgpPeerGroupPeer.Enable = util.AsBool(oProtocolBgpPeerGroupPeer.Enable, nil) + } if oProtocolBgpPeerGroupPeer.PeerAs != nil { nestedProtocolBgpPeerGroupPeer.PeerAs = oProtocolBgpPeerGroupPeer.PeerAs } - if oProtocolBgpPeerGroupPeer.AddressFamilyIdentifier != nil { - nestedProtocolBgpPeerGroupPeer.AddressFamilyIdentifier = oProtocolBgpPeerGroupPeer.AddressFamilyIdentifier - } - if oProtocolBgpPeerGroupPeer.EnableMpBgp != nil { - nestedProtocolBgpPeerGroupPeer.EnableMpBgp = util.AsBool(oProtocolBgpPeerGroupPeer.EnableMpBgp, nil) + if oProtocolBgpPeerGroupPeer.ReflectorClient != nil { + nestedProtocolBgpPeerGroupPeer.ReflectorClient = oProtocolBgpPeerGroupPeer.ReflectorClient } if oProtocolBgpPeerGroupPeer.PeerAddress != nil { nestedProtocolBgpPeerGroupPeer.PeerAddress = &ProtocolBgpPeerGroupPeerPeerAddress{} @@ -7532,18 +7032,12 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { nestedProtocolBgpPeerGroupPeer.PeerAddress.Fqdn = oProtocolBgpPeerGroupPeer.PeerAddress.Fqdn } } - if oProtocolBgpPeerGroupPeer.Bfd != nil { - nestedProtocolBgpPeerGroupPeer.Bfd = &ProtocolBgpPeerGroupPeerBfd{} - if oProtocolBgpPeerGroupPeer.Bfd.Misc != nil { - entry.Misc["ProtocolBgpPeerGroupPeerBfd"] = oProtocolBgpPeerGroupPeer.Bfd.Misc - } - if oProtocolBgpPeerGroupPeer.Bfd.Profile != nil { - nestedProtocolBgpPeerGroupPeer.Bfd.Profile = oProtocolBgpPeerGroupPeer.Bfd.Profile - } - } if oProtocolBgpPeerGroupPeer.Name != "" { nestedProtocolBgpPeerGroupPeer.Name = oProtocolBgpPeerGroupPeer.Name } + if oProtocolBgpPeerGroupPeer.AddressFamilyIdentifier != nil { + nestedProtocolBgpPeerGroupPeer.AddressFamilyIdentifier = oProtocolBgpPeerGroupPeer.AddressFamilyIdentifier + } if oProtocolBgpPeerGroupPeer.MaxPrefixes != nil { nestedProtocolBgpPeerGroupPeer.MaxPrefixes = oProtocolBgpPeerGroupPeer.MaxPrefixes } @@ -7553,15 +7047,58 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oProtocolBgpPeerGroup.Name != "" { nestedProtocolBgpPeerGroup.Name = oProtocolBgpPeerGroup.Name } - if oProtocolBgpPeerGroup.Enable != nil { - nestedProtocolBgpPeerGroup.Enable = util.AsBool(oProtocolBgpPeerGroup.Enable, nil) + nestedProtocol.Bgp.PeerGroup = append(nestedProtocol.Bgp.PeerGroup, nestedProtocolBgpPeerGroup) + } + } + if o.Protocol.Bgp.RejectDefaultRoute != nil { + nestedProtocol.Bgp.RejectDefaultRoute = util.AsBool(o.Protocol.Bgp.RejectDefaultRoute, nil) + } + if o.Protocol.Bgp.DampeningProfile != nil { + nestedProtocol.Bgp.DampeningProfile = []ProtocolBgpDampeningProfile{} + for _, oProtocolBgpDampeningProfile := range o.Protocol.Bgp.DampeningProfile { + nestedProtocolBgpDampeningProfile := ProtocolBgpDampeningProfile{} + if oProtocolBgpDampeningProfile.Misc != nil { + entry.Misc["ProtocolBgpDampeningProfile"] = oProtocolBgpDampeningProfile.Misc } - if oProtocolBgpPeerGroup.AggregatedConfedAsPath != nil { - nestedProtocolBgpPeerGroup.AggregatedConfedAsPath = util.AsBool(oProtocolBgpPeerGroup.AggregatedConfedAsPath, nil) + if oProtocolBgpDampeningProfile.Cutoff != nil { + nestedProtocolBgpDampeningProfile.Cutoff = oProtocolBgpDampeningProfile.Cutoff } - nestedProtocol.Bgp.PeerGroup = append(nestedProtocol.Bgp.PeerGroup, nestedProtocolBgpPeerGroup) + if oProtocolBgpDampeningProfile.Reuse != nil { + nestedProtocolBgpDampeningProfile.Reuse = oProtocolBgpDampeningProfile.Reuse + } + if oProtocolBgpDampeningProfile.MaxHoldTime != nil { + nestedProtocolBgpDampeningProfile.MaxHoldTime = oProtocolBgpDampeningProfile.MaxHoldTime + } + if oProtocolBgpDampeningProfile.DecayHalfLifeReachable != nil { + nestedProtocolBgpDampeningProfile.DecayHalfLifeReachable = oProtocolBgpDampeningProfile.DecayHalfLifeReachable + } + if oProtocolBgpDampeningProfile.DecayHalfLifeUnreachable != nil { + nestedProtocolBgpDampeningProfile.DecayHalfLifeUnreachable = oProtocolBgpDampeningProfile.DecayHalfLifeUnreachable + } + if oProtocolBgpDampeningProfile.Name != "" { + nestedProtocolBgpDampeningProfile.Name = oProtocolBgpDampeningProfile.Name + } + if oProtocolBgpDampeningProfile.Enable != nil { + nestedProtocolBgpDampeningProfile.Enable = util.AsBool(oProtocolBgpDampeningProfile.Enable, nil) + } + nestedProtocol.Bgp.DampeningProfile = append(nestedProtocol.Bgp.DampeningProfile, nestedProtocolBgpDampeningProfile) + } + } + if o.Protocol.Bgp.EcmpMultiAs != nil { + nestedProtocol.Bgp.EcmpMultiAs = util.AsBool(o.Protocol.Bgp.EcmpMultiAs, nil) + } + if o.Protocol.Bgp.GlobalBfd != nil { + nestedProtocol.Bgp.GlobalBfd = &ProtocolBgpGlobalBfd{} + if o.Protocol.Bgp.GlobalBfd.Misc != nil { + entry.Misc["ProtocolBgpGlobalBfd"] = o.Protocol.Bgp.GlobalBfd.Misc + } + if o.Protocol.Bgp.GlobalBfd.Profile != nil { + nestedProtocol.Bgp.GlobalBfd.Profile = o.Protocol.Bgp.GlobalBfd.Profile } } + if o.Protocol.Bgp.LocalAs != nil { + nestedProtocol.Bgp.LocalAs = o.Protocol.Bgp.LocalAs + } if o.Protocol.Bgp.RedistRules != nil { nestedProtocol.Bgp.RedistRules = []ProtocolBgpRedistRules{} for _, oProtocolBgpRedistRules := range o.Protocol.Bgp.RedistRules { @@ -7569,6 +7106,15 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oProtocolBgpRedistRules.Misc != nil { entry.Misc["ProtocolBgpRedistRules"] = oProtocolBgpRedistRules.Misc } + if oProtocolBgpRedistRules.RouteTable != nil { + nestedProtocolBgpRedistRules.RouteTable = oProtocolBgpRedistRules.RouteTable + } + if oProtocolBgpRedistRules.SetOrigin != nil { + nestedProtocolBgpRedistRules.SetOrigin = oProtocolBgpRedistRules.SetOrigin + } + if oProtocolBgpRedistRules.SetMed != nil { + nestedProtocolBgpRedistRules.SetMed = oProtocolBgpRedistRules.SetMed + } if oProtocolBgpRedistRules.SetAsPathLimit != nil { nestedProtocolBgpRedistRules.SetAsPathLimit = oProtocolBgpRedistRules.SetAsPathLimit } @@ -7578,23 +7124,14 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oProtocolBgpRedistRules.SetCommunity != nil { nestedProtocolBgpRedistRules.SetCommunity = util.MemToStr(oProtocolBgpRedistRules.SetCommunity) } - if oProtocolBgpRedistRules.RouteTable != nil { - nestedProtocolBgpRedistRules.RouteTable = oProtocolBgpRedistRules.RouteTable + if oProtocolBgpRedistRules.AddressFamilyIdentifier != nil { + nestedProtocolBgpRedistRules.AddressFamilyIdentifier = oProtocolBgpRedistRules.AddressFamilyIdentifier } if oProtocolBgpRedistRules.Enable != nil { nestedProtocolBgpRedistRules.Enable = util.AsBool(oProtocolBgpRedistRules.Enable, nil) } - if oProtocolBgpRedistRules.SetMed != nil { - nestedProtocolBgpRedistRules.SetMed = oProtocolBgpRedistRules.SetMed - } if oProtocolBgpRedistRules.SetLocalPreference != nil { - nestedProtocolBgpRedistRules.SetLocalPreference = oProtocolBgpRedistRules.SetLocalPreference - } - if oProtocolBgpRedistRules.AddressFamilyIdentifier != nil { - nestedProtocolBgpRedistRules.AddressFamilyIdentifier = oProtocolBgpRedistRules.AddressFamilyIdentifier - } - if oProtocolBgpRedistRules.SetOrigin != nil { - nestedProtocolBgpRedistRules.SetOrigin = oProtocolBgpRedistRules.SetOrigin + nestedProtocolBgpRedistRules.SetLocalPreference = oProtocolBgpRedistRules.SetLocalPreference } if oProtocolBgpRedistRules.SetExtendedCommunity != nil { nestedProtocolBgpRedistRules.SetExtendedCommunity = util.MemToStr(oProtocolBgpRedistRules.SetExtendedCommunity) @@ -7605,39 +7142,74 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { nestedProtocol.Bgp.RedistRules = append(nestedProtocol.Bgp.RedistRules, nestedProtocolBgpRedistRules) } } - if o.Protocol.Bgp.RejectDefaultRoute != nil { - nestedProtocol.Bgp.RejectDefaultRoute = util.AsBool(o.Protocol.Bgp.RejectDefaultRoute, nil) + if o.Protocol.Bgp.RouterId != nil { + nestedProtocol.Bgp.RouterId = o.Protocol.Bgp.RouterId } - if o.Protocol.Bgp.DampeningProfile != nil { - nestedProtocol.Bgp.DampeningProfile = []ProtocolBgpDampeningProfile{} - for _, oProtocolBgpDampeningProfile := range o.Protocol.Bgp.DampeningProfile { - nestedProtocolBgpDampeningProfile := ProtocolBgpDampeningProfile{} - if oProtocolBgpDampeningProfile.Misc != nil { - entry.Misc["ProtocolBgpDampeningProfile"] = oProtocolBgpDampeningProfile.Misc + if o.Protocol.Bgp.AllowRedistDefaultRoute != nil { + nestedProtocol.Bgp.AllowRedistDefaultRoute = util.AsBool(o.Protocol.Bgp.AllowRedistDefaultRoute, nil) + } + if o.Protocol.Bgp.EnforceFirstAs != nil { + nestedProtocol.Bgp.EnforceFirstAs = util.AsBool(o.Protocol.Bgp.EnforceFirstAs, nil) + } + if o.Protocol.Bgp.RoutingOptions != nil { + nestedProtocol.Bgp.RoutingOptions = &ProtocolBgpRoutingOptions{} + if o.Protocol.Bgp.RoutingOptions.Misc != nil { + entry.Misc["ProtocolBgpRoutingOptions"] = o.Protocol.Bgp.RoutingOptions.Misc + } + if o.Protocol.Bgp.RoutingOptions.ConfederationMemberAs != nil { + nestedProtocol.Bgp.RoutingOptions.ConfederationMemberAs = o.Protocol.Bgp.RoutingOptions.ConfederationMemberAs + } + if o.Protocol.Bgp.RoutingOptions.DefaultLocalPreference != nil { + nestedProtocol.Bgp.RoutingOptions.DefaultLocalPreference = o.Protocol.Bgp.RoutingOptions.DefaultLocalPreference + } + if o.Protocol.Bgp.RoutingOptions.GracefulRestart != nil { + nestedProtocol.Bgp.RoutingOptions.GracefulRestart = &ProtocolBgpRoutingOptionsGracefulRestart{} + if o.Protocol.Bgp.RoutingOptions.GracefulRestart.Misc != nil { + entry.Misc["ProtocolBgpRoutingOptionsGracefulRestart"] = o.Protocol.Bgp.RoutingOptions.GracefulRestart.Misc } - if oProtocolBgpDampeningProfile.Enable != nil { - nestedProtocolBgpDampeningProfile.Enable = util.AsBool(oProtocolBgpDampeningProfile.Enable, nil) + if o.Protocol.Bgp.RoutingOptions.GracefulRestart.Enable != nil { + nestedProtocol.Bgp.RoutingOptions.GracefulRestart.Enable = util.AsBool(o.Protocol.Bgp.RoutingOptions.GracefulRestart.Enable, nil) } - if oProtocolBgpDampeningProfile.Cutoff != nil { - nestedProtocolBgpDampeningProfile.Cutoff = oProtocolBgpDampeningProfile.Cutoff + if o.Protocol.Bgp.RoutingOptions.GracefulRestart.LocalRestartTime != nil { + nestedProtocol.Bgp.RoutingOptions.GracefulRestart.LocalRestartTime = o.Protocol.Bgp.RoutingOptions.GracefulRestart.LocalRestartTime } - if oProtocolBgpDampeningProfile.Reuse != nil { - nestedProtocolBgpDampeningProfile.Reuse = oProtocolBgpDampeningProfile.Reuse + if o.Protocol.Bgp.RoutingOptions.GracefulRestart.MaxPeerRestartTime != nil { + nestedProtocol.Bgp.RoutingOptions.GracefulRestart.MaxPeerRestartTime = o.Protocol.Bgp.RoutingOptions.GracefulRestart.MaxPeerRestartTime } - if oProtocolBgpDampeningProfile.MaxHoldTime != nil { - nestedProtocolBgpDampeningProfile.MaxHoldTime = oProtocolBgpDampeningProfile.MaxHoldTime + if o.Protocol.Bgp.RoutingOptions.GracefulRestart.StaleRouteTime != nil { + nestedProtocol.Bgp.RoutingOptions.GracefulRestart.StaleRouteTime = o.Protocol.Bgp.RoutingOptions.GracefulRestart.StaleRouteTime } - if oProtocolBgpDampeningProfile.DecayHalfLifeReachable != nil { - nestedProtocolBgpDampeningProfile.DecayHalfLifeReachable = oProtocolBgpDampeningProfile.DecayHalfLifeReachable + } + if o.Protocol.Bgp.RoutingOptions.Med != nil { + nestedProtocol.Bgp.RoutingOptions.Med = &ProtocolBgpRoutingOptionsMed{} + if o.Protocol.Bgp.RoutingOptions.Med.Misc != nil { + entry.Misc["ProtocolBgpRoutingOptionsMed"] = o.Protocol.Bgp.RoutingOptions.Med.Misc } - if oProtocolBgpDampeningProfile.DecayHalfLifeUnreachable != nil { - nestedProtocolBgpDampeningProfile.DecayHalfLifeUnreachable = oProtocolBgpDampeningProfile.DecayHalfLifeUnreachable + if o.Protocol.Bgp.RoutingOptions.Med.AlwaysCompareMed != nil { + nestedProtocol.Bgp.RoutingOptions.Med.AlwaysCompareMed = util.AsBool(o.Protocol.Bgp.RoutingOptions.Med.AlwaysCompareMed, nil) } - if oProtocolBgpDampeningProfile.Name != "" { - nestedProtocolBgpDampeningProfile.Name = oProtocolBgpDampeningProfile.Name + if o.Protocol.Bgp.RoutingOptions.Med.DeterministicMedComparison != nil { + nestedProtocol.Bgp.RoutingOptions.Med.DeterministicMedComparison = util.AsBool(o.Protocol.Bgp.RoutingOptions.Med.DeterministicMedComparison, nil) } - nestedProtocol.Bgp.DampeningProfile = append(nestedProtocol.Bgp.DampeningProfile, nestedProtocolBgpDampeningProfile) } + if o.Protocol.Bgp.RoutingOptions.ReflectorClusterId != nil { + nestedProtocol.Bgp.RoutingOptions.ReflectorClusterId = o.Protocol.Bgp.RoutingOptions.ReflectorClusterId + } + if o.Protocol.Bgp.RoutingOptions.Aggregate != nil { + nestedProtocol.Bgp.RoutingOptions.Aggregate = &ProtocolBgpRoutingOptionsAggregate{} + if o.Protocol.Bgp.RoutingOptions.Aggregate.Misc != nil { + entry.Misc["ProtocolBgpRoutingOptionsAggregate"] = o.Protocol.Bgp.RoutingOptions.Aggregate.Misc + } + if o.Protocol.Bgp.RoutingOptions.Aggregate.AggregateMed != nil { + nestedProtocol.Bgp.RoutingOptions.Aggregate.AggregateMed = util.AsBool(o.Protocol.Bgp.RoutingOptions.Aggregate.AggregateMed, nil) + } + } + if o.Protocol.Bgp.RoutingOptions.AsFormat != nil { + nestedProtocol.Bgp.RoutingOptions.AsFormat = o.Protocol.Bgp.RoutingOptions.AsFormat + } + } + if o.Protocol.Bgp.InstallRoute != nil { + nestedProtocol.Bgp.InstallRoute = util.AsBool(o.Protocol.Bgp.InstallRoute, nil) } if o.Protocol.Bgp.Policy != nil { nestedProtocol.Bgp.Policy = &ProtocolBgpPolicy{} @@ -7656,9 +7228,6 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oProtocolBgpPolicyAggregationAddress.Misc != nil { entry.Misc["ProtocolBgpPolicyAggregationAddress"] = oProtocolBgpPolicyAggregationAddress.Misc } - if oProtocolBgpPolicyAggregationAddress.Prefix != nil { - nestedProtocolBgpPolicyAggregationAddress.Prefix = oProtocolBgpPolicyAggregationAddress.Prefix - } if oProtocolBgpPolicyAggregationAddress.Enable != nil { nestedProtocolBgpPolicyAggregationAddress.Enable = util.AsBool(oProtocolBgpPolicyAggregationAddress.Enable, nil) } @@ -7673,17 +7242,17 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.Misc != nil { entry.Misc["ProtocolBgpPolicyAggregationAddressAggregateRouteAttributes"] = oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.Misc } + if oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.Nexthop != nil { + nestedProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.Nexthop = oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.Nexthop + } + if oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.Origin != nil { + nestedProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.Origin = oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.Origin + } if oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.AsPath != nil { nestedProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.AsPath = &ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesAsPath{} if oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.AsPath.Misc != nil { entry.Misc["ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesAsPath"] = oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.AsPath.Misc } - if oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.AsPath.None != nil { - nestedProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.AsPath.None = &ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesAsPathNone{} - if oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.AsPath.None.Misc != nil { - entry.Misc["ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesAsPathNone"] = oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.AsPath.None.Misc - } - } if oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.AsPath.Remove != nil { nestedProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.AsPath.Remove = &ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesAsPathRemove{} if oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.AsPath.Remove.Misc != nil { @@ -7693,6 +7262,12 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.AsPath.Prepend != nil { nestedProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.AsPath.Prepend = oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.AsPath.Prepend } + if oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.AsPath.None != nil { + nestedProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.AsPath.None = &ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesAsPathNone{} + if oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.AsPath.None.Misc != nil { + entry.Misc["ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesAsPathNone"] = oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.AsPath.None.Misc + } + } } if oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.Community != nil { nestedProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.Community = &ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesCommunity{} @@ -7724,26 +7299,23 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.LocalPreference != nil { nestedProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.LocalPreference = oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.LocalPreference } - if oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.Med != nil { - nestedProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.Med = oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.Med - } if oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.Weight != nil { nestedProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.Weight = oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.Weight } - if oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.Nexthop != nil { - nestedProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.Nexthop = oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.Nexthop - } - if oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.Origin != nil { - nestedProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.Origin = oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.Origin - } - if oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.AsPathLimit != nil { - nestedProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.AsPathLimit = oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.AsPathLimit - } if oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.ExtendedCommunity != nil { nestedProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.ExtendedCommunity = &ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesExtendedCommunity{} if oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.ExtendedCommunity.Misc != nil { entry.Misc["ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesExtendedCommunity"] = oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.ExtendedCommunity.Misc } + if oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.ExtendedCommunity.RemoveRegex != nil { + nestedProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.ExtendedCommunity.RemoveRegex = oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.ExtendedCommunity.RemoveRegex + } + if oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.ExtendedCommunity.Append != nil { + nestedProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.ExtendedCommunity.Append = util.MemToStr(oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.ExtendedCommunity.Append) + } + if oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.ExtendedCommunity.Overwrite != nil { + nestedProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.ExtendedCommunity.Overwrite = util.MemToStr(oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.ExtendedCommunity.Overwrite) + } if oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.ExtendedCommunity.None != nil { nestedProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.ExtendedCommunity.None = &ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesExtendedCommunityNone{} if oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.ExtendedCommunity.None.Misc != nil { @@ -7756,15 +7328,12 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { entry.Misc["ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesExtendedCommunityRemoveAll"] = oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.ExtendedCommunity.RemoveAll.Misc } } - if oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.ExtendedCommunity.RemoveRegex != nil { - nestedProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.ExtendedCommunity.RemoveRegex = oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.ExtendedCommunity.RemoveRegex - } - if oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.ExtendedCommunity.Append != nil { - nestedProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.ExtendedCommunity.Append = util.MemToStr(oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.ExtendedCommunity.Append) - } - if oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.ExtendedCommunity.Overwrite != nil { - nestedProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.ExtendedCommunity.Overwrite = util.MemToStr(oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.ExtendedCommunity.Overwrite) - } + } + if oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.Med != nil { + nestedProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.Med = oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.Med + } + if oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.AsPathLimit != nil { + nestedProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.AsPathLimit = oProtocolBgpPolicyAggregationAddress.AggregateRouteAttributes.AsPathLimit } } if oProtocolBgpPolicyAggregationAddress.SuppressFilters != nil { @@ -7782,15 +7351,6 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oProtocolBgpPolicyAggregationAddressSuppressFilters.Match.Misc != nil { entry.Misc["ProtocolBgpPolicyAggregationAddressSuppressFiltersMatch"] = oProtocolBgpPolicyAggregationAddressSuppressFilters.Match.Misc } - if oProtocolBgpPolicyAggregationAddressSuppressFilters.Match.Community != nil { - nestedProtocolBgpPolicyAggregationAddressSuppressFilters.Match.Community = &ProtocolBgpPolicyAggregationAddressSuppressFiltersMatchCommunity{} - if oProtocolBgpPolicyAggregationAddressSuppressFilters.Match.Community.Misc != nil { - entry.Misc["ProtocolBgpPolicyAggregationAddressSuppressFiltersMatchCommunity"] = oProtocolBgpPolicyAggregationAddressSuppressFilters.Match.Community.Misc - } - if oProtocolBgpPolicyAggregationAddressSuppressFilters.Match.Community.Regex != nil { - nestedProtocolBgpPolicyAggregationAddressSuppressFilters.Match.Community.Regex = oProtocolBgpPolicyAggregationAddressSuppressFilters.Match.Community.Regex - } - } if oProtocolBgpPolicyAggregationAddressSuppressFilters.Match.ExtendedCommunity != nil { nestedProtocolBgpPolicyAggregationAddressSuppressFilters.Match.ExtendedCommunity = &ProtocolBgpPolicyAggregationAddressSuppressFiltersMatchExtendedCommunity{} if oProtocolBgpPolicyAggregationAddressSuppressFilters.Match.ExtendedCommunity.Misc != nil { @@ -7837,6 +7397,15 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { nestedProtocolBgpPolicyAggregationAddressSuppressFilters.Match.AsPath.Regex = oProtocolBgpPolicyAggregationAddressSuppressFilters.Match.AsPath.Regex } } + if oProtocolBgpPolicyAggregationAddressSuppressFilters.Match.Community != nil { + nestedProtocolBgpPolicyAggregationAddressSuppressFilters.Match.Community = &ProtocolBgpPolicyAggregationAddressSuppressFiltersMatchCommunity{} + if oProtocolBgpPolicyAggregationAddressSuppressFilters.Match.Community.Misc != nil { + entry.Misc["ProtocolBgpPolicyAggregationAddressSuppressFiltersMatchCommunity"] = oProtocolBgpPolicyAggregationAddressSuppressFilters.Match.Community.Misc + } + if oProtocolBgpPolicyAggregationAddressSuppressFilters.Match.Community.Regex != nil { + nestedProtocolBgpPolicyAggregationAddressSuppressFilters.Match.Community.Regex = oProtocolBgpPolicyAggregationAddressSuppressFilters.Match.Community.Regex + } + } } if oProtocolBgpPolicyAggregationAddressSuppressFilters.Name != "" { nestedProtocolBgpPolicyAggregationAddressSuppressFilters.Name = oProtocolBgpPolicyAggregationAddressSuppressFilters.Name @@ -7859,31 +7428,6 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.Misc != nil { entry.Misc["ProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatch"] = oProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.Misc } - if oProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.Med != nil { - nestedProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.Med = oProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.Med - } - if oProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.AddressPrefix != nil { - nestedProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.AddressPrefix = []ProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix{} - for _, oProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix := range oProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.AddressPrefix { - nestedProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix := ProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix{} - if oProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix.Misc != nil { - entry.Misc["ProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix"] = oProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix.Misc - } - if oProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix.Exact != nil { - nestedProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix.Exact = util.AsBool(oProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix.Exact, nil) - } - if oProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix.Name != "" { - nestedProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix.Name = oProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix.Name - } - nestedProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.AddressPrefix = append(nestedProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.AddressPrefix, nestedProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix) - } - } - if oProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.Nexthop != nil { - nestedProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.Nexthop = util.MemToStr(oProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.Nexthop) - } - if oProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.FromPeer != nil { - nestedProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.FromPeer = util.MemToStr(oProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.FromPeer) - } if oProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.AsPath != nil { nestedProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.AsPath = &ProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAsPath{} if oProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.AsPath.Misc != nil { @@ -7914,108 +7458,59 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.RouteTable != nil { nestedProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.RouteTable = oProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.RouteTable } - } - if oProtocolBgpPolicyAggregationAddressAdvertiseFilters.Name != "" { - nestedProtocolBgpPolicyAggregationAddressAdvertiseFilters.Name = oProtocolBgpPolicyAggregationAddressAdvertiseFilters.Name - } - nestedProtocolBgpPolicyAggregationAddress.AdvertiseFilters = append(nestedProtocolBgpPolicyAggregationAddress.AdvertiseFilters, nestedProtocolBgpPolicyAggregationAddressAdvertiseFilters) - } - } - if oProtocolBgpPolicyAggregationAddress.Name != "" { - nestedProtocolBgpPolicyAggregationAddress.Name = oProtocolBgpPolicyAggregationAddress.Name - } - nestedProtocol.Bgp.Policy.Aggregation.Address = append(nestedProtocol.Bgp.Policy.Aggregation.Address, nestedProtocolBgpPolicyAggregationAddress) - } - } - } - if o.Protocol.Bgp.Policy.ConditionalAdvertisement != nil { - nestedProtocol.Bgp.Policy.ConditionalAdvertisement = &ProtocolBgpPolicyConditionalAdvertisement{} - if o.Protocol.Bgp.Policy.ConditionalAdvertisement.Misc != nil { - entry.Misc["ProtocolBgpPolicyConditionalAdvertisement"] = o.Protocol.Bgp.Policy.ConditionalAdvertisement.Misc - } - if o.Protocol.Bgp.Policy.ConditionalAdvertisement.Policy != nil { - nestedProtocol.Bgp.Policy.ConditionalAdvertisement.Policy = []ProtocolBgpPolicyConditionalAdvertisementPolicy{} - for _, oProtocolBgpPolicyConditionalAdvertisementPolicy := range o.Protocol.Bgp.Policy.ConditionalAdvertisement.Policy { - nestedProtocolBgpPolicyConditionalAdvertisementPolicy := ProtocolBgpPolicyConditionalAdvertisementPolicy{} - if oProtocolBgpPolicyConditionalAdvertisementPolicy.Misc != nil { - entry.Misc["ProtocolBgpPolicyConditionalAdvertisementPolicy"] = oProtocolBgpPolicyConditionalAdvertisementPolicy.Misc - } - if oProtocolBgpPolicyConditionalAdvertisementPolicy.AdvertiseFilters != nil { - nestedProtocolBgpPolicyConditionalAdvertisementPolicy.AdvertiseFilters = []ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters{} - for _, oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters := range oProtocolBgpPolicyConditionalAdvertisementPolicy.AdvertiseFilters { - nestedProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters := ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters{} - if oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Misc != nil { - entry.Misc["ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters"] = oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Misc - } - if oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Name != "" { - nestedProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Name = oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Name - } - if oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Enable != nil { - nestedProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Enable = util.AsBool(oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Enable, nil) - } - if oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match != nil { - nestedProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match = &ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatch{} - if oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.Misc != nil { - entry.Misc["ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatch"] = oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.Misc - } - if oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.AsPath != nil { - nestedProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.AsPath = &ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchAsPath{} - if oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.AsPath.Misc != nil { - entry.Misc["ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchAsPath"] = oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.AsPath.Misc - } - if oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.AsPath.Regex != nil { - nestedProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.AsPath.Regex = oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.AsPath.Regex - } - } - if oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.Community != nil { - nestedProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.Community = &ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchCommunity{} - if oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.Community.Misc != nil { - entry.Misc["ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchCommunity"] = oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.Community.Misc - } - if oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.Community.Regex != nil { - nestedProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.Community.Regex = oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.Community.Regex - } - } - if oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.ExtendedCommunity != nil { - nestedProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.ExtendedCommunity = &ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchExtendedCommunity{} - if oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.ExtendedCommunity.Misc != nil { - entry.Misc["ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchExtendedCommunity"] = oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.ExtendedCommunity.Misc - } - if oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.ExtendedCommunity.Regex != nil { - nestedProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.ExtendedCommunity.Regex = oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.ExtendedCommunity.Regex - } - } - if oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.RouteTable != nil { - nestedProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.RouteTable = oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.RouteTable - } - if oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.Med != nil { - nestedProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.Med = oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.Med + if oProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.Med != nil { + nestedProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.Med = oProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.Med } - if oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.AddressPrefix != nil { - nestedProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.AddressPrefix = []ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchAddressPrefix{} - for _, oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchAddressPrefix := range oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.AddressPrefix { - nestedProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchAddressPrefix := ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchAddressPrefix{} - if oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchAddressPrefix.Misc != nil { - entry.Misc["ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchAddressPrefix"] = oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchAddressPrefix.Misc + if oProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.AddressPrefix != nil { + nestedProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.AddressPrefix = []ProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix{} + for _, oProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix := range oProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.AddressPrefix { + nestedProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix := ProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix{} + if oProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix.Misc != nil { + entry.Misc["ProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix"] = oProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix.Misc } - if oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchAddressPrefix.Name != "" { - nestedProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchAddressPrefix.Name = oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchAddressPrefix.Name + if oProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix.Exact != nil { + nestedProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix.Exact = util.AsBool(oProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix.Exact, nil) } - nestedProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.AddressPrefix = append(nestedProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.AddressPrefix, nestedProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchAddressPrefix) + if oProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix.Name != "" { + nestedProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix.Name = oProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix.Name + } + nestedProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.AddressPrefix = append(nestedProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.AddressPrefix, nestedProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix) } } - if oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.Nexthop != nil { - nestedProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.Nexthop = util.MemToStr(oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.Nexthop) + if oProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.Nexthop != nil { + nestedProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.Nexthop = util.MemToStr(oProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.Nexthop) } - if oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.FromPeer != nil { - nestedProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.FromPeer = util.MemToStr(oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.FromPeer) + if oProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.FromPeer != nil { + nestedProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.FromPeer = util.MemToStr(oProtocolBgpPolicyAggregationAddressAdvertiseFilters.Match.FromPeer) } } - nestedProtocolBgpPolicyConditionalAdvertisementPolicy.AdvertiseFilters = append(nestedProtocolBgpPolicyConditionalAdvertisementPolicy.AdvertiseFilters, nestedProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters) + if oProtocolBgpPolicyAggregationAddressAdvertiseFilters.Name != "" { + nestedProtocolBgpPolicyAggregationAddressAdvertiseFilters.Name = oProtocolBgpPolicyAggregationAddressAdvertiseFilters.Name + } + nestedProtocolBgpPolicyAggregationAddress.AdvertiseFilters = append(nestedProtocolBgpPolicyAggregationAddress.AdvertiseFilters, nestedProtocolBgpPolicyAggregationAddressAdvertiseFilters) } } - if oProtocolBgpPolicyConditionalAdvertisementPolicy.Name != "" { - nestedProtocolBgpPolicyConditionalAdvertisementPolicy.Name = oProtocolBgpPolicyConditionalAdvertisementPolicy.Name + if oProtocolBgpPolicyAggregationAddress.Name != "" { + nestedProtocolBgpPolicyAggregationAddress.Name = oProtocolBgpPolicyAggregationAddress.Name + } + if oProtocolBgpPolicyAggregationAddress.Prefix != nil { + nestedProtocolBgpPolicyAggregationAddress.Prefix = oProtocolBgpPolicyAggregationAddress.Prefix + } + nestedProtocol.Bgp.Policy.Aggregation.Address = append(nestedProtocol.Bgp.Policy.Aggregation.Address, nestedProtocolBgpPolicyAggregationAddress) + } + } + } + if o.Protocol.Bgp.Policy.ConditionalAdvertisement != nil { + nestedProtocol.Bgp.Policy.ConditionalAdvertisement = &ProtocolBgpPolicyConditionalAdvertisement{} + if o.Protocol.Bgp.Policy.ConditionalAdvertisement.Misc != nil { + entry.Misc["ProtocolBgpPolicyConditionalAdvertisement"] = o.Protocol.Bgp.Policy.ConditionalAdvertisement.Misc + } + if o.Protocol.Bgp.Policy.ConditionalAdvertisement.Policy != nil { + nestedProtocol.Bgp.Policy.ConditionalAdvertisement.Policy = []ProtocolBgpPolicyConditionalAdvertisementPolicy{} + for _, oProtocolBgpPolicyConditionalAdvertisementPolicy := range o.Protocol.Bgp.Policy.ConditionalAdvertisement.Policy { + nestedProtocolBgpPolicyConditionalAdvertisementPolicy := ProtocolBgpPolicyConditionalAdvertisementPolicy{} + if oProtocolBgpPolicyConditionalAdvertisementPolicy.Misc != nil { + entry.Misc["ProtocolBgpPolicyConditionalAdvertisementPolicy"] = oProtocolBgpPolicyConditionalAdvertisementPolicy.Misc } if oProtocolBgpPolicyConditionalAdvertisementPolicy.Enable != nil { nestedProtocolBgpPolicyConditionalAdvertisementPolicy.Enable = util.AsBool(oProtocolBgpPolicyConditionalAdvertisementPolicy.Enable, nil) @@ -8038,6 +7533,9 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters.Match.Misc != nil { entry.Misc["ProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFiltersMatch"] = oProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters.Match.Misc } + if oProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters.Match.Nexthop != nil { + nestedProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters.Match.Nexthop = util.MemToStr(oProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters.Match.Nexthop) + } if oProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters.Match.FromPeer != nil { nestedProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters.Match.FromPeer = util.MemToStr(oProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters.Match.FromPeer) } @@ -8087,9 +7585,6 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { nestedProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters.Match.AddressPrefix = append(nestedProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters.Match.AddressPrefix, nestedProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFiltersMatchAddressPrefix) } } - if oProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters.Match.Nexthop != nil { - nestedProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters.Match.Nexthop = util.MemToStr(oProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters.Match.Nexthop) - } } if oProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters.Name != "" { nestedProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters.Name = oProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters.Name @@ -8097,6 +7592,83 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { nestedProtocolBgpPolicyConditionalAdvertisementPolicy.NonExistFilters = append(nestedProtocolBgpPolicyConditionalAdvertisementPolicy.NonExistFilters, nestedProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters) } } + if oProtocolBgpPolicyConditionalAdvertisementPolicy.AdvertiseFilters != nil { + nestedProtocolBgpPolicyConditionalAdvertisementPolicy.AdvertiseFilters = []ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters{} + for _, oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters := range oProtocolBgpPolicyConditionalAdvertisementPolicy.AdvertiseFilters { + nestedProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters := ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters{} + if oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Misc != nil { + entry.Misc["ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters"] = oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Misc + } + if oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Enable != nil { + nestedProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Enable = util.AsBool(oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Enable, nil) + } + if oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match != nil { + nestedProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match = &ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatch{} + if oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.Misc != nil { + entry.Misc["ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatch"] = oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.Misc + } + if oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.AsPath != nil { + nestedProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.AsPath = &ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchAsPath{} + if oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.AsPath.Misc != nil { + entry.Misc["ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchAsPath"] = oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.AsPath.Misc + } + if oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.AsPath.Regex != nil { + nestedProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.AsPath.Regex = oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.AsPath.Regex + } + } + if oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.Community != nil { + nestedProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.Community = &ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchCommunity{} + if oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.Community.Misc != nil { + entry.Misc["ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchCommunity"] = oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.Community.Misc + } + if oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.Community.Regex != nil { + nestedProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.Community.Regex = oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.Community.Regex + } + } + if oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.ExtendedCommunity != nil { + nestedProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.ExtendedCommunity = &ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchExtendedCommunity{} + if oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.ExtendedCommunity.Misc != nil { + entry.Misc["ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchExtendedCommunity"] = oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.ExtendedCommunity.Misc + } + if oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.ExtendedCommunity.Regex != nil { + nestedProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.ExtendedCommunity.Regex = oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.ExtendedCommunity.Regex + } + } + if oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.RouteTable != nil { + nestedProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.RouteTable = oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.RouteTable + } + if oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.Med != nil { + nestedProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.Med = oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.Med + } + if oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.AddressPrefix != nil { + nestedProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.AddressPrefix = []ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchAddressPrefix{} + for _, oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchAddressPrefix := range oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.AddressPrefix { + nestedProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchAddressPrefix := ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchAddressPrefix{} + if oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchAddressPrefix.Misc != nil { + entry.Misc["ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchAddressPrefix"] = oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchAddressPrefix.Misc + } + if oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchAddressPrefix.Name != "" { + nestedProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchAddressPrefix.Name = oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchAddressPrefix.Name + } + nestedProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.AddressPrefix = append(nestedProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.AddressPrefix, nestedProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchAddressPrefix) + } + } + if oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.Nexthop != nil { + nestedProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.Nexthop = util.MemToStr(oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.Nexthop) + } + if oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.FromPeer != nil { + nestedProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.FromPeer = util.MemToStr(oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Match.FromPeer) + } + } + if oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Name != "" { + nestedProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Name = oProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters.Name + } + nestedProtocolBgpPolicyConditionalAdvertisementPolicy.AdvertiseFilters = append(nestedProtocolBgpPolicyConditionalAdvertisementPolicy.AdvertiseFilters, nestedProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters) + } + } + if oProtocolBgpPolicyConditionalAdvertisementPolicy.Name != "" { + nestedProtocolBgpPolicyConditionalAdvertisementPolicy.Name = oProtocolBgpPolicyConditionalAdvertisementPolicy.Name + } nestedProtocol.Bgp.Policy.ConditionalAdvertisement.Policy = append(nestedProtocol.Bgp.Policy.ConditionalAdvertisement.Policy, nestedProtocolBgpPolicyConditionalAdvertisementPolicy) } } @@ -8113,9 +7685,6 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oProtocolBgpPolicyExportRules.Misc != nil { entry.Misc["ProtocolBgpPolicyExportRules"] = oProtocolBgpPolicyExportRules.Misc } - if oProtocolBgpPolicyExportRules.Enable != nil { - nestedProtocolBgpPolicyExportRules.Enable = util.AsBool(oProtocolBgpPolicyExportRules.Enable, nil) - } if oProtocolBgpPolicyExportRules.UsedBy != nil { nestedProtocolBgpPolicyExportRules.UsedBy = util.MemToStr(oProtocolBgpPolicyExportRules.UsedBy) } @@ -8124,24 +7693,6 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oProtocolBgpPolicyExportRules.Match.Misc != nil { entry.Misc["ProtocolBgpPolicyExportRulesMatch"] = oProtocolBgpPolicyExportRules.Match.Misc } - if oProtocolBgpPolicyExportRules.Match.Community != nil { - nestedProtocolBgpPolicyExportRules.Match.Community = &ProtocolBgpPolicyExportRulesMatchCommunity{} - if oProtocolBgpPolicyExportRules.Match.Community.Misc != nil { - entry.Misc["ProtocolBgpPolicyExportRulesMatchCommunity"] = oProtocolBgpPolicyExportRules.Match.Community.Misc - } - if oProtocolBgpPolicyExportRules.Match.Community.Regex != nil { - nestedProtocolBgpPolicyExportRules.Match.Community.Regex = oProtocolBgpPolicyExportRules.Match.Community.Regex - } - } - if oProtocolBgpPolicyExportRules.Match.ExtendedCommunity != nil { - nestedProtocolBgpPolicyExportRules.Match.ExtendedCommunity = &ProtocolBgpPolicyExportRulesMatchExtendedCommunity{} - if oProtocolBgpPolicyExportRules.Match.ExtendedCommunity.Misc != nil { - entry.Misc["ProtocolBgpPolicyExportRulesMatchExtendedCommunity"] = oProtocolBgpPolicyExportRules.Match.ExtendedCommunity.Misc - } - if oProtocolBgpPolicyExportRules.Match.ExtendedCommunity.Regex != nil { - nestedProtocolBgpPolicyExportRules.Match.ExtendedCommunity.Regex = oProtocolBgpPolicyExportRules.Match.ExtendedCommunity.Regex - } - } if oProtocolBgpPolicyExportRules.Match.RouteTable != nil { nestedProtocolBgpPolicyExportRules.Match.RouteTable = oProtocolBgpPolicyExportRules.Match.RouteTable } @@ -8179,6 +7730,24 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { nestedProtocolBgpPolicyExportRules.Match.AsPath.Regex = oProtocolBgpPolicyExportRules.Match.AsPath.Regex } } + if oProtocolBgpPolicyExportRules.Match.Community != nil { + nestedProtocolBgpPolicyExportRules.Match.Community = &ProtocolBgpPolicyExportRulesMatchCommunity{} + if oProtocolBgpPolicyExportRules.Match.Community.Misc != nil { + entry.Misc["ProtocolBgpPolicyExportRulesMatchCommunity"] = oProtocolBgpPolicyExportRules.Match.Community.Misc + } + if oProtocolBgpPolicyExportRules.Match.Community.Regex != nil { + nestedProtocolBgpPolicyExportRules.Match.Community.Regex = oProtocolBgpPolicyExportRules.Match.Community.Regex + } + } + if oProtocolBgpPolicyExportRules.Match.ExtendedCommunity != nil { + nestedProtocolBgpPolicyExportRules.Match.ExtendedCommunity = &ProtocolBgpPolicyExportRulesMatchExtendedCommunity{} + if oProtocolBgpPolicyExportRules.Match.ExtendedCommunity.Misc != nil { + entry.Misc["ProtocolBgpPolicyExportRulesMatchExtendedCommunity"] = oProtocolBgpPolicyExportRules.Match.ExtendedCommunity.Misc + } + if oProtocolBgpPolicyExportRules.Match.ExtendedCommunity.Regex != nil { + nestedProtocolBgpPolicyExportRules.Match.ExtendedCommunity.Regex = oProtocolBgpPolicyExportRules.Match.ExtendedCommunity.Regex + } + } } if oProtocolBgpPolicyExportRules.Action != nil { nestedProtocolBgpPolicyExportRules.Action = &ProtocolBgpPolicyExportRulesAction{} @@ -8201,20 +7770,14 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oProtocolBgpPolicyExportRules.Action.Allow.Update.Misc != nil { entry.Misc["ProtocolBgpPolicyExportRulesActionAllowUpdate"] = oProtocolBgpPolicyExportRules.Action.Allow.Update.Misc } + if oProtocolBgpPolicyExportRules.Action.Allow.Update.AsPathLimit != nil { + nestedProtocolBgpPolicyExportRules.Action.Allow.Update.AsPathLimit = oProtocolBgpPolicyExportRules.Action.Allow.Update.AsPathLimit + } if oProtocolBgpPolicyExportRules.Action.Allow.Update.AsPath != nil { nestedProtocolBgpPolicyExportRules.Action.Allow.Update.AsPath = &ProtocolBgpPolicyExportRulesActionAllowUpdateAsPath{} if oProtocolBgpPolicyExportRules.Action.Allow.Update.AsPath.Misc != nil { entry.Misc["ProtocolBgpPolicyExportRulesActionAllowUpdateAsPath"] = oProtocolBgpPolicyExportRules.Action.Allow.Update.AsPath.Misc } - if oProtocolBgpPolicyExportRules.Action.Allow.Update.AsPath.RemoveAndPrepend != nil { - nestedProtocolBgpPolicyExportRules.Action.Allow.Update.AsPath.RemoveAndPrepend = oProtocolBgpPolicyExportRules.Action.Allow.Update.AsPath.RemoveAndPrepend - } - if oProtocolBgpPolicyExportRules.Action.Allow.Update.AsPath.None != nil { - nestedProtocolBgpPolicyExportRules.Action.Allow.Update.AsPath.None = &ProtocolBgpPolicyExportRulesActionAllowUpdateAsPathNone{} - if oProtocolBgpPolicyExportRules.Action.Allow.Update.AsPath.None.Misc != nil { - entry.Misc["ProtocolBgpPolicyExportRulesActionAllowUpdateAsPathNone"] = oProtocolBgpPolicyExportRules.Action.Allow.Update.AsPath.None.Misc - } - } if oProtocolBgpPolicyExportRules.Action.Allow.Update.AsPath.Remove != nil { nestedProtocolBgpPolicyExportRules.Action.Allow.Update.AsPath.Remove = &ProtocolBgpPolicyExportRulesActionAllowUpdateAsPathRemove{} if oProtocolBgpPolicyExportRules.Action.Allow.Update.AsPath.Remove.Misc != nil { @@ -8224,12 +7787,30 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oProtocolBgpPolicyExportRules.Action.Allow.Update.AsPath.Prepend != nil { nestedProtocolBgpPolicyExportRules.Action.Allow.Update.AsPath.Prepend = oProtocolBgpPolicyExportRules.Action.Allow.Update.AsPath.Prepend } + if oProtocolBgpPolicyExportRules.Action.Allow.Update.AsPath.RemoveAndPrepend != nil { + nestedProtocolBgpPolicyExportRules.Action.Allow.Update.AsPath.RemoveAndPrepend = oProtocolBgpPolicyExportRules.Action.Allow.Update.AsPath.RemoveAndPrepend + } + if oProtocolBgpPolicyExportRules.Action.Allow.Update.AsPath.None != nil { + nestedProtocolBgpPolicyExportRules.Action.Allow.Update.AsPath.None = &ProtocolBgpPolicyExportRulesActionAllowUpdateAsPathNone{} + if oProtocolBgpPolicyExportRules.Action.Allow.Update.AsPath.None.Misc != nil { + entry.Misc["ProtocolBgpPolicyExportRulesActionAllowUpdateAsPathNone"] = oProtocolBgpPolicyExportRules.Action.Allow.Update.AsPath.None.Misc + } + } } if oProtocolBgpPolicyExportRules.Action.Allow.Update.Community != nil { nestedProtocolBgpPolicyExportRules.Action.Allow.Update.Community = &ProtocolBgpPolicyExportRulesActionAllowUpdateCommunity{} if oProtocolBgpPolicyExportRules.Action.Allow.Update.Community.Misc != nil { entry.Misc["ProtocolBgpPolicyExportRulesActionAllowUpdateCommunity"] = oProtocolBgpPolicyExportRules.Action.Allow.Update.Community.Misc } + if oProtocolBgpPolicyExportRules.Action.Allow.Update.Community.Overwrite != nil { + nestedProtocolBgpPolicyExportRules.Action.Allow.Update.Community.Overwrite = util.MemToStr(oProtocolBgpPolicyExportRules.Action.Allow.Update.Community.Overwrite) + } + if oProtocolBgpPolicyExportRules.Action.Allow.Update.Community.None != nil { + nestedProtocolBgpPolicyExportRules.Action.Allow.Update.Community.None = &ProtocolBgpPolicyExportRulesActionAllowUpdateCommunityNone{} + if oProtocolBgpPolicyExportRules.Action.Allow.Update.Community.None.Misc != nil { + entry.Misc["ProtocolBgpPolicyExportRulesActionAllowUpdateCommunityNone"] = oProtocolBgpPolicyExportRules.Action.Allow.Update.Community.None.Misc + } + } if oProtocolBgpPolicyExportRules.Action.Allow.Update.Community.RemoveAll != nil { nestedProtocolBgpPolicyExportRules.Action.Allow.Update.Community.RemoveAll = &ProtocolBgpPolicyExportRulesActionAllowUpdateCommunityRemoveAll{} if oProtocolBgpPolicyExportRules.Action.Allow.Update.Community.RemoveAll.Misc != nil { @@ -8242,27 +7823,12 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oProtocolBgpPolicyExportRules.Action.Allow.Update.Community.Append != nil { nestedProtocolBgpPolicyExportRules.Action.Allow.Update.Community.Append = util.MemToStr(oProtocolBgpPolicyExportRules.Action.Allow.Update.Community.Append) } - if oProtocolBgpPolicyExportRules.Action.Allow.Update.Community.Overwrite != nil { - nestedProtocolBgpPolicyExportRules.Action.Allow.Update.Community.Overwrite = util.MemToStr(oProtocolBgpPolicyExportRules.Action.Allow.Update.Community.Overwrite) - } - if oProtocolBgpPolicyExportRules.Action.Allow.Update.Community.None != nil { - nestedProtocolBgpPolicyExportRules.Action.Allow.Update.Community.None = &ProtocolBgpPolicyExportRulesActionAllowUpdateCommunityNone{} - if oProtocolBgpPolicyExportRules.Action.Allow.Update.Community.None.Misc != nil { - entry.Misc["ProtocolBgpPolicyExportRulesActionAllowUpdateCommunityNone"] = oProtocolBgpPolicyExportRules.Action.Allow.Update.Community.None.Misc - } - } } if oProtocolBgpPolicyExportRules.Action.Allow.Update.ExtendedCommunity != nil { nestedProtocolBgpPolicyExportRules.Action.Allow.Update.ExtendedCommunity = &ProtocolBgpPolicyExportRulesActionAllowUpdateExtendedCommunity{} if oProtocolBgpPolicyExportRules.Action.Allow.Update.ExtendedCommunity.Misc != nil { entry.Misc["ProtocolBgpPolicyExportRulesActionAllowUpdateExtendedCommunity"] = oProtocolBgpPolicyExportRules.Action.Allow.Update.ExtendedCommunity.Misc } - if oProtocolBgpPolicyExportRules.Action.Allow.Update.ExtendedCommunity.None != nil { - nestedProtocolBgpPolicyExportRules.Action.Allow.Update.ExtendedCommunity.None = &ProtocolBgpPolicyExportRulesActionAllowUpdateExtendedCommunityNone{} - if oProtocolBgpPolicyExportRules.Action.Allow.Update.ExtendedCommunity.None.Misc != nil { - entry.Misc["ProtocolBgpPolicyExportRulesActionAllowUpdateExtendedCommunityNone"] = oProtocolBgpPolicyExportRules.Action.Allow.Update.ExtendedCommunity.None.Misc - } - } if oProtocolBgpPolicyExportRules.Action.Allow.Update.ExtendedCommunity.RemoveAll != nil { nestedProtocolBgpPolicyExportRules.Action.Allow.Update.ExtendedCommunity.RemoveAll = &ProtocolBgpPolicyExportRulesActionAllowUpdateExtendedCommunityRemoveAll{} if oProtocolBgpPolicyExportRules.Action.Allow.Update.ExtendedCommunity.RemoveAll.Misc != nil { @@ -8278,6 +7844,12 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oProtocolBgpPolicyExportRules.Action.Allow.Update.ExtendedCommunity.Overwrite != nil { nestedProtocolBgpPolicyExportRules.Action.Allow.Update.ExtendedCommunity.Overwrite = util.MemToStr(oProtocolBgpPolicyExportRules.Action.Allow.Update.ExtendedCommunity.Overwrite) } + if oProtocolBgpPolicyExportRules.Action.Allow.Update.ExtendedCommunity.None != nil { + nestedProtocolBgpPolicyExportRules.Action.Allow.Update.ExtendedCommunity.None = &ProtocolBgpPolicyExportRulesActionAllowUpdateExtendedCommunityNone{} + if oProtocolBgpPolicyExportRules.Action.Allow.Update.ExtendedCommunity.None.Misc != nil { + entry.Misc["ProtocolBgpPolicyExportRulesActionAllowUpdateExtendedCommunityNone"] = oProtocolBgpPolicyExportRules.Action.Allow.Update.ExtendedCommunity.None.Misc + } + } } if oProtocolBgpPolicyExportRules.Action.Allow.Update.LocalPreference != nil { nestedProtocolBgpPolicyExportRules.Action.Allow.Update.LocalPreference = oProtocolBgpPolicyExportRules.Action.Allow.Update.LocalPreference @@ -8291,15 +7863,15 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oProtocolBgpPolicyExportRules.Action.Allow.Update.Origin != nil { nestedProtocolBgpPolicyExportRules.Action.Allow.Update.Origin = oProtocolBgpPolicyExportRules.Action.Allow.Update.Origin } - if oProtocolBgpPolicyExportRules.Action.Allow.Update.AsPathLimit != nil { - nestedProtocolBgpPolicyExportRules.Action.Allow.Update.AsPathLimit = oProtocolBgpPolicyExportRules.Action.Allow.Update.AsPathLimit - } } } } if oProtocolBgpPolicyExportRules.Name != "" { nestedProtocolBgpPolicyExportRules.Name = oProtocolBgpPolicyExportRules.Name } + if oProtocolBgpPolicyExportRules.Enable != nil { + nestedProtocolBgpPolicyExportRules.Enable = util.AsBool(oProtocolBgpPolicyExportRules.Enable, nil) + } nestedProtocol.Bgp.Policy.Export.Rules = append(nestedProtocol.Bgp.Policy.Export.Rules, nestedProtocolBgpPolicyExportRules) } } @@ -8327,6 +7899,27 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oProtocolBgpPolicyImportRules.Match.Misc != nil { entry.Misc["ProtocolBgpPolicyImportRulesMatch"] = oProtocolBgpPolicyImportRules.Match.Misc } + if oProtocolBgpPolicyImportRules.Match.FromPeer != nil { + nestedProtocolBgpPolicyImportRules.Match.FromPeer = util.MemToStr(oProtocolBgpPolicyImportRules.Match.FromPeer) + } + if oProtocolBgpPolicyImportRules.Match.AsPath != nil { + nestedProtocolBgpPolicyImportRules.Match.AsPath = &ProtocolBgpPolicyImportRulesMatchAsPath{} + if oProtocolBgpPolicyImportRules.Match.AsPath.Misc != nil { + entry.Misc["ProtocolBgpPolicyImportRulesMatchAsPath"] = oProtocolBgpPolicyImportRules.Match.AsPath.Misc + } + if oProtocolBgpPolicyImportRules.Match.AsPath.Regex != nil { + nestedProtocolBgpPolicyImportRules.Match.AsPath.Regex = oProtocolBgpPolicyImportRules.Match.AsPath.Regex + } + } + if oProtocolBgpPolicyImportRules.Match.Community != nil { + nestedProtocolBgpPolicyImportRules.Match.Community = &ProtocolBgpPolicyImportRulesMatchCommunity{} + if oProtocolBgpPolicyImportRules.Match.Community.Misc != nil { + entry.Misc["ProtocolBgpPolicyImportRulesMatchCommunity"] = oProtocolBgpPolicyImportRules.Match.Community.Misc + } + if oProtocolBgpPolicyImportRules.Match.Community.Regex != nil { + nestedProtocolBgpPolicyImportRules.Match.Community.Regex = oProtocolBgpPolicyImportRules.Match.Community.Regex + } + } if oProtocolBgpPolicyImportRules.Match.ExtendedCommunity != nil { nestedProtocolBgpPolicyImportRules.Match.ExtendedCommunity = &ProtocolBgpPolicyImportRulesMatchExtendedCommunity{} if oProtocolBgpPolicyImportRules.Match.ExtendedCommunity.Misc != nil { @@ -8361,27 +7954,6 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oProtocolBgpPolicyImportRules.Match.Nexthop != nil { nestedProtocolBgpPolicyImportRules.Match.Nexthop = util.MemToStr(oProtocolBgpPolicyImportRules.Match.Nexthop) } - if oProtocolBgpPolicyImportRules.Match.FromPeer != nil { - nestedProtocolBgpPolicyImportRules.Match.FromPeer = util.MemToStr(oProtocolBgpPolicyImportRules.Match.FromPeer) - } - if oProtocolBgpPolicyImportRules.Match.AsPath != nil { - nestedProtocolBgpPolicyImportRules.Match.AsPath = &ProtocolBgpPolicyImportRulesMatchAsPath{} - if oProtocolBgpPolicyImportRules.Match.AsPath.Misc != nil { - entry.Misc["ProtocolBgpPolicyImportRulesMatchAsPath"] = oProtocolBgpPolicyImportRules.Match.AsPath.Misc - } - if oProtocolBgpPolicyImportRules.Match.AsPath.Regex != nil { - nestedProtocolBgpPolicyImportRules.Match.AsPath.Regex = oProtocolBgpPolicyImportRules.Match.AsPath.Regex - } - } - if oProtocolBgpPolicyImportRules.Match.Community != nil { - nestedProtocolBgpPolicyImportRules.Match.Community = &ProtocolBgpPolicyImportRulesMatchCommunity{} - if oProtocolBgpPolicyImportRules.Match.Community.Misc != nil { - entry.Misc["ProtocolBgpPolicyImportRulesMatchCommunity"] = oProtocolBgpPolicyImportRules.Match.Community.Misc - } - if oProtocolBgpPolicyImportRules.Match.Community.Regex != nil { - nestedProtocolBgpPolicyImportRules.Match.Community.Regex = oProtocolBgpPolicyImportRules.Match.Community.Regex - } - } } if oProtocolBgpPolicyImportRules.Action != nil { nestedProtocolBgpPolicyImportRules.Action = &ProtocolBgpPolicyImportRulesAction{} @@ -8399,16 +7971,13 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oProtocolBgpPolicyImportRules.Action.Allow.Misc != nil { entry.Misc["ProtocolBgpPolicyImportRulesActionAllow"] = oProtocolBgpPolicyImportRules.Action.Allow.Misc } - if oProtocolBgpPolicyImportRules.Action.Allow.Dampening != nil { - nestedProtocolBgpPolicyImportRules.Action.Allow.Dampening = oProtocolBgpPolicyImportRules.Action.Allow.Dampening - } if oProtocolBgpPolicyImportRules.Action.Allow.Update != nil { nestedProtocolBgpPolicyImportRules.Action.Allow.Update = &ProtocolBgpPolicyImportRulesActionAllowUpdate{} if oProtocolBgpPolicyImportRules.Action.Allow.Update.Misc != nil { entry.Misc["ProtocolBgpPolicyImportRulesActionAllowUpdate"] = oProtocolBgpPolicyImportRules.Action.Allow.Update.Misc } - if oProtocolBgpPolicyImportRules.Action.Allow.Update.Med != nil { - nestedProtocolBgpPolicyImportRules.Action.Allow.Update.Med = oProtocolBgpPolicyImportRules.Action.Allow.Update.Med + if oProtocolBgpPolicyImportRules.Action.Allow.Update.Weight != nil { + nestedProtocolBgpPolicyImportRules.Action.Allow.Update.Weight = oProtocolBgpPolicyImportRules.Action.Allow.Update.Weight } if oProtocolBgpPolicyImportRules.Action.Allow.Update.Origin != nil { nestedProtocolBgpPolicyImportRules.Action.Allow.Update.Origin = oProtocolBgpPolicyImportRules.Action.Allow.Update.Origin @@ -8416,33 +7985,6 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oProtocolBgpPolicyImportRules.Action.Allow.Update.AsPathLimit != nil { nestedProtocolBgpPolicyImportRules.Action.Allow.Update.AsPathLimit = oProtocolBgpPolicyImportRules.Action.Allow.Update.AsPathLimit } - if oProtocolBgpPolicyImportRules.Action.Allow.Update.Community != nil { - nestedProtocolBgpPolicyImportRules.Action.Allow.Update.Community = &ProtocolBgpPolicyImportRulesActionAllowUpdateCommunity{} - if oProtocolBgpPolicyImportRules.Action.Allow.Update.Community.Misc != nil { - entry.Misc["ProtocolBgpPolicyImportRulesActionAllowUpdateCommunity"] = oProtocolBgpPolicyImportRules.Action.Allow.Update.Community.Misc - } - if oProtocolBgpPolicyImportRules.Action.Allow.Update.Community.None != nil { - nestedProtocolBgpPolicyImportRules.Action.Allow.Update.Community.None = &ProtocolBgpPolicyImportRulesActionAllowUpdateCommunityNone{} - if oProtocolBgpPolicyImportRules.Action.Allow.Update.Community.None.Misc != nil { - entry.Misc["ProtocolBgpPolicyImportRulesActionAllowUpdateCommunityNone"] = oProtocolBgpPolicyImportRules.Action.Allow.Update.Community.None.Misc - } - } - if oProtocolBgpPolicyImportRules.Action.Allow.Update.Community.RemoveAll != nil { - nestedProtocolBgpPolicyImportRules.Action.Allow.Update.Community.RemoveAll = &ProtocolBgpPolicyImportRulesActionAllowUpdateCommunityRemoveAll{} - if oProtocolBgpPolicyImportRules.Action.Allow.Update.Community.RemoveAll.Misc != nil { - entry.Misc["ProtocolBgpPolicyImportRulesActionAllowUpdateCommunityRemoveAll"] = oProtocolBgpPolicyImportRules.Action.Allow.Update.Community.RemoveAll.Misc - } - } - if oProtocolBgpPolicyImportRules.Action.Allow.Update.Community.RemoveRegex != nil { - nestedProtocolBgpPolicyImportRules.Action.Allow.Update.Community.RemoveRegex = oProtocolBgpPolicyImportRules.Action.Allow.Update.Community.RemoveRegex - } - if oProtocolBgpPolicyImportRules.Action.Allow.Update.Community.Append != nil { - nestedProtocolBgpPolicyImportRules.Action.Allow.Update.Community.Append = util.MemToStr(oProtocolBgpPolicyImportRules.Action.Allow.Update.Community.Append) - } - if oProtocolBgpPolicyImportRules.Action.Allow.Update.Community.Overwrite != nil { - nestedProtocolBgpPolicyImportRules.Action.Allow.Update.Community.Overwrite = util.MemToStr(oProtocolBgpPolicyImportRules.Action.Allow.Update.Community.Overwrite) - } - } if oProtocolBgpPolicyImportRules.Action.Allow.Update.ExtendedCommunity != nil { nestedProtocolBgpPolicyImportRules.Action.Allow.Update.ExtendedCommunity = &ProtocolBgpPolicyImportRulesActionAllowUpdateExtendedCommunity{} if oProtocolBgpPolicyImportRules.Action.Allow.Update.ExtendedCommunity.Misc != nil { @@ -8473,8 +8015,8 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oProtocolBgpPolicyImportRules.Action.Allow.Update.LocalPreference != nil { nestedProtocolBgpPolicyImportRules.Action.Allow.Update.LocalPreference = oProtocolBgpPolicyImportRules.Action.Allow.Update.LocalPreference } - if oProtocolBgpPolicyImportRules.Action.Allow.Update.Weight != nil { - nestedProtocolBgpPolicyImportRules.Action.Allow.Update.Weight = oProtocolBgpPolicyImportRules.Action.Allow.Update.Weight + if oProtocolBgpPolicyImportRules.Action.Allow.Update.Med != nil { + nestedProtocolBgpPolicyImportRules.Action.Allow.Update.Med = oProtocolBgpPolicyImportRules.Action.Allow.Update.Med } if oProtocolBgpPolicyImportRules.Action.Allow.Update.Nexthop != nil { nestedProtocolBgpPolicyImportRules.Action.Allow.Update.Nexthop = oProtocolBgpPolicyImportRules.Action.Allow.Update.Nexthop @@ -8497,123 +8039,411 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { } } } + if oProtocolBgpPolicyImportRules.Action.Allow.Update.Community != nil { + nestedProtocolBgpPolicyImportRules.Action.Allow.Update.Community = &ProtocolBgpPolicyImportRulesActionAllowUpdateCommunity{} + if oProtocolBgpPolicyImportRules.Action.Allow.Update.Community.Misc != nil { + entry.Misc["ProtocolBgpPolicyImportRulesActionAllowUpdateCommunity"] = oProtocolBgpPolicyImportRules.Action.Allow.Update.Community.Misc + } + if oProtocolBgpPolicyImportRules.Action.Allow.Update.Community.RemoveAll != nil { + nestedProtocolBgpPolicyImportRules.Action.Allow.Update.Community.RemoveAll = &ProtocolBgpPolicyImportRulesActionAllowUpdateCommunityRemoveAll{} + if oProtocolBgpPolicyImportRules.Action.Allow.Update.Community.RemoveAll.Misc != nil { + entry.Misc["ProtocolBgpPolicyImportRulesActionAllowUpdateCommunityRemoveAll"] = oProtocolBgpPolicyImportRules.Action.Allow.Update.Community.RemoveAll.Misc + } + } + if oProtocolBgpPolicyImportRules.Action.Allow.Update.Community.RemoveRegex != nil { + nestedProtocolBgpPolicyImportRules.Action.Allow.Update.Community.RemoveRegex = oProtocolBgpPolicyImportRules.Action.Allow.Update.Community.RemoveRegex + } + if oProtocolBgpPolicyImportRules.Action.Allow.Update.Community.Append != nil { + nestedProtocolBgpPolicyImportRules.Action.Allow.Update.Community.Append = util.MemToStr(oProtocolBgpPolicyImportRules.Action.Allow.Update.Community.Append) + } + if oProtocolBgpPolicyImportRules.Action.Allow.Update.Community.Overwrite != nil { + nestedProtocolBgpPolicyImportRules.Action.Allow.Update.Community.Overwrite = util.MemToStr(oProtocolBgpPolicyImportRules.Action.Allow.Update.Community.Overwrite) + } + if oProtocolBgpPolicyImportRules.Action.Allow.Update.Community.None != nil { + nestedProtocolBgpPolicyImportRules.Action.Allow.Update.Community.None = &ProtocolBgpPolicyImportRulesActionAllowUpdateCommunityNone{} + if oProtocolBgpPolicyImportRules.Action.Allow.Update.Community.None.Misc != nil { + entry.Misc["ProtocolBgpPolicyImportRulesActionAllowUpdateCommunityNone"] = oProtocolBgpPolicyImportRules.Action.Allow.Update.Community.None.Misc + } + } + } + } + if oProtocolBgpPolicyImportRules.Action.Allow.Dampening != nil { + nestedProtocolBgpPolicyImportRules.Action.Allow.Dampening = oProtocolBgpPolicyImportRules.Action.Allow.Dampening + } + } + } + if oProtocolBgpPolicyImportRules.Name != "" { + nestedProtocolBgpPolicyImportRules.Name = oProtocolBgpPolicyImportRules.Name + } + nestedProtocol.Bgp.Policy.Import.Rules = append(nestedProtocol.Bgp.Policy.Import.Rules, nestedProtocolBgpPolicyImportRules) + } + } + } + } + if o.Protocol.Bgp.AuthProfile != nil { + nestedProtocol.Bgp.AuthProfile = []ProtocolBgpAuthProfile{} + for _, oProtocolBgpAuthProfile := range o.Protocol.Bgp.AuthProfile { + nestedProtocolBgpAuthProfile := ProtocolBgpAuthProfile{} + if oProtocolBgpAuthProfile.Misc != nil { + entry.Misc["ProtocolBgpAuthProfile"] = oProtocolBgpAuthProfile.Misc + } + if oProtocolBgpAuthProfile.Secret != nil { + nestedProtocolBgpAuthProfile.Secret = oProtocolBgpAuthProfile.Secret + } + if oProtocolBgpAuthProfile.Name != "" { + nestedProtocolBgpAuthProfile.Name = oProtocolBgpAuthProfile.Name + } + nestedProtocol.Bgp.AuthProfile = append(nestedProtocol.Bgp.AuthProfile, nestedProtocolBgpAuthProfile) + } + } + if o.Protocol.Bgp.Enable != nil { + nestedProtocol.Bgp.Enable = util.AsBool(o.Protocol.Bgp.Enable, nil) + } + } + if o.Protocol.Ospf != nil { + nestedProtocol.Ospf = &ProtocolOspf{} + if o.Protocol.Ospf.Misc != nil { + entry.Misc["ProtocolOspf"] = o.Protocol.Ospf.Misc + } + if o.Protocol.Ospf.Area != nil { + nestedProtocol.Ospf.Area = []ProtocolOspfArea{} + for _, oProtocolOspfArea := range o.Protocol.Ospf.Area { + nestedProtocolOspfArea := ProtocolOspfArea{} + if oProtocolOspfArea.Misc != nil { + entry.Misc["ProtocolOspfArea"] = oProtocolOspfArea.Misc + } + if oProtocolOspfArea.Type != nil { + nestedProtocolOspfArea.Type = &ProtocolOspfAreaType{} + if oProtocolOspfArea.Type.Misc != nil { + entry.Misc["ProtocolOspfAreaType"] = oProtocolOspfArea.Type.Misc + } + if oProtocolOspfArea.Type.Normal != nil { + nestedProtocolOspfArea.Type.Normal = &ProtocolOspfAreaTypeNormal{} + if oProtocolOspfArea.Type.Normal.Misc != nil { + entry.Misc["ProtocolOspfAreaTypeNormal"] = oProtocolOspfArea.Type.Normal.Misc + } + } + if oProtocolOspfArea.Type.Stub != nil { + nestedProtocolOspfArea.Type.Stub = &ProtocolOspfAreaTypeStub{} + if oProtocolOspfArea.Type.Stub.Misc != nil { + entry.Misc["ProtocolOspfAreaTypeStub"] = oProtocolOspfArea.Type.Stub.Misc + } + if oProtocolOspfArea.Type.Stub.AcceptSummary != nil { + nestedProtocolOspfArea.Type.Stub.AcceptSummary = util.AsBool(oProtocolOspfArea.Type.Stub.AcceptSummary, nil) + } + if oProtocolOspfArea.Type.Stub.DefaultRoute != nil { + nestedProtocolOspfArea.Type.Stub.DefaultRoute = &ProtocolOspfAreaTypeStubDefaultRoute{} + if oProtocolOspfArea.Type.Stub.DefaultRoute.Misc != nil { + entry.Misc["ProtocolOspfAreaTypeStubDefaultRoute"] = oProtocolOspfArea.Type.Stub.DefaultRoute.Misc + } + if oProtocolOspfArea.Type.Stub.DefaultRoute.Disable != nil { + nestedProtocolOspfArea.Type.Stub.DefaultRoute.Disable = &ProtocolOspfAreaTypeStubDefaultRouteDisable{} + if oProtocolOspfArea.Type.Stub.DefaultRoute.Disable.Misc != nil { + entry.Misc["ProtocolOspfAreaTypeStubDefaultRouteDisable"] = oProtocolOspfArea.Type.Stub.DefaultRoute.Disable.Misc + } + } + if oProtocolOspfArea.Type.Stub.DefaultRoute.Advertise != nil { + nestedProtocolOspfArea.Type.Stub.DefaultRoute.Advertise = &ProtocolOspfAreaTypeStubDefaultRouteAdvertise{} + if oProtocolOspfArea.Type.Stub.DefaultRoute.Advertise.Misc != nil { + entry.Misc["ProtocolOspfAreaTypeStubDefaultRouteAdvertise"] = oProtocolOspfArea.Type.Stub.DefaultRoute.Advertise.Misc + } + if oProtocolOspfArea.Type.Stub.DefaultRoute.Advertise.Metric != nil { + nestedProtocolOspfArea.Type.Stub.DefaultRoute.Advertise.Metric = oProtocolOspfArea.Type.Stub.DefaultRoute.Advertise.Metric + } + } + } + } + if oProtocolOspfArea.Type.Nssa != nil { + nestedProtocolOspfArea.Type.Nssa = &ProtocolOspfAreaTypeNssa{} + if oProtocolOspfArea.Type.Nssa.Misc != nil { + entry.Misc["ProtocolOspfAreaTypeNssa"] = oProtocolOspfArea.Type.Nssa.Misc + } + if oProtocolOspfArea.Type.Nssa.DefaultRoute != nil { + nestedProtocolOspfArea.Type.Nssa.DefaultRoute = &ProtocolOspfAreaTypeNssaDefaultRoute{} + if oProtocolOspfArea.Type.Nssa.DefaultRoute.Misc != nil { + entry.Misc["ProtocolOspfAreaTypeNssaDefaultRoute"] = oProtocolOspfArea.Type.Nssa.DefaultRoute.Misc + } + if oProtocolOspfArea.Type.Nssa.DefaultRoute.Advertise != nil { + nestedProtocolOspfArea.Type.Nssa.DefaultRoute.Advertise = &ProtocolOspfAreaTypeNssaDefaultRouteAdvertise{} + if oProtocolOspfArea.Type.Nssa.DefaultRoute.Advertise.Misc != nil { + entry.Misc["ProtocolOspfAreaTypeNssaDefaultRouteAdvertise"] = oProtocolOspfArea.Type.Nssa.DefaultRoute.Advertise.Misc + } + if oProtocolOspfArea.Type.Nssa.DefaultRoute.Advertise.Metric != nil { + nestedProtocolOspfArea.Type.Nssa.DefaultRoute.Advertise.Metric = oProtocolOspfArea.Type.Nssa.DefaultRoute.Advertise.Metric + } + if oProtocolOspfArea.Type.Nssa.DefaultRoute.Advertise.Type != nil { + nestedProtocolOspfArea.Type.Nssa.DefaultRoute.Advertise.Type = oProtocolOspfArea.Type.Nssa.DefaultRoute.Advertise.Type + } + } + if oProtocolOspfArea.Type.Nssa.DefaultRoute.Disable != nil { + nestedProtocolOspfArea.Type.Nssa.DefaultRoute.Disable = &ProtocolOspfAreaTypeNssaDefaultRouteDisable{} + if oProtocolOspfArea.Type.Nssa.DefaultRoute.Disable.Misc != nil { + entry.Misc["ProtocolOspfAreaTypeNssaDefaultRouteDisable"] = oProtocolOspfArea.Type.Nssa.DefaultRoute.Disable.Misc + } + } + } + if oProtocolOspfArea.Type.Nssa.NssaExtRange != nil { + nestedProtocolOspfArea.Type.Nssa.NssaExtRange = []ProtocolOspfAreaTypeNssaNssaExtRange{} + for _, oProtocolOspfAreaTypeNssaNssaExtRange := range oProtocolOspfArea.Type.Nssa.NssaExtRange { + nestedProtocolOspfAreaTypeNssaNssaExtRange := ProtocolOspfAreaTypeNssaNssaExtRange{} + if oProtocolOspfAreaTypeNssaNssaExtRange.Misc != nil { + entry.Misc["ProtocolOspfAreaTypeNssaNssaExtRange"] = oProtocolOspfAreaTypeNssaNssaExtRange.Misc + } + if oProtocolOspfAreaTypeNssaNssaExtRange.Name != "" { + nestedProtocolOspfAreaTypeNssaNssaExtRange.Name = oProtocolOspfAreaTypeNssaNssaExtRange.Name + } + if oProtocolOspfAreaTypeNssaNssaExtRange.Advertise != nil { + nestedProtocolOspfAreaTypeNssaNssaExtRange.Advertise = &ProtocolOspfAreaTypeNssaNssaExtRangeAdvertise{} + if oProtocolOspfAreaTypeNssaNssaExtRange.Advertise.Misc != nil { + entry.Misc["ProtocolOspfAreaTypeNssaNssaExtRangeAdvertise"] = oProtocolOspfAreaTypeNssaNssaExtRange.Advertise.Misc + } + } + if oProtocolOspfAreaTypeNssaNssaExtRange.Suppress != nil { + nestedProtocolOspfAreaTypeNssaNssaExtRange.Suppress = &ProtocolOspfAreaTypeNssaNssaExtRangeSuppress{} + if oProtocolOspfAreaTypeNssaNssaExtRange.Suppress.Misc != nil { + entry.Misc["ProtocolOspfAreaTypeNssaNssaExtRangeSuppress"] = oProtocolOspfAreaTypeNssaNssaExtRange.Suppress.Misc + } + } + nestedProtocolOspfArea.Type.Nssa.NssaExtRange = append(nestedProtocolOspfArea.Type.Nssa.NssaExtRange, nestedProtocolOspfAreaTypeNssaNssaExtRange) + } + } + if oProtocolOspfArea.Type.Nssa.AcceptSummary != nil { + nestedProtocolOspfArea.Type.Nssa.AcceptSummary = util.AsBool(oProtocolOspfArea.Type.Nssa.AcceptSummary, nil) + } + } + } + if oProtocolOspfArea.Range != nil { + nestedProtocolOspfArea.Range = []ProtocolOspfAreaRange{} + for _, oProtocolOspfAreaRange := range oProtocolOspfArea.Range { + nestedProtocolOspfAreaRange := ProtocolOspfAreaRange{} + if oProtocolOspfAreaRange.Misc != nil { + entry.Misc["ProtocolOspfAreaRange"] = oProtocolOspfAreaRange.Misc + } + if oProtocolOspfAreaRange.Name != "" { + nestedProtocolOspfAreaRange.Name = oProtocolOspfAreaRange.Name + } + if oProtocolOspfAreaRange.Advertise != nil { + nestedProtocolOspfAreaRange.Advertise = &ProtocolOspfAreaRangeAdvertise{} + if oProtocolOspfAreaRange.Advertise.Misc != nil { + entry.Misc["ProtocolOspfAreaRangeAdvertise"] = oProtocolOspfAreaRange.Advertise.Misc + } + } + if oProtocolOspfAreaRange.Suppress != nil { + nestedProtocolOspfAreaRange.Suppress = &ProtocolOspfAreaRangeSuppress{} + if oProtocolOspfAreaRange.Suppress.Misc != nil { + entry.Misc["ProtocolOspfAreaRangeSuppress"] = oProtocolOspfAreaRange.Suppress.Misc + } + } + nestedProtocolOspfArea.Range = append(nestedProtocolOspfArea.Range, nestedProtocolOspfAreaRange) + } + } + if oProtocolOspfArea.Interface != nil { + nestedProtocolOspfArea.Interface = []ProtocolOspfAreaInterface{} + for _, oProtocolOspfAreaInterface := range oProtocolOspfArea.Interface { + nestedProtocolOspfAreaInterface := ProtocolOspfAreaInterface{} + if oProtocolOspfAreaInterface.Misc != nil { + entry.Misc["ProtocolOspfAreaInterface"] = oProtocolOspfAreaInterface.Misc + } + if oProtocolOspfAreaInterface.GrDelay != nil { + nestedProtocolOspfAreaInterface.GrDelay = oProtocolOspfAreaInterface.GrDelay + } + if oProtocolOspfAreaInterface.Bfd != nil { + nestedProtocolOspfAreaInterface.Bfd = &ProtocolOspfAreaInterfaceBfd{} + if oProtocolOspfAreaInterface.Bfd.Misc != nil { + entry.Misc["ProtocolOspfAreaInterfaceBfd"] = oProtocolOspfAreaInterface.Bfd.Misc + } + if oProtocolOspfAreaInterface.Bfd.Profile != nil { + nestedProtocolOspfAreaInterface.Bfd.Profile = oProtocolOspfAreaInterface.Bfd.Profile + } + } + if oProtocolOspfAreaInterface.Name != "" { + nestedProtocolOspfAreaInterface.Name = oProtocolOspfAreaInterface.Name + } + if oProtocolOspfAreaInterface.Priority != nil { + nestedProtocolOspfAreaInterface.Priority = oProtocolOspfAreaInterface.Priority + } + if oProtocolOspfAreaInterface.RetransmitInterval != nil { + nestedProtocolOspfAreaInterface.RetransmitInterval = oProtocolOspfAreaInterface.RetransmitInterval + } + if oProtocolOspfAreaInterface.Authentication != nil { + nestedProtocolOspfAreaInterface.Authentication = oProtocolOspfAreaInterface.Authentication + } + if oProtocolOspfAreaInterface.Metric != nil { + nestedProtocolOspfAreaInterface.Metric = oProtocolOspfAreaInterface.Metric + } + if oProtocolOspfAreaInterface.Neighbor != nil { + nestedProtocolOspfAreaInterface.Neighbor = []ProtocolOspfAreaInterfaceNeighbor{} + for _, oProtocolOspfAreaInterfaceNeighbor := range oProtocolOspfAreaInterface.Neighbor { + nestedProtocolOspfAreaInterfaceNeighbor := ProtocolOspfAreaInterfaceNeighbor{} + if oProtocolOspfAreaInterfaceNeighbor.Misc != nil { + entry.Misc["ProtocolOspfAreaInterfaceNeighbor"] = oProtocolOspfAreaInterfaceNeighbor.Misc + } + if oProtocolOspfAreaInterfaceNeighbor.Name != "" { + nestedProtocolOspfAreaInterfaceNeighbor.Name = oProtocolOspfAreaInterfaceNeighbor.Name } + nestedProtocolOspfAreaInterface.Neighbor = append(nestedProtocolOspfAreaInterface.Neighbor, nestedProtocolOspfAreaInterfaceNeighbor) } } - if oProtocolBgpPolicyImportRules.Name != "" { - nestedProtocolBgpPolicyImportRules.Name = oProtocolBgpPolicyImportRules.Name + if oProtocolOspfAreaInterface.LinkType != nil { + nestedProtocolOspfAreaInterface.LinkType = &ProtocolOspfAreaInterfaceLinkType{} + if oProtocolOspfAreaInterface.LinkType.Misc != nil { + entry.Misc["ProtocolOspfAreaInterfaceLinkType"] = oProtocolOspfAreaInterface.LinkType.Misc + } + if oProtocolOspfAreaInterface.LinkType.Broadcast != nil { + nestedProtocolOspfAreaInterface.LinkType.Broadcast = &ProtocolOspfAreaInterfaceLinkTypeBroadcast{} + if oProtocolOspfAreaInterface.LinkType.Broadcast.Misc != nil { + entry.Misc["ProtocolOspfAreaInterfaceLinkTypeBroadcast"] = oProtocolOspfAreaInterface.LinkType.Broadcast.Misc + } + } + if oProtocolOspfAreaInterface.LinkType.P2p != nil { + nestedProtocolOspfAreaInterface.LinkType.P2p = &ProtocolOspfAreaInterfaceLinkTypeP2p{} + if oProtocolOspfAreaInterface.LinkType.P2p.Misc != nil { + entry.Misc["ProtocolOspfAreaInterfaceLinkTypeP2p"] = oProtocolOspfAreaInterface.LinkType.P2p.Misc + } + } + if oProtocolOspfAreaInterface.LinkType.P2mp != nil { + nestedProtocolOspfAreaInterface.LinkType.P2mp = &ProtocolOspfAreaInterfaceLinkTypeP2mp{} + if oProtocolOspfAreaInterface.LinkType.P2mp.Misc != nil { + entry.Misc["ProtocolOspfAreaInterfaceLinkTypeP2mp"] = oProtocolOspfAreaInterface.LinkType.P2mp.Misc + } + } } - nestedProtocol.Bgp.Policy.Import.Rules = append(nestedProtocol.Bgp.Policy.Import.Rules, nestedProtocolBgpPolicyImportRules) + if oProtocolOspfAreaInterface.Enable != nil { + nestedProtocolOspfAreaInterface.Enable = util.AsBool(oProtocolOspfAreaInterface.Enable, nil) + } + if oProtocolOspfAreaInterface.Passive != nil { + nestedProtocolOspfAreaInterface.Passive = util.AsBool(oProtocolOspfAreaInterface.Passive, nil) + } + if oProtocolOspfAreaInterface.HelloInterval != nil { + nestedProtocolOspfAreaInterface.HelloInterval = oProtocolOspfAreaInterface.HelloInterval + } + if oProtocolOspfAreaInterface.DeadCounts != nil { + nestedProtocolOspfAreaInterface.DeadCounts = oProtocolOspfAreaInterface.DeadCounts + } + if oProtocolOspfAreaInterface.TransitDelay != nil { + nestedProtocolOspfAreaInterface.TransitDelay = oProtocolOspfAreaInterface.TransitDelay + } + nestedProtocolOspfArea.Interface = append(nestedProtocolOspfArea.Interface, nestedProtocolOspfAreaInterface) } } - } - } - if o.Protocol.Bgp.AuthProfile != nil { - nestedProtocol.Bgp.AuthProfile = []ProtocolBgpAuthProfile{} - for _, oProtocolBgpAuthProfile := range o.Protocol.Bgp.AuthProfile { - nestedProtocolBgpAuthProfile := ProtocolBgpAuthProfile{} - if oProtocolBgpAuthProfile.Misc != nil { - entry.Misc["ProtocolBgpAuthProfile"] = oProtocolBgpAuthProfile.Misc - } - if oProtocolBgpAuthProfile.Secret != nil { - nestedProtocolBgpAuthProfile.Secret = oProtocolBgpAuthProfile.Secret + if oProtocolOspfArea.VirtualLink != nil { + nestedProtocolOspfArea.VirtualLink = []ProtocolOspfAreaVirtualLink{} + for _, oProtocolOspfAreaVirtualLink := range oProtocolOspfArea.VirtualLink { + nestedProtocolOspfAreaVirtualLink := ProtocolOspfAreaVirtualLink{} + if oProtocolOspfAreaVirtualLink.Misc != nil { + entry.Misc["ProtocolOspfAreaVirtualLink"] = oProtocolOspfAreaVirtualLink.Misc + } + if oProtocolOspfAreaVirtualLink.TransitDelay != nil { + nestedProtocolOspfAreaVirtualLink.TransitDelay = oProtocolOspfAreaVirtualLink.TransitDelay + } + if oProtocolOspfAreaVirtualLink.Authentication != nil { + nestedProtocolOspfAreaVirtualLink.Authentication = oProtocolOspfAreaVirtualLink.Authentication + } + if oProtocolOspfAreaVirtualLink.Name != "" { + nestedProtocolOspfAreaVirtualLink.Name = oProtocolOspfAreaVirtualLink.Name + } + if oProtocolOspfAreaVirtualLink.NeighborId != nil { + nestedProtocolOspfAreaVirtualLink.NeighborId = oProtocolOspfAreaVirtualLink.NeighborId + } + if oProtocolOspfAreaVirtualLink.TransitAreaId != nil { + nestedProtocolOspfAreaVirtualLink.TransitAreaId = oProtocolOspfAreaVirtualLink.TransitAreaId + } + if oProtocolOspfAreaVirtualLink.DeadCounts != nil { + nestedProtocolOspfAreaVirtualLink.DeadCounts = oProtocolOspfAreaVirtualLink.DeadCounts + } + if oProtocolOspfAreaVirtualLink.RetransmitInterval != nil { + nestedProtocolOspfAreaVirtualLink.RetransmitInterval = oProtocolOspfAreaVirtualLink.RetransmitInterval + } + if oProtocolOspfAreaVirtualLink.Enable != nil { + nestedProtocolOspfAreaVirtualLink.Enable = util.AsBool(oProtocolOspfAreaVirtualLink.Enable, nil) + } + if oProtocolOspfAreaVirtualLink.HelloInterval != nil { + nestedProtocolOspfAreaVirtualLink.HelloInterval = oProtocolOspfAreaVirtualLink.HelloInterval + } + if oProtocolOspfAreaVirtualLink.Bfd != nil { + nestedProtocolOspfAreaVirtualLink.Bfd = &ProtocolOspfAreaVirtualLinkBfd{} + if oProtocolOspfAreaVirtualLink.Bfd.Misc != nil { + entry.Misc["ProtocolOspfAreaVirtualLinkBfd"] = oProtocolOspfAreaVirtualLink.Bfd.Misc + } + if oProtocolOspfAreaVirtualLink.Bfd.Profile != nil { + nestedProtocolOspfAreaVirtualLink.Bfd.Profile = oProtocolOspfAreaVirtualLink.Bfd.Profile + } + } + nestedProtocolOspfArea.VirtualLink = append(nestedProtocolOspfArea.VirtualLink, nestedProtocolOspfAreaVirtualLink) + } } - if oProtocolBgpAuthProfile.Name != "" { - nestedProtocolBgpAuthProfile.Name = oProtocolBgpAuthProfile.Name + if oProtocolOspfArea.Name != "" { + nestedProtocolOspfArea.Name = oProtocolOspfArea.Name } - nestedProtocol.Bgp.AuthProfile = append(nestedProtocol.Bgp.AuthProfile, nestedProtocolBgpAuthProfile) + nestedProtocol.Ospf.Area = append(nestedProtocol.Ospf.Area, nestedProtocolOspfArea) } } - if o.Protocol.Bgp.Enable != nil { - nestedProtocol.Bgp.Enable = util.AsBool(o.Protocol.Bgp.Enable, nil) - } - if o.Protocol.Bgp.InstallRoute != nil { - nestedProtocol.Bgp.InstallRoute = util.AsBool(o.Protocol.Bgp.InstallRoute, nil) - } - if o.Protocol.Bgp.RoutingOptions != nil { - nestedProtocol.Bgp.RoutingOptions = &ProtocolBgpRoutingOptions{} - if o.Protocol.Bgp.RoutingOptions.Misc != nil { - entry.Misc["ProtocolBgpRoutingOptions"] = o.Protocol.Bgp.RoutingOptions.Misc - } - if o.Protocol.Bgp.RoutingOptions.Med != nil { - nestedProtocol.Bgp.RoutingOptions.Med = &ProtocolBgpRoutingOptionsMed{} - if o.Protocol.Bgp.RoutingOptions.Med.Misc != nil { - entry.Misc["ProtocolBgpRoutingOptionsMed"] = o.Protocol.Bgp.RoutingOptions.Med.Misc - } - if o.Protocol.Bgp.RoutingOptions.Med.AlwaysCompareMed != nil { - nestedProtocol.Bgp.RoutingOptions.Med.AlwaysCompareMed = util.AsBool(o.Protocol.Bgp.RoutingOptions.Med.AlwaysCompareMed, nil) + if o.Protocol.Ospf.AuthProfile != nil { + nestedProtocol.Ospf.AuthProfile = []ProtocolOspfAuthProfile{} + for _, oProtocolOspfAuthProfile := range o.Protocol.Ospf.AuthProfile { + nestedProtocolOspfAuthProfile := ProtocolOspfAuthProfile{} + if oProtocolOspfAuthProfile.Misc != nil { + entry.Misc["ProtocolOspfAuthProfile"] = oProtocolOspfAuthProfile.Misc } - if o.Protocol.Bgp.RoutingOptions.Med.DeterministicMedComparison != nil { - nestedProtocol.Bgp.RoutingOptions.Med.DeterministicMedComparison = util.AsBool(o.Protocol.Bgp.RoutingOptions.Med.DeterministicMedComparison, nil) + if oProtocolOspfAuthProfile.Name != "" { + nestedProtocolOspfAuthProfile.Name = oProtocolOspfAuthProfile.Name } - } - if o.Protocol.Bgp.RoutingOptions.ReflectorClusterId != nil { - nestedProtocol.Bgp.RoutingOptions.ReflectorClusterId = o.Protocol.Bgp.RoutingOptions.ReflectorClusterId - } - if o.Protocol.Bgp.RoutingOptions.Aggregate != nil { - nestedProtocol.Bgp.RoutingOptions.Aggregate = &ProtocolBgpRoutingOptionsAggregate{} - if o.Protocol.Bgp.RoutingOptions.Aggregate.Misc != nil { - entry.Misc["ProtocolBgpRoutingOptionsAggregate"] = o.Protocol.Bgp.RoutingOptions.Aggregate.Misc + if oProtocolOspfAuthProfile.Password != nil { + nestedProtocolOspfAuthProfile.Password = oProtocolOspfAuthProfile.Password } - if o.Protocol.Bgp.RoutingOptions.Aggregate.AggregateMed != nil { - nestedProtocol.Bgp.RoutingOptions.Aggregate.AggregateMed = util.AsBool(o.Protocol.Bgp.RoutingOptions.Aggregate.AggregateMed, nil) + if oProtocolOspfAuthProfile.Md5 != nil { + nestedProtocolOspfAuthProfile.Md5 = []ProtocolOspfAuthProfileMd5{} + for _, oProtocolOspfAuthProfileMd5 := range oProtocolOspfAuthProfile.Md5 { + nestedProtocolOspfAuthProfileMd5 := ProtocolOspfAuthProfileMd5{} + if oProtocolOspfAuthProfileMd5.Misc != nil { + entry.Misc["ProtocolOspfAuthProfileMd5"] = oProtocolOspfAuthProfileMd5.Misc + } + if oProtocolOspfAuthProfileMd5.Key != nil { + nestedProtocolOspfAuthProfileMd5.Key = oProtocolOspfAuthProfileMd5.Key + } + if oProtocolOspfAuthProfileMd5.Preferred != nil { + nestedProtocolOspfAuthProfileMd5.Preferred = util.AsBool(oProtocolOspfAuthProfileMd5.Preferred, nil) + } + if oProtocolOspfAuthProfileMd5.Name != "" { + nestedProtocolOspfAuthProfileMd5.Name = oProtocolOspfAuthProfileMd5.Name + } + nestedProtocolOspfAuthProfile.Md5 = append(nestedProtocolOspfAuthProfile.Md5, nestedProtocolOspfAuthProfileMd5) + } } + nestedProtocol.Ospf.AuthProfile = append(nestedProtocol.Ospf.AuthProfile, nestedProtocolOspfAuthProfile) } - if o.Protocol.Bgp.RoutingOptions.AsFormat != nil { - nestedProtocol.Bgp.RoutingOptions.AsFormat = o.Protocol.Bgp.RoutingOptions.AsFormat - } - if o.Protocol.Bgp.RoutingOptions.ConfederationMemberAs != nil { - nestedProtocol.Bgp.RoutingOptions.ConfederationMemberAs = o.Protocol.Bgp.RoutingOptions.ConfederationMemberAs - } - if o.Protocol.Bgp.RoutingOptions.DefaultLocalPreference != nil { - nestedProtocol.Bgp.RoutingOptions.DefaultLocalPreference = o.Protocol.Bgp.RoutingOptions.DefaultLocalPreference - } - if o.Protocol.Bgp.RoutingOptions.GracefulRestart != nil { - nestedProtocol.Bgp.RoutingOptions.GracefulRestart = &ProtocolBgpRoutingOptionsGracefulRestart{} - if o.Protocol.Bgp.RoutingOptions.GracefulRestart.Misc != nil { - entry.Misc["ProtocolBgpRoutingOptionsGracefulRestart"] = o.Protocol.Bgp.RoutingOptions.GracefulRestart.Misc + } + if o.Protocol.Ospf.ExportRules != nil { + nestedProtocol.Ospf.ExportRules = []ProtocolOspfExportRules{} + for _, oProtocolOspfExportRules := range o.Protocol.Ospf.ExportRules { + nestedProtocolOspfExportRules := ProtocolOspfExportRules{} + if oProtocolOspfExportRules.Misc != nil { + entry.Misc["ProtocolOspfExportRules"] = oProtocolOspfExportRules.Misc } - if o.Protocol.Bgp.RoutingOptions.GracefulRestart.Enable != nil { - nestedProtocol.Bgp.RoutingOptions.GracefulRestart.Enable = util.AsBool(o.Protocol.Bgp.RoutingOptions.GracefulRestart.Enable, nil) + if oProtocolOspfExportRules.NewTag != nil { + nestedProtocolOspfExportRules.NewTag = oProtocolOspfExportRules.NewTag } - if o.Protocol.Bgp.RoutingOptions.GracefulRestart.LocalRestartTime != nil { - nestedProtocol.Bgp.RoutingOptions.GracefulRestart.LocalRestartTime = o.Protocol.Bgp.RoutingOptions.GracefulRestart.LocalRestartTime + if oProtocolOspfExportRules.Metric != nil { + nestedProtocolOspfExportRules.Metric = oProtocolOspfExportRules.Metric } - if o.Protocol.Bgp.RoutingOptions.GracefulRestart.MaxPeerRestartTime != nil { - nestedProtocol.Bgp.RoutingOptions.GracefulRestart.MaxPeerRestartTime = o.Protocol.Bgp.RoutingOptions.GracefulRestart.MaxPeerRestartTime + if oProtocolOspfExportRules.Name != "" { + nestedProtocolOspfExportRules.Name = oProtocolOspfExportRules.Name } - if o.Protocol.Bgp.RoutingOptions.GracefulRestart.StaleRouteTime != nil { - nestedProtocol.Bgp.RoutingOptions.GracefulRestart.StaleRouteTime = o.Protocol.Bgp.RoutingOptions.GracefulRestart.StaleRouteTime + if oProtocolOspfExportRules.NewPathType != nil { + nestedProtocolOspfExportRules.NewPathType = oProtocolOspfExportRules.NewPathType } - } - } - if o.Protocol.Bgp.AllowRedistDefaultRoute != nil { - nestedProtocol.Bgp.AllowRedistDefaultRoute = util.AsBool(o.Protocol.Bgp.AllowRedistDefaultRoute, nil) - } - if o.Protocol.Bgp.EcmpMultiAs != nil { - nestedProtocol.Bgp.EcmpMultiAs = util.AsBool(o.Protocol.Bgp.EcmpMultiAs, nil) + nestedProtocol.Ospf.ExportRules = append(nestedProtocol.Ospf.ExportRules, nestedProtocolOspfExportRules) + } } - if o.Protocol.Bgp.GlobalBfd != nil { - nestedProtocol.Bgp.GlobalBfd = &ProtocolBgpGlobalBfd{} - if o.Protocol.Bgp.GlobalBfd.Misc != nil { - entry.Misc["ProtocolBgpGlobalBfd"] = o.Protocol.Bgp.GlobalBfd.Misc + if o.Protocol.Ospf.GlobalBfd != nil { + nestedProtocol.Ospf.GlobalBfd = &ProtocolOspfGlobalBfd{} + if o.Protocol.Ospf.GlobalBfd.Misc != nil { + entry.Misc["ProtocolOspfGlobalBfd"] = o.Protocol.Ospf.GlobalBfd.Misc } - if o.Protocol.Bgp.GlobalBfd.Profile != nil { - nestedProtocol.Bgp.GlobalBfd.Profile = o.Protocol.Bgp.GlobalBfd.Profile + if o.Protocol.Ospf.GlobalBfd.Profile != nil { + nestedProtocol.Ospf.GlobalBfd.Profile = o.Protocol.Ospf.GlobalBfd.Profile } } - if o.Protocol.Bgp.LocalAs != nil { - nestedProtocol.Bgp.LocalAs = o.Protocol.Bgp.LocalAs - } - if o.Protocol.Bgp.RouterId != nil { - nestedProtocol.Bgp.RouterId = o.Protocol.Bgp.RouterId - } - } - if o.Protocol.Ospf != nil { - nestedProtocol.Ospf = &ProtocolOspf{} - if o.Protocol.Ospf.Misc != nil { - entry.Misc["ProtocolOspf"] = o.Protocol.Ospf.Misc - } if o.Protocol.Ospf.RouterId != nil { nestedProtocol.Ospf.RouterId = o.Protocol.Ospf.RouterId } @@ -8629,378 +8459,548 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { nestedProtocol.Ospf.Timers.SpfCalculationDelay = o.Protocol.Ospf.Timers.SpfCalculationDelay } } - if o.Protocol.Ospf.Area != nil { - nestedProtocol.Ospf.Area = []ProtocolOspfArea{} - for _, oProtocolOspfArea := range o.Protocol.Ospf.Area { - nestedProtocolOspfArea := ProtocolOspfArea{} - if oProtocolOspfArea.Misc != nil { - entry.Misc["ProtocolOspfArea"] = oProtocolOspfArea.Misc + if o.Protocol.Ospf.AllowRedistDefaultRoute != nil { + nestedProtocol.Ospf.AllowRedistDefaultRoute = util.AsBool(o.Protocol.Ospf.AllowRedistDefaultRoute, nil) + } + if o.Protocol.Ospf.Enable != nil { + nestedProtocol.Ospf.Enable = util.AsBool(o.Protocol.Ospf.Enable, nil) + } + if o.Protocol.Ospf.GracefulRestart != nil { + nestedProtocol.Ospf.GracefulRestart = &ProtocolOspfGracefulRestart{} + if o.Protocol.Ospf.GracefulRestart.Misc != nil { + entry.Misc["ProtocolOspfGracefulRestart"] = o.Protocol.Ospf.GracefulRestart.Misc + } + if o.Protocol.Ospf.GracefulRestart.Enable != nil { + nestedProtocol.Ospf.GracefulRestart.Enable = util.AsBool(o.Protocol.Ospf.GracefulRestart.Enable, nil) + } + if o.Protocol.Ospf.GracefulRestart.GracePeriod != nil { + nestedProtocol.Ospf.GracefulRestart.GracePeriod = o.Protocol.Ospf.GracefulRestart.GracePeriod + } + if o.Protocol.Ospf.GracefulRestart.HelperEnable != nil { + nestedProtocol.Ospf.GracefulRestart.HelperEnable = util.AsBool(o.Protocol.Ospf.GracefulRestart.HelperEnable, nil) + } + if o.Protocol.Ospf.GracefulRestart.MaxNeighborRestartTime != nil { + nestedProtocol.Ospf.GracefulRestart.MaxNeighborRestartTime = o.Protocol.Ospf.GracefulRestart.MaxNeighborRestartTime + } + if o.Protocol.Ospf.GracefulRestart.StrictLSAChecking != nil { + nestedProtocol.Ospf.GracefulRestart.StrictLSAChecking = util.AsBool(o.Protocol.Ospf.GracefulRestart.StrictLSAChecking, nil) + } + } + if o.Protocol.Ospf.RejectDefaultRoute != nil { + nestedProtocol.Ospf.RejectDefaultRoute = util.AsBool(o.Protocol.Ospf.RejectDefaultRoute, nil) + } + if o.Protocol.Ospf.Rfc1583 != nil { + nestedProtocol.Ospf.Rfc1583 = util.AsBool(o.Protocol.Ospf.Rfc1583, nil) + } + } + if o.Protocol.Ospfv3 != nil { + nestedProtocol.Ospfv3 = &ProtocolOspfv3{} + if o.Protocol.Ospfv3.Misc != nil { + entry.Misc["ProtocolOspfv3"] = o.Protocol.Ospfv3.Misc + } + if o.Protocol.Ospfv3.Area != nil { + nestedProtocol.Ospfv3.Area = []ProtocolOspfv3Area{} + for _, oProtocolOspfv3Area := range o.Protocol.Ospfv3.Area { + nestedProtocolOspfv3Area := ProtocolOspfv3Area{} + if oProtocolOspfv3Area.Misc != nil { + entry.Misc["ProtocolOspfv3Area"] = oProtocolOspfv3Area.Misc } - if oProtocolOspfArea.VirtualLink != nil { - nestedProtocolOspfArea.VirtualLink = []ProtocolOspfAreaVirtualLink{} - for _, oProtocolOspfAreaVirtualLink := range oProtocolOspfArea.VirtualLink { - nestedProtocolOspfAreaVirtualLink := ProtocolOspfAreaVirtualLink{} - if oProtocolOspfAreaVirtualLink.Misc != nil { - entry.Misc["ProtocolOspfAreaVirtualLink"] = oProtocolOspfAreaVirtualLink.Misc + if oProtocolOspfv3Area.Authentication != nil { + nestedProtocolOspfv3Area.Authentication = oProtocolOspfv3Area.Authentication + } + if oProtocolOspfv3Area.Type != nil { + nestedProtocolOspfv3Area.Type = &ProtocolOspfv3AreaType{} + if oProtocolOspfv3Area.Type.Misc != nil { + entry.Misc["ProtocolOspfv3AreaType"] = oProtocolOspfv3Area.Type.Misc + } + if oProtocolOspfv3Area.Type.Normal != nil { + nestedProtocolOspfv3Area.Type.Normal = &ProtocolOspfv3AreaTypeNormal{} + if oProtocolOspfv3Area.Type.Normal.Misc != nil { + entry.Misc["ProtocolOspfv3AreaTypeNormal"] = oProtocolOspfv3Area.Type.Normal.Misc } - if oProtocolOspfAreaVirtualLink.NeighborId != nil { - nestedProtocolOspfAreaVirtualLink.NeighborId = oProtocolOspfAreaVirtualLink.NeighborId + } + if oProtocolOspfv3Area.Type.Stub != nil { + nestedProtocolOspfv3Area.Type.Stub = &ProtocolOspfv3AreaTypeStub{} + if oProtocolOspfv3Area.Type.Stub.Misc != nil { + entry.Misc["ProtocolOspfv3AreaTypeStub"] = oProtocolOspfv3Area.Type.Stub.Misc } - if oProtocolOspfAreaVirtualLink.DeadCounts != nil { - nestedProtocolOspfAreaVirtualLink.DeadCounts = oProtocolOspfAreaVirtualLink.DeadCounts + if oProtocolOspfv3Area.Type.Stub.AcceptSummary != nil { + nestedProtocolOspfv3Area.Type.Stub.AcceptSummary = util.AsBool(oProtocolOspfv3Area.Type.Stub.AcceptSummary, nil) + } + if oProtocolOspfv3Area.Type.Stub.DefaultRoute != nil { + nestedProtocolOspfv3Area.Type.Stub.DefaultRoute = &ProtocolOspfv3AreaTypeStubDefaultRoute{} + if oProtocolOspfv3Area.Type.Stub.DefaultRoute.Misc != nil { + entry.Misc["ProtocolOspfv3AreaTypeStubDefaultRoute"] = oProtocolOspfv3Area.Type.Stub.DefaultRoute.Misc + } + if oProtocolOspfv3Area.Type.Stub.DefaultRoute.Advertise != nil { + nestedProtocolOspfv3Area.Type.Stub.DefaultRoute.Advertise = &ProtocolOspfv3AreaTypeStubDefaultRouteAdvertise{} + if oProtocolOspfv3Area.Type.Stub.DefaultRoute.Advertise.Misc != nil { + entry.Misc["ProtocolOspfv3AreaTypeStubDefaultRouteAdvertise"] = oProtocolOspfv3Area.Type.Stub.DefaultRoute.Advertise.Misc + } + if oProtocolOspfv3Area.Type.Stub.DefaultRoute.Advertise.Metric != nil { + nestedProtocolOspfv3Area.Type.Stub.DefaultRoute.Advertise.Metric = oProtocolOspfv3Area.Type.Stub.DefaultRoute.Advertise.Metric + } + } + if oProtocolOspfv3Area.Type.Stub.DefaultRoute.Disable != nil { + nestedProtocolOspfv3Area.Type.Stub.DefaultRoute.Disable = &ProtocolOspfv3AreaTypeStubDefaultRouteDisable{} + if oProtocolOspfv3Area.Type.Stub.DefaultRoute.Disable.Misc != nil { + entry.Misc["ProtocolOspfv3AreaTypeStubDefaultRouteDisable"] = oProtocolOspfv3Area.Type.Stub.DefaultRoute.Disable.Misc + } + } + } + } + if oProtocolOspfv3Area.Type.Nssa != nil { + nestedProtocolOspfv3Area.Type.Nssa = &ProtocolOspfv3AreaTypeNssa{} + if oProtocolOspfv3Area.Type.Nssa.Misc != nil { + entry.Misc["ProtocolOspfv3AreaTypeNssa"] = oProtocolOspfv3Area.Type.Nssa.Misc + } + if oProtocolOspfv3Area.Type.Nssa.AcceptSummary != nil { + nestedProtocolOspfv3Area.Type.Nssa.AcceptSummary = util.AsBool(oProtocolOspfv3Area.Type.Nssa.AcceptSummary, nil) + } + if oProtocolOspfv3Area.Type.Nssa.DefaultRoute != nil { + nestedProtocolOspfv3Area.Type.Nssa.DefaultRoute = &ProtocolOspfv3AreaTypeNssaDefaultRoute{} + if oProtocolOspfv3Area.Type.Nssa.DefaultRoute.Misc != nil { + entry.Misc["ProtocolOspfv3AreaTypeNssaDefaultRoute"] = oProtocolOspfv3Area.Type.Nssa.DefaultRoute.Misc + } + if oProtocolOspfv3Area.Type.Nssa.DefaultRoute.Disable != nil { + nestedProtocolOspfv3Area.Type.Nssa.DefaultRoute.Disable = &ProtocolOspfv3AreaTypeNssaDefaultRouteDisable{} + if oProtocolOspfv3Area.Type.Nssa.DefaultRoute.Disable.Misc != nil { + entry.Misc["ProtocolOspfv3AreaTypeNssaDefaultRouteDisable"] = oProtocolOspfv3Area.Type.Nssa.DefaultRoute.Disable.Misc + } + } + if oProtocolOspfv3Area.Type.Nssa.DefaultRoute.Advertise != nil { + nestedProtocolOspfv3Area.Type.Nssa.DefaultRoute.Advertise = &ProtocolOspfv3AreaTypeNssaDefaultRouteAdvertise{} + if oProtocolOspfv3Area.Type.Nssa.DefaultRoute.Advertise.Misc != nil { + entry.Misc["ProtocolOspfv3AreaTypeNssaDefaultRouteAdvertise"] = oProtocolOspfv3Area.Type.Nssa.DefaultRoute.Advertise.Misc + } + if oProtocolOspfv3Area.Type.Nssa.DefaultRoute.Advertise.Metric != nil { + nestedProtocolOspfv3Area.Type.Nssa.DefaultRoute.Advertise.Metric = oProtocolOspfv3Area.Type.Nssa.DefaultRoute.Advertise.Metric + } + if oProtocolOspfv3Area.Type.Nssa.DefaultRoute.Advertise.Type != nil { + nestedProtocolOspfv3Area.Type.Nssa.DefaultRoute.Advertise.Type = oProtocolOspfv3Area.Type.Nssa.DefaultRoute.Advertise.Type + } + } + } + if oProtocolOspfv3Area.Type.Nssa.NssaExtRange != nil { + nestedProtocolOspfv3Area.Type.Nssa.NssaExtRange = []ProtocolOspfv3AreaTypeNssaNssaExtRange{} + for _, oProtocolOspfv3AreaTypeNssaNssaExtRange := range oProtocolOspfv3Area.Type.Nssa.NssaExtRange { + nestedProtocolOspfv3AreaTypeNssaNssaExtRange := ProtocolOspfv3AreaTypeNssaNssaExtRange{} + if oProtocolOspfv3AreaTypeNssaNssaExtRange.Misc != nil { + entry.Misc["ProtocolOspfv3AreaTypeNssaNssaExtRange"] = oProtocolOspfv3AreaTypeNssaNssaExtRange.Misc + } + if oProtocolOspfv3AreaTypeNssaNssaExtRange.Name != "" { + nestedProtocolOspfv3AreaTypeNssaNssaExtRange.Name = oProtocolOspfv3AreaTypeNssaNssaExtRange.Name + } + if oProtocolOspfv3AreaTypeNssaNssaExtRange.Advertise != nil { + nestedProtocolOspfv3AreaTypeNssaNssaExtRange.Advertise = &ProtocolOspfv3AreaTypeNssaNssaExtRangeAdvertise{} + if oProtocolOspfv3AreaTypeNssaNssaExtRange.Advertise.Misc != nil { + entry.Misc["ProtocolOspfv3AreaTypeNssaNssaExtRangeAdvertise"] = oProtocolOspfv3AreaTypeNssaNssaExtRange.Advertise.Misc + } + } + if oProtocolOspfv3AreaTypeNssaNssaExtRange.Suppress != nil { + nestedProtocolOspfv3AreaTypeNssaNssaExtRange.Suppress = &ProtocolOspfv3AreaTypeNssaNssaExtRangeSuppress{} + if oProtocolOspfv3AreaTypeNssaNssaExtRange.Suppress.Misc != nil { + entry.Misc["ProtocolOspfv3AreaTypeNssaNssaExtRangeSuppress"] = oProtocolOspfv3AreaTypeNssaNssaExtRange.Suppress.Misc + } + } + nestedProtocolOspfv3Area.Type.Nssa.NssaExtRange = append(nestedProtocolOspfv3Area.Type.Nssa.NssaExtRange, nestedProtocolOspfv3AreaTypeNssaNssaExtRange) + } + } + } + } + if oProtocolOspfv3Area.Range != nil { + nestedProtocolOspfv3Area.Range = []ProtocolOspfv3AreaRange{} + for _, oProtocolOspfv3AreaRange := range oProtocolOspfv3Area.Range { + nestedProtocolOspfv3AreaRange := ProtocolOspfv3AreaRange{} + if oProtocolOspfv3AreaRange.Misc != nil { + entry.Misc["ProtocolOspfv3AreaRange"] = oProtocolOspfv3AreaRange.Misc + } + if oProtocolOspfv3AreaRange.Name != "" { + nestedProtocolOspfv3AreaRange.Name = oProtocolOspfv3AreaRange.Name + } + if oProtocolOspfv3AreaRange.Advertise != nil { + nestedProtocolOspfv3AreaRange.Advertise = &ProtocolOspfv3AreaRangeAdvertise{} + if oProtocolOspfv3AreaRange.Advertise.Misc != nil { + entry.Misc["ProtocolOspfv3AreaRangeAdvertise"] = oProtocolOspfv3AreaRange.Advertise.Misc + } + } + if oProtocolOspfv3AreaRange.Suppress != nil { + nestedProtocolOspfv3AreaRange.Suppress = &ProtocolOspfv3AreaRangeSuppress{} + if oProtocolOspfv3AreaRange.Suppress.Misc != nil { + entry.Misc["ProtocolOspfv3AreaRangeSuppress"] = oProtocolOspfv3AreaRange.Suppress.Misc + } + } + nestedProtocolOspfv3Area.Range = append(nestedProtocolOspfv3Area.Range, nestedProtocolOspfv3AreaRange) + } + } + if oProtocolOspfv3Area.Interface != nil { + nestedProtocolOspfv3Area.Interface = []ProtocolOspfv3AreaInterface{} + for _, oProtocolOspfv3AreaInterface := range oProtocolOspfv3Area.Interface { + nestedProtocolOspfv3AreaInterface := ProtocolOspfv3AreaInterface{} + if oProtocolOspfv3AreaInterface.Misc != nil { + entry.Misc["ProtocolOspfv3AreaInterface"] = oProtocolOspfv3AreaInterface.Misc + } + if oProtocolOspfv3AreaInterface.Priority != nil { + nestedProtocolOspfv3AreaInterface.Priority = oProtocolOspfv3AreaInterface.Priority + } + if oProtocolOspfv3AreaInterface.RetransmitInterval != nil { + nestedProtocolOspfv3AreaInterface.RetransmitInterval = oProtocolOspfv3AreaInterface.RetransmitInterval + } + if oProtocolOspfv3AreaInterface.Authentication != nil { + nestedProtocolOspfv3AreaInterface.Authentication = oProtocolOspfv3AreaInterface.Authentication + } + if oProtocolOspfv3AreaInterface.Neighbor != nil { + nestedProtocolOspfv3AreaInterface.Neighbor = []ProtocolOspfv3AreaInterfaceNeighbor{} + for _, oProtocolOspfv3AreaInterfaceNeighbor := range oProtocolOspfv3AreaInterface.Neighbor { + nestedProtocolOspfv3AreaInterfaceNeighbor := ProtocolOspfv3AreaInterfaceNeighbor{} + if oProtocolOspfv3AreaInterfaceNeighbor.Misc != nil { + entry.Misc["ProtocolOspfv3AreaInterfaceNeighbor"] = oProtocolOspfv3AreaInterfaceNeighbor.Misc + } + if oProtocolOspfv3AreaInterfaceNeighbor.Name != "" { + nestedProtocolOspfv3AreaInterfaceNeighbor.Name = oProtocolOspfv3AreaInterfaceNeighbor.Name + } + nestedProtocolOspfv3AreaInterface.Neighbor = append(nestedProtocolOspfv3AreaInterface.Neighbor, nestedProtocolOspfv3AreaInterfaceNeighbor) + } + } + if oProtocolOspfv3AreaInterface.Bfd != nil { + nestedProtocolOspfv3AreaInterface.Bfd = &ProtocolOspfv3AreaInterfaceBfd{} + if oProtocolOspfv3AreaInterface.Bfd.Misc != nil { + entry.Misc["ProtocolOspfv3AreaInterfaceBfd"] = oProtocolOspfv3AreaInterface.Bfd.Misc + } + if oProtocolOspfv3AreaInterface.Bfd.Profile != nil { + nestedProtocolOspfv3AreaInterface.Bfd.Profile = oProtocolOspfv3AreaInterface.Bfd.Profile + } + } + if oProtocolOspfv3AreaInterface.DeadCounts != nil { + nestedProtocolOspfv3AreaInterface.DeadCounts = oProtocolOspfv3AreaInterface.DeadCounts + } + if oProtocolOspfv3AreaInterface.Passive != nil { + nestedProtocolOspfv3AreaInterface.Passive = util.AsBool(oProtocolOspfv3AreaInterface.Passive, nil) } - if oProtocolOspfAreaVirtualLink.Authentication != nil { - nestedProtocolOspfAreaVirtualLink.Authentication = oProtocolOspfAreaVirtualLink.Authentication + if oProtocolOspfv3AreaInterface.GrDelay != nil { + nestedProtocolOspfv3AreaInterface.GrDelay = oProtocolOspfv3AreaInterface.GrDelay } - if oProtocolOspfAreaVirtualLink.Bfd != nil { - nestedProtocolOspfAreaVirtualLink.Bfd = &ProtocolOspfAreaVirtualLinkBfd{} - if oProtocolOspfAreaVirtualLink.Bfd.Misc != nil { - entry.Misc["ProtocolOspfAreaVirtualLinkBfd"] = oProtocolOspfAreaVirtualLink.Bfd.Misc + if oProtocolOspfv3AreaInterface.LinkType != nil { + nestedProtocolOspfv3AreaInterface.LinkType = &ProtocolOspfv3AreaInterfaceLinkType{} + if oProtocolOspfv3AreaInterface.LinkType.Misc != nil { + entry.Misc["ProtocolOspfv3AreaInterfaceLinkType"] = oProtocolOspfv3AreaInterface.LinkType.Misc } - if oProtocolOspfAreaVirtualLink.Bfd.Profile != nil { - nestedProtocolOspfAreaVirtualLink.Bfd.Profile = oProtocolOspfAreaVirtualLink.Bfd.Profile + if oProtocolOspfv3AreaInterface.LinkType.Broadcast != nil { + nestedProtocolOspfv3AreaInterface.LinkType.Broadcast = &ProtocolOspfv3AreaInterfaceLinkTypeBroadcast{} + if oProtocolOspfv3AreaInterface.LinkType.Broadcast.Misc != nil { + entry.Misc["ProtocolOspfv3AreaInterfaceLinkTypeBroadcast"] = oProtocolOspfv3AreaInterface.LinkType.Broadcast.Misc + } + } + if oProtocolOspfv3AreaInterface.LinkType.P2p != nil { + nestedProtocolOspfv3AreaInterface.LinkType.P2p = &ProtocolOspfv3AreaInterfaceLinkTypeP2p{} + if oProtocolOspfv3AreaInterface.LinkType.P2p.Misc != nil { + entry.Misc["ProtocolOspfv3AreaInterfaceLinkTypeP2p"] = oProtocolOspfv3AreaInterface.LinkType.P2p.Misc + } + } + if oProtocolOspfv3AreaInterface.LinkType.P2mp != nil { + nestedProtocolOspfv3AreaInterface.LinkType.P2mp = &ProtocolOspfv3AreaInterfaceLinkTypeP2mp{} + if oProtocolOspfv3AreaInterface.LinkType.P2mp.Misc != nil { + entry.Misc["ProtocolOspfv3AreaInterfaceLinkTypeP2mp"] = oProtocolOspfv3AreaInterface.LinkType.P2mp.Misc + } } } - if oProtocolOspfAreaVirtualLink.TransitDelay != nil { - nestedProtocolOspfAreaVirtualLink.TransitDelay = oProtocolOspfAreaVirtualLink.TransitDelay + if oProtocolOspfv3AreaInterface.Enable != nil { + nestedProtocolOspfv3AreaInterface.Enable = util.AsBool(oProtocolOspfv3AreaInterface.Enable, nil) } - if oProtocolOspfAreaVirtualLink.Name != "" { - nestedProtocolOspfAreaVirtualLink.Name = oProtocolOspfAreaVirtualLink.Name + if oProtocolOspfv3AreaInterface.Metric != nil { + nestedProtocolOspfv3AreaInterface.Metric = oProtocolOspfv3AreaInterface.Metric } - if oProtocolOspfAreaVirtualLink.TransitAreaId != nil { - nestedProtocolOspfAreaVirtualLink.TransitAreaId = oProtocolOspfAreaVirtualLink.TransitAreaId + if oProtocolOspfv3AreaInterface.HelloInterval != nil { + nestedProtocolOspfv3AreaInterface.HelloInterval = oProtocolOspfv3AreaInterface.HelloInterval } - if oProtocolOspfAreaVirtualLink.Enable != nil { - nestedProtocolOspfAreaVirtualLink.Enable = util.AsBool(oProtocolOspfAreaVirtualLink.Enable, nil) + if oProtocolOspfv3AreaInterface.TransitDelay != nil { + nestedProtocolOspfv3AreaInterface.TransitDelay = oProtocolOspfv3AreaInterface.TransitDelay } - if oProtocolOspfAreaVirtualLink.HelloInterval != nil { - nestedProtocolOspfAreaVirtualLink.HelloInterval = oProtocolOspfAreaVirtualLink.HelloInterval + if oProtocolOspfv3AreaInterface.Name != "" { + nestedProtocolOspfv3AreaInterface.Name = oProtocolOspfv3AreaInterface.Name } - if oProtocolOspfAreaVirtualLink.RetransmitInterval != nil { - nestedProtocolOspfAreaVirtualLink.RetransmitInterval = oProtocolOspfAreaVirtualLink.RetransmitInterval + if oProtocolOspfv3AreaInterface.InstanceId != nil { + nestedProtocolOspfv3AreaInterface.InstanceId = oProtocolOspfv3AreaInterface.InstanceId } - nestedProtocolOspfArea.VirtualLink = append(nestedProtocolOspfArea.VirtualLink, nestedProtocolOspfAreaVirtualLink) + nestedProtocolOspfv3Area.Interface = append(nestedProtocolOspfv3Area.Interface, nestedProtocolOspfv3AreaInterface) } } - if oProtocolOspfArea.Name != "" { - nestedProtocolOspfArea.Name = oProtocolOspfArea.Name - } - if oProtocolOspfArea.Type != nil { - nestedProtocolOspfArea.Type = &ProtocolOspfAreaType{} - if oProtocolOspfArea.Type.Misc != nil { - entry.Misc["ProtocolOspfAreaType"] = oProtocolOspfArea.Type.Misc - } - if oProtocolOspfArea.Type.Normal != nil { - nestedProtocolOspfArea.Type.Normal = &ProtocolOspfAreaTypeNormal{} - if oProtocolOspfArea.Type.Normal.Misc != nil { - entry.Misc["ProtocolOspfAreaTypeNormal"] = oProtocolOspfArea.Type.Normal.Misc + if oProtocolOspfv3Area.VirtualLink != nil { + nestedProtocolOspfv3Area.VirtualLink = []ProtocolOspfv3AreaVirtualLink{} + for _, oProtocolOspfv3AreaVirtualLink := range oProtocolOspfv3Area.VirtualLink { + nestedProtocolOspfv3AreaVirtualLink := ProtocolOspfv3AreaVirtualLink{} + if oProtocolOspfv3AreaVirtualLink.Misc != nil { + entry.Misc["ProtocolOspfv3AreaVirtualLink"] = oProtocolOspfv3AreaVirtualLink.Misc } - } - if oProtocolOspfArea.Type.Stub != nil { - nestedProtocolOspfArea.Type.Stub = &ProtocolOspfAreaTypeStub{} - if oProtocolOspfArea.Type.Stub.Misc != nil { - entry.Misc["ProtocolOspfAreaTypeStub"] = oProtocolOspfArea.Type.Stub.Misc + if oProtocolOspfv3AreaVirtualLink.TransitDelay != nil { + nestedProtocolOspfv3AreaVirtualLink.TransitDelay = oProtocolOspfv3AreaVirtualLink.TransitDelay } - if oProtocolOspfArea.Type.Stub.DefaultRoute != nil { - nestedProtocolOspfArea.Type.Stub.DefaultRoute = &ProtocolOspfAreaTypeStubDefaultRoute{} - if oProtocolOspfArea.Type.Stub.DefaultRoute.Misc != nil { - entry.Misc["ProtocolOspfAreaTypeStubDefaultRoute"] = oProtocolOspfArea.Type.Stub.DefaultRoute.Misc - } - if oProtocolOspfArea.Type.Stub.DefaultRoute.Disable != nil { - nestedProtocolOspfArea.Type.Stub.DefaultRoute.Disable = &ProtocolOspfAreaTypeStubDefaultRouteDisable{} - if oProtocolOspfArea.Type.Stub.DefaultRoute.Disable.Misc != nil { - entry.Misc["ProtocolOspfAreaTypeStubDefaultRouteDisable"] = oProtocolOspfArea.Type.Stub.DefaultRoute.Disable.Misc - } + if oProtocolOspfv3AreaVirtualLink.Bfd != nil { + nestedProtocolOspfv3AreaVirtualLink.Bfd = &ProtocolOspfv3AreaVirtualLinkBfd{} + if oProtocolOspfv3AreaVirtualLink.Bfd.Misc != nil { + entry.Misc["ProtocolOspfv3AreaVirtualLinkBfd"] = oProtocolOspfv3AreaVirtualLink.Bfd.Misc } - if oProtocolOspfArea.Type.Stub.DefaultRoute.Advertise != nil { - nestedProtocolOspfArea.Type.Stub.DefaultRoute.Advertise = &ProtocolOspfAreaTypeStubDefaultRouteAdvertise{} - if oProtocolOspfArea.Type.Stub.DefaultRoute.Advertise.Misc != nil { - entry.Misc["ProtocolOspfAreaTypeStubDefaultRouteAdvertise"] = oProtocolOspfArea.Type.Stub.DefaultRoute.Advertise.Misc - } - if oProtocolOspfArea.Type.Stub.DefaultRoute.Advertise.Metric != nil { - nestedProtocolOspfArea.Type.Stub.DefaultRoute.Advertise.Metric = oProtocolOspfArea.Type.Stub.DefaultRoute.Advertise.Metric - } + if oProtocolOspfv3AreaVirtualLink.Bfd.Profile != nil { + nestedProtocolOspfv3AreaVirtualLink.Bfd.Profile = oProtocolOspfv3AreaVirtualLink.Bfd.Profile } } - if oProtocolOspfArea.Type.Stub.AcceptSummary != nil { - nestedProtocolOspfArea.Type.Stub.AcceptSummary = util.AsBool(oProtocolOspfArea.Type.Stub.AcceptSummary, nil) + if oProtocolOspfv3AreaVirtualLink.NeighborId != nil { + nestedProtocolOspfv3AreaVirtualLink.NeighborId = oProtocolOspfv3AreaVirtualLink.NeighborId } - } - if oProtocolOspfArea.Type.Nssa != nil { - nestedProtocolOspfArea.Type.Nssa = &ProtocolOspfAreaTypeNssa{} - if oProtocolOspfArea.Type.Nssa.Misc != nil { - entry.Misc["ProtocolOspfAreaTypeNssa"] = oProtocolOspfArea.Type.Nssa.Misc + if oProtocolOspfv3AreaVirtualLink.Enable != nil { + nestedProtocolOspfv3AreaVirtualLink.Enable = util.AsBool(oProtocolOspfv3AreaVirtualLink.Enable, nil) } - if oProtocolOspfArea.Type.Nssa.DefaultRoute != nil { - nestedProtocolOspfArea.Type.Nssa.DefaultRoute = &ProtocolOspfAreaTypeNssaDefaultRoute{} - if oProtocolOspfArea.Type.Nssa.DefaultRoute.Misc != nil { - entry.Misc["ProtocolOspfAreaTypeNssaDefaultRoute"] = oProtocolOspfArea.Type.Nssa.DefaultRoute.Misc - } - if oProtocolOspfArea.Type.Nssa.DefaultRoute.Disable != nil { - nestedProtocolOspfArea.Type.Nssa.DefaultRoute.Disable = &ProtocolOspfAreaTypeNssaDefaultRouteDisable{} - if oProtocolOspfArea.Type.Nssa.DefaultRoute.Disable.Misc != nil { - entry.Misc["ProtocolOspfAreaTypeNssaDefaultRouteDisable"] = oProtocolOspfArea.Type.Nssa.DefaultRoute.Disable.Misc - } - } - if oProtocolOspfArea.Type.Nssa.DefaultRoute.Advertise != nil { - nestedProtocolOspfArea.Type.Nssa.DefaultRoute.Advertise = &ProtocolOspfAreaTypeNssaDefaultRouteAdvertise{} - if oProtocolOspfArea.Type.Nssa.DefaultRoute.Advertise.Misc != nil { - entry.Misc["ProtocolOspfAreaTypeNssaDefaultRouteAdvertise"] = oProtocolOspfArea.Type.Nssa.DefaultRoute.Advertise.Misc - } - if oProtocolOspfArea.Type.Nssa.DefaultRoute.Advertise.Metric != nil { - nestedProtocolOspfArea.Type.Nssa.DefaultRoute.Advertise.Metric = oProtocolOspfArea.Type.Nssa.DefaultRoute.Advertise.Metric - } - if oProtocolOspfArea.Type.Nssa.DefaultRoute.Advertise.Type != nil { - nestedProtocolOspfArea.Type.Nssa.DefaultRoute.Advertise.Type = oProtocolOspfArea.Type.Nssa.DefaultRoute.Advertise.Type - } - } + if oProtocolOspfv3AreaVirtualLink.HelloInterval != nil { + nestedProtocolOspfv3AreaVirtualLink.HelloInterval = oProtocolOspfv3AreaVirtualLink.HelloInterval } - if oProtocolOspfArea.Type.Nssa.NssaExtRange != nil { - nestedProtocolOspfArea.Type.Nssa.NssaExtRange = []ProtocolOspfAreaTypeNssaNssaExtRange{} - for _, oProtocolOspfAreaTypeNssaNssaExtRange := range oProtocolOspfArea.Type.Nssa.NssaExtRange { - nestedProtocolOspfAreaTypeNssaNssaExtRange := ProtocolOspfAreaTypeNssaNssaExtRange{} - if oProtocolOspfAreaTypeNssaNssaExtRange.Misc != nil { - entry.Misc["ProtocolOspfAreaTypeNssaNssaExtRange"] = oProtocolOspfAreaTypeNssaNssaExtRange.Misc - } - if oProtocolOspfAreaTypeNssaNssaExtRange.Name != "" { - nestedProtocolOspfAreaTypeNssaNssaExtRange.Name = oProtocolOspfAreaTypeNssaNssaExtRange.Name - } - if oProtocolOspfAreaTypeNssaNssaExtRange.Advertise != nil { - nestedProtocolOspfAreaTypeNssaNssaExtRange.Advertise = &ProtocolOspfAreaTypeNssaNssaExtRangeAdvertise{} - if oProtocolOspfAreaTypeNssaNssaExtRange.Advertise.Misc != nil { - entry.Misc["ProtocolOspfAreaTypeNssaNssaExtRangeAdvertise"] = oProtocolOspfAreaTypeNssaNssaExtRange.Advertise.Misc - } - } - if oProtocolOspfAreaTypeNssaNssaExtRange.Suppress != nil { - nestedProtocolOspfAreaTypeNssaNssaExtRange.Suppress = &ProtocolOspfAreaTypeNssaNssaExtRangeSuppress{} - if oProtocolOspfAreaTypeNssaNssaExtRange.Suppress.Misc != nil { - entry.Misc["ProtocolOspfAreaTypeNssaNssaExtRangeSuppress"] = oProtocolOspfAreaTypeNssaNssaExtRange.Suppress.Misc - } - } - nestedProtocolOspfArea.Type.Nssa.NssaExtRange = append(nestedProtocolOspfArea.Type.Nssa.NssaExtRange, nestedProtocolOspfAreaTypeNssaNssaExtRange) - } + if oProtocolOspfv3AreaVirtualLink.RetransmitInterval != nil { + nestedProtocolOspfv3AreaVirtualLink.RetransmitInterval = oProtocolOspfv3AreaVirtualLink.RetransmitInterval + } + if oProtocolOspfv3AreaVirtualLink.Authentication != nil { + nestedProtocolOspfv3AreaVirtualLink.Authentication = oProtocolOspfv3AreaVirtualLink.Authentication + } + if oProtocolOspfv3AreaVirtualLink.Name != "" { + nestedProtocolOspfv3AreaVirtualLink.Name = oProtocolOspfv3AreaVirtualLink.Name + } + if oProtocolOspfv3AreaVirtualLink.TransitAreaId != nil { + nestedProtocolOspfv3AreaVirtualLink.TransitAreaId = oProtocolOspfv3AreaVirtualLink.TransitAreaId + } + if oProtocolOspfv3AreaVirtualLink.InstanceId != nil { + nestedProtocolOspfv3AreaVirtualLink.InstanceId = oProtocolOspfv3AreaVirtualLink.InstanceId + } + if oProtocolOspfv3AreaVirtualLink.DeadCounts != nil { + nestedProtocolOspfv3AreaVirtualLink.DeadCounts = oProtocolOspfv3AreaVirtualLink.DeadCounts + } + nestedProtocolOspfv3Area.VirtualLink = append(nestedProtocolOspfv3Area.VirtualLink, nestedProtocolOspfv3AreaVirtualLink) + } + } + if oProtocolOspfv3Area.Name != "" { + nestedProtocolOspfv3Area.Name = oProtocolOspfv3Area.Name + } + nestedProtocol.Ospfv3.Area = append(nestedProtocol.Ospfv3.Area, nestedProtocolOspfv3Area) + } + } + if o.Protocol.Ospfv3.DisableTransitTraffic != nil { + nestedProtocol.Ospfv3.DisableTransitTraffic = util.AsBool(o.Protocol.Ospfv3.DisableTransitTraffic, nil) + } + if o.Protocol.Ospfv3.Enable != nil { + nestedProtocol.Ospfv3.Enable = util.AsBool(o.Protocol.Ospfv3.Enable, nil) + } + if o.Protocol.Ospfv3.ExportRules != nil { + nestedProtocol.Ospfv3.ExportRules = []ProtocolOspfv3ExportRules{} + for _, oProtocolOspfv3ExportRules := range o.Protocol.Ospfv3.ExportRules { + nestedProtocolOspfv3ExportRules := ProtocolOspfv3ExportRules{} + if oProtocolOspfv3ExportRules.Misc != nil { + entry.Misc["ProtocolOspfv3ExportRules"] = oProtocolOspfv3ExportRules.Misc + } + if oProtocolOspfv3ExportRules.NewPathType != nil { + nestedProtocolOspfv3ExportRules.NewPathType = oProtocolOspfv3ExportRules.NewPathType + } + if oProtocolOspfv3ExportRules.NewTag != nil { + nestedProtocolOspfv3ExportRules.NewTag = oProtocolOspfv3ExportRules.NewTag + } + if oProtocolOspfv3ExportRules.Metric != nil { + nestedProtocolOspfv3ExportRules.Metric = oProtocolOspfv3ExportRules.Metric + } + if oProtocolOspfv3ExportRules.Name != "" { + nestedProtocolOspfv3ExportRules.Name = oProtocolOspfv3ExportRules.Name + } + nestedProtocol.Ospfv3.ExportRules = append(nestedProtocol.Ospfv3.ExportRules, nestedProtocolOspfv3ExportRules) + } + } + if o.Protocol.Ospfv3.GlobalBfd != nil { + nestedProtocol.Ospfv3.GlobalBfd = &ProtocolOspfv3GlobalBfd{} + if o.Protocol.Ospfv3.GlobalBfd.Misc != nil { + entry.Misc["ProtocolOspfv3GlobalBfd"] = o.Protocol.Ospfv3.GlobalBfd.Misc + } + if o.Protocol.Ospfv3.GlobalBfd.Profile != nil { + nestedProtocol.Ospfv3.GlobalBfd.Profile = o.Protocol.Ospfv3.GlobalBfd.Profile + } + } + if o.Protocol.Ospfv3.RejectDefaultRoute != nil { + nestedProtocol.Ospfv3.RejectDefaultRoute = util.AsBool(o.Protocol.Ospfv3.RejectDefaultRoute, nil) + } + if o.Protocol.Ospfv3.AllowRedistDefaultRoute != nil { + nestedProtocol.Ospfv3.AllowRedistDefaultRoute = util.AsBool(o.Protocol.Ospfv3.AllowRedistDefaultRoute, nil) + } + if o.Protocol.Ospfv3.AuthProfile != nil { + nestedProtocol.Ospfv3.AuthProfile = []ProtocolOspfv3AuthProfile{} + for _, oProtocolOspfv3AuthProfile := range o.Protocol.Ospfv3.AuthProfile { + nestedProtocolOspfv3AuthProfile := ProtocolOspfv3AuthProfile{} + if oProtocolOspfv3AuthProfile.Misc != nil { + entry.Misc["ProtocolOspfv3AuthProfile"] = oProtocolOspfv3AuthProfile.Misc + } + if oProtocolOspfv3AuthProfile.Spi != nil { + nestedProtocolOspfv3AuthProfile.Spi = oProtocolOspfv3AuthProfile.Spi + } + if oProtocolOspfv3AuthProfile.Name != "" { + nestedProtocolOspfv3AuthProfile.Name = oProtocolOspfv3AuthProfile.Name + } + if oProtocolOspfv3AuthProfile.Ah != nil { + nestedProtocolOspfv3AuthProfile.Ah = &ProtocolOspfv3AuthProfileAh{} + if oProtocolOspfv3AuthProfile.Ah.Misc != nil { + entry.Misc["ProtocolOspfv3AuthProfileAh"] = oProtocolOspfv3AuthProfile.Ah.Misc + } + if oProtocolOspfv3AuthProfile.Ah.Sha1 != nil { + nestedProtocolOspfv3AuthProfile.Ah.Sha1 = &ProtocolOspfv3AuthProfileAhSha1{} + if oProtocolOspfv3AuthProfile.Ah.Sha1.Misc != nil { + entry.Misc["ProtocolOspfv3AuthProfileAhSha1"] = oProtocolOspfv3AuthProfile.Ah.Sha1.Misc } - if oProtocolOspfArea.Type.Nssa.AcceptSummary != nil { - nestedProtocolOspfArea.Type.Nssa.AcceptSummary = util.AsBool(oProtocolOspfArea.Type.Nssa.AcceptSummary, nil) + if oProtocolOspfv3AuthProfile.Ah.Sha1.Key != nil { + nestedProtocolOspfv3AuthProfile.Ah.Sha1.Key = oProtocolOspfv3AuthProfile.Ah.Sha1.Key } } - } - if oProtocolOspfArea.Range != nil { - nestedProtocolOspfArea.Range = []ProtocolOspfAreaRange{} - for _, oProtocolOspfAreaRange := range oProtocolOspfArea.Range { - nestedProtocolOspfAreaRange := ProtocolOspfAreaRange{} - if oProtocolOspfAreaRange.Misc != nil { - entry.Misc["ProtocolOspfAreaRange"] = oProtocolOspfAreaRange.Misc + if oProtocolOspfv3AuthProfile.Ah.Sha256 != nil { + nestedProtocolOspfv3AuthProfile.Ah.Sha256 = &ProtocolOspfv3AuthProfileAhSha256{} + if oProtocolOspfv3AuthProfile.Ah.Sha256.Misc != nil { + entry.Misc["ProtocolOspfv3AuthProfileAhSha256"] = oProtocolOspfv3AuthProfile.Ah.Sha256.Misc } - if oProtocolOspfAreaRange.Name != "" { - nestedProtocolOspfAreaRange.Name = oProtocolOspfAreaRange.Name + if oProtocolOspfv3AuthProfile.Ah.Sha256.Key != nil { + nestedProtocolOspfv3AuthProfile.Ah.Sha256.Key = oProtocolOspfv3AuthProfile.Ah.Sha256.Key } - if oProtocolOspfAreaRange.Advertise != nil { - nestedProtocolOspfAreaRange.Advertise = &ProtocolOspfAreaRangeAdvertise{} - if oProtocolOspfAreaRange.Advertise.Misc != nil { - entry.Misc["ProtocolOspfAreaRangeAdvertise"] = oProtocolOspfAreaRange.Advertise.Misc - } + } + if oProtocolOspfv3AuthProfile.Ah.Sha384 != nil { + nestedProtocolOspfv3AuthProfile.Ah.Sha384 = &ProtocolOspfv3AuthProfileAhSha384{} + if oProtocolOspfv3AuthProfile.Ah.Sha384.Misc != nil { + entry.Misc["ProtocolOspfv3AuthProfileAhSha384"] = oProtocolOspfv3AuthProfile.Ah.Sha384.Misc } - if oProtocolOspfAreaRange.Suppress != nil { - nestedProtocolOspfAreaRange.Suppress = &ProtocolOspfAreaRangeSuppress{} - if oProtocolOspfAreaRange.Suppress.Misc != nil { - entry.Misc["ProtocolOspfAreaRangeSuppress"] = oProtocolOspfAreaRange.Suppress.Misc - } + if oProtocolOspfv3AuthProfile.Ah.Sha384.Key != nil { + nestedProtocolOspfv3AuthProfile.Ah.Sha384.Key = oProtocolOspfv3AuthProfile.Ah.Sha384.Key } - nestedProtocolOspfArea.Range = append(nestedProtocolOspfArea.Range, nestedProtocolOspfAreaRange) } - } - if oProtocolOspfArea.Interface != nil { - nestedProtocolOspfArea.Interface = []ProtocolOspfAreaInterface{} - for _, oProtocolOspfAreaInterface := range oProtocolOspfArea.Interface { - nestedProtocolOspfAreaInterface := ProtocolOspfAreaInterface{} - if oProtocolOspfAreaInterface.Misc != nil { - entry.Misc["ProtocolOspfAreaInterface"] = oProtocolOspfAreaInterface.Misc + if oProtocolOspfv3AuthProfile.Ah.Sha512 != nil { + nestedProtocolOspfv3AuthProfile.Ah.Sha512 = &ProtocolOspfv3AuthProfileAhSha512{} + if oProtocolOspfv3AuthProfile.Ah.Sha512.Misc != nil { + entry.Misc["ProtocolOspfv3AuthProfileAhSha512"] = oProtocolOspfv3AuthProfile.Ah.Sha512.Misc } - if oProtocolOspfAreaInterface.DeadCounts != nil { - nestedProtocolOspfAreaInterface.DeadCounts = oProtocolOspfAreaInterface.DeadCounts + if oProtocolOspfv3AuthProfile.Ah.Sha512.Key != nil { + nestedProtocolOspfv3AuthProfile.Ah.Sha512.Key = oProtocolOspfv3AuthProfile.Ah.Sha512.Key } - if oProtocolOspfAreaInterface.Neighbor != nil { - nestedProtocolOspfAreaInterface.Neighbor = []ProtocolOspfAreaInterfaceNeighbor{} - for _, oProtocolOspfAreaInterfaceNeighbor := range oProtocolOspfAreaInterface.Neighbor { - nestedProtocolOspfAreaInterfaceNeighbor := ProtocolOspfAreaInterfaceNeighbor{} - if oProtocolOspfAreaInterfaceNeighbor.Misc != nil { - entry.Misc["ProtocolOspfAreaInterfaceNeighbor"] = oProtocolOspfAreaInterfaceNeighbor.Misc - } - if oProtocolOspfAreaInterfaceNeighbor.Name != "" { - nestedProtocolOspfAreaInterfaceNeighbor.Name = oProtocolOspfAreaInterfaceNeighbor.Name - } - nestedProtocolOspfAreaInterface.Neighbor = append(nestedProtocolOspfAreaInterface.Neighbor, nestedProtocolOspfAreaInterfaceNeighbor) - } + } + if oProtocolOspfv3AuthProfile.Ah.Md5 != nil { + nestedProtocolOspfv3AuthProfile.Ah.Md5 = &ProtocolOspfv3AuthProfileAhMd5{} + if oProtocolOspfv3AuthProfile.Ah.Md5.Misc != nil { + entry.Misc["ProtocolOspfv3AuthProfileAhMd5"] = oProtocolOspfv3AuthProfile.Ah.Md5.Misc } - if oProtocolOspfAreaInterface.Name != "" { - nestedProtocolOspfAreaInterface.Name = oProtocolOspfAreaInterface.Name + if oProtocolOspfv3AuthProfile.Ah.Md5.Key != nil { + nestedProtocolOspfv3AuthProfile.Ah.Md5.Key = oProtocolOspfv3AuthProfile.Ah.Md5.Key } - if oProtocolOspfAreaInterface.Enable != nil { - nestedProtocolOspfAreaInterface.Enable = util.AsBool(oProtocolOspfAreaInterface.Enable, nil) + } + } + if oProtocolOspfv3AuthProfile.Esp != nil { + nestedProtocolOspfv3AuthProfile.Esp = &ProtocolOspfv3AuthProfileEsp{} + if oProtocolOspfv3AuthProfile.Esp.Misc != nil { + entry.Misc["ProtocolOspfv3AuthProfileEsp"] = oProtocolOspfv3AuthProfile.Esp.Misc + } + if oProtocolOspfv3AuthProfile.Esp.Authentication != nil { + nestedProtocolOspfv3AuthProfile.Esp.Authentication = &ProtocolOspfv3AuthProfileEspAuthentication{} + if oProtocolOspfv3AuthProfile.Esp.Authentication.Misc != nil { + entry.Misc["ProtocolOspfv3AuthProfileEspAuthentication"] = oProtocolOspfv3AuthProfile.Esp.Authentication.Misc } - if oProtocolOspfAreaInterface.RetransmitInterval != nil { - nestedProtocolOspfAreaInterface.RetransmitInterval = oProtocolOspfAreaInterface.RetransmitInterval + if oProtocolOspfv3AuthProfile.Esp.Authentication.None != nil { + nestedProtocolOspfv3AuthProfile.Esp.Authentication.None = &ProtocolOspfv3AuthProfileEspAuthenticationNone{} + if oProtocolOspfv3AuthProfile.Esp.Authentication.None.Misc != nil { + entry.Misc["ProtocolOspfv3AuthProfileEspAuthenticationNone"] = oProtocolOspfv3AuthProfile.Esp.Authentication.None.Misc + } } - if oProtocolOspfAreaInterface.LinkType != nil { - nestedProtocolOspfAreaInterface.LinkType = &ProtocolOspfAreaInterfaceLinkType{} - if oProtocolOspfAreaInterface.LinkType.Misc != nil { - entry.Misc["ProtocolOspfAreaInterfaceLinkType"] = oProtocolOspfAreaInterface.LinkType.Misc + if oProtocolOspfv3AuthProfile.Esp.Authentication.Md5 != nil { + nestedProtocolOspfv3AuthProfile.Esp.Authentication.Md5 = &ProtocolOspfv3AuthProfileEspAuthenticationMd5{} + if oProtocolOspfv3AuthProfile.Esp.Authentication.Md5.Misc != nil { + entry.Misc["ProtocolOspfv3AuthProfileEspAuthenticationMd5"] = oProtocolOspfv3AuthProfile.Esp.Authentication.Md5.Misc } - if oProtocolOspfAreaInterface.LinkType.P2mp != nil { - nestedProtocolOspfAreaInterface.LinkType.P2mp = &ProtocolOspfAreaInterfaceLinkTypeP2mp{} - if oProtocolOspfAreaInterface.LinkType.P2mp.Misc != nil { - entry.Misc["ProtocolOspfAreaInterfaceLinkTypeP2mp"] = oProtocolOspfAreaInterface.LinkType.P2mp.Misc - } + if oProtocolOspfv3AuthProfile.Esp.Authentication.Md5.Key != nil { + nestedProtocolOspfv3AuthProfile.Esp.Authentication.Md5.Key = oProtocolOspfv3AuthProfile.Esp.Authentication.Md5.Key } - if oProtocolOspfAreaInterface.LinkType.Broadcast != nil { - nestedProtocolOspfAreaInterface.LinkType.Broadcast = &ProtocolOspfAreaInterfaceLinkTypeBroadcast{} - if oProtocolOspfAreaInterface.LinkType.Broadcast.Misc != nil { - entry.Misc["ProtocolOspfAreaInterfaceLinkTypeBroadcast"] = oProtocolOspfAreaInterface.LinkType.Broadcast.Misc - } + } + if oProtocolOspfv3AuthProfile.Esp.Authentication.Sha1 != nil { + nestedProtocolOspfv3AuthProfile.Esp.Authentication.Sha1 = &ProtocolOspfv3AuthProfileEspAuthenticationSha1{} + if oProtocolOspfv3AuthProfile.Esp.Authentication.Sha1.Misc != nil { + entry.Misc["ProtocolOspfv3AuthProfileEspAuthenticationSha1"] = oProtocolOspfv3AuthProfile.Esp.Authentication.Sha1.Misc } - if oProtocolOspfAreaInterface.LinkType.P2p != nil { - nestedProtocolOspfAreaInterface.LinkType.P2p = &ProtocolOspfAreaInterfaceLinkTypeP2p{} - if oProtocolOspfAreaInterface.LinkType.P2p.Misc != nil { - entry.Misc["ProtocolOspfAreaInterfaceLinkTypeP2p"] = oProtocolOspfAreaInterface.LinkType.P2p.Misc - } + if oProtocolOspfv3AuthProfile.Esp.Authentication.Sha1.Key != nil { + nestedProtocolOspfv3AuthProfile.Esp.Authentication.Sha1.Key = oProtocolOspfv3AuthProfile.Esp.Authentication.Sha1.Key } } - if oProtocolOspfAreaInterface.Bfd != nil { - nestedProtocolOspfAreaInterface.Bfd = &ProtocolOspfAreaInterfaceBfd{} - if oProtocolOspfAreaInterface.Bfd.Misc != nil { - entry.Misc["ProtocolOspfAreaInterfaceBfd"] = oProtocolOspfAreaInterface.Bfd.Misc + if oProtocolOspfv3AuthProfile.Esp.Authentication.Sha256 != nil { + nestedProtocolOspfv3AuthProfile.Esp.Authentication.Sha256 = &ProtocolOspfv3AuthProfileEspAuthenticationSha256{} + if oProtocolOspfv3AuthProfile.Esp.Authentication.Sha256.Misc != nil { + entry.Misc["ProtocolOspfv3AuthProfileEspAuthenticationSha256"] = oProtocolOspfv3AuthProfile.Esp.Authentication.Sha256.Misc } - if oProtocolOspfAreaInterface.Bfd.Profile != nil { - nestedProtocolOspfAreaInterface.Bfd.Profile = oProtocolOspfAreaInterface.Bfd.Profile + if oProtocolOspfv3AuthProfile.Esp.Authentication.Sha256.Key != nil { + nestedProtocolOspfv3AuthProfile.Esp.Authentication.Sha256.Key = oProtocolOspfv3AuthProfile.Esp.Authentication.Sha256.Key } } - if oProtocolOspfAreaInterface.Passive != nil { - nestedProtocolOspfAreaInterface.Passive = util.AsBool(oProtocolOspfAreaInterface.Passive, nil) - } - if oProtocolOspfAreaInterface.TransitDelay != nil { - nestedProtocolOspfAreaInterface.TransitDelay = oProtocolOspfAreaInterface.TransitDelay - } - if oProtocolOspfAreaInterface.Metric != nil { - nestedProtocolOspfAreaInterface.Metric = oProtocolOspfAreaInterface.Metric - } - if oProtocolOspfAreaInterface.HelloInterval != nil { - nestedProtocolOspfAreaInterface.HelloInterval = oProtocolOspfAreaInterface.HelloInterval - } - if oProtocolOspfAreaInterface.Authentication != nil { - nestedProtocolOspfAreaInterface.Authentication = oProtocolOspfAreaInterface.Authentication - } - if oProtocolOspfAreaInterface.GrDelay != nil { - nestedProtocolOspfAreaInterface.GrDelay = oProtocolOspfAreaInterface.GrDelay + if oProtocolOspfv3AuthProfile.Esp.Authentication.Sha384 != nil { + nestedProtocolOspfv3AuthProfile.Esp.Authentication.Sha384 = &ProtocolOspfv3AuthProfileEspAuthenticationSha384{} + if oProtocolOspfv3AuthProfile.Esp.Authentication.Sha384.Misc != nil { + entry.Misc["ProtocolOspfv3AuthProfileEspAuthenticationSha384"] = oProtocolOspfv3AuthProfile.Esp.Authentication.Sha384.Misc + } + if oProtocolOspfv3AuthProfile.Esp.Authentication.Sha384.Key != nil { + nestedProtocolOspfv3AuthProfile.Esp.Authentication.Sha384.Key = oProtocolOspfv3AuthProfile.Esp.Authentication.Sha384.Key + } } - if oProtocolOspfAreaInterface.Priority != nil { - nestedProtocolOspfAreaInterface.Priority = oProtocolOspfAreaInterface.Priority + if oProtocolOspfv3AuthProfile.Esp.Authentication.Sha512 != nil { + nestedProtocolOspfv3AuthProfile.Esp.Authentication.Sha512 = &ProtocolOspfv3AuthProfileEspAuthenticationSha512{} + if oProtocolOspfv3AuthProfile.Esp.Authentication.Sha512.Misc != nil { + entry.Misc["ProtocolOspfv3AuthProfileEspAuthenticationSha512"] = oProtocolOspfv3AuthProfile.Esp.Authentication.Sha512.Misc + } + if oProtocolOspfv3AuthProfile.Esp.Authentication.Sha512.Key != nil { + nestedProtocolOspfv3AuthProfile.Esp.Authentication.Sha512.Key = oProtocolOspfv3AuthProfile.Esp.Authentication.Sha512.Key + } } - nestedProtocolOspfArea.Interface = append(nestedProtocolOspfArea.Interface, nestedProtocolOspfAreaInterface) } - } - nestedProtocol.Ospf.Area = append(nestedProtocol.Ospf.Area, nestedProtocolOspfArea) - } - } - if o.Protocol.Ospf.AuthProfile != nil { - nestedProtocol.Ospf.AuthProfile = []ProtocolOspfAuthProfile{} - for _, oProtocolOspfAuthProfile := range o.Protocol.Ospf.AuthProfile { - nestedProtocolOspfAuthProfile := ProtocolOspfAuthProfile{} - if oProtocolOspfAuthProfile.Misc != nil { - entry.Misc["ProtocolOspfAuthProfile"] = oProtocolOspfAuthProfile.Misc - } - if oProtocolOspfAuthProfile.Name != "" { - nestedProtocolOspfAuthProfile.Name = oProtocolOspfAuthProfile.Name - } - if oProtocolOspfAuthProfile.Password != nil { - nestedProtocolOspfAuthProfile.Password = oProtocolOspfAuthProfile.Password - } - if oProtocolOspfAuthProfile.Md5 != nil { - nestedProtocolOspfAuthProfile.Md5 = []ProtocolOspfAuthProfileMd5{} - for _, oProtocolOspfAuthProfileMd5 := range oProtocolOspfAuthProfile.Md5 { - nestedProtocolOspfAuthProfileMd5 := ProtocolOspfAuthProfileMd5{} - if oProtocolOspfAuthProfileMd5.Misc != nil { - entry.Misc["ProtocolOspfAuthProfileMd5"] = oProtocolOspfAuthProfileMd5.Misc - } - if oProtocolOspfAuthProfileMd5.Key != nil { - nestedProtocolOspfAuthProfileMd5.Key = oProtocolOspfAuthProfileMd5.Key + if oProtocolOspfv3AuthProfile.Esp.Encryption != nil { + nestedProtocolOspfv3AuthProfile.Esp.Encryption = &ProtocolOspfv3AuthProfileEspEncryption{} + if oProtocolOspfv3AuthProfile.Esp.Encryption.Misc != nil { + entry.Misc["ProtocolOspfv3AuthProfileEspEncryption"] = oProtocolOspfv3AuthProfile.Esp.Encryption.Misc } - if oProtocolOspfAuthProfileMd5.Preferred != nil { - nestedProtocolOspfAuthProfileMd5.Preferred = util.AsBool(oProtocolOspfAuthProfileMd5.Preferred, nil) + if oProtocolOspfv3AuthProfile.Esp.Encryption.Algorithm != nil { + nestedProtocolOspfv3AuthProfile.Esp.Encryption.Algorithm = oProtocolOspfv3AuthProfile.Esp.Encryption.Algorithm } - if oProtocolOspfAuthProfileMd5.Name != "" { - nestedProtocolOspfAuthProfileMd5.Name = oProtocolOspfAuthProfileMd5.Name + if oProtocolOspfv3AuthProfile.Esp.Encryption.Key != nil { + nestedProtocolOspfv3AuthProfile.Esp.Encryption.Key = oProtocolOspfv3AuthProfile.Esp.Encryption.Key } - nestedProtocolOspfAuthProfile.Md5 = append(nestedProtocolOspfAuthProfile.Md5, nestedProtocolOspfAuthProfileMd5) } } - nestedProtocol.Ospf.AuthProfile = append(nestedProtocol.Ospf.AuthProfile, nestedProtocolOspfAuthProfile) + nestedProtocol.Ospfv3.AuthProfile = append(nestedProtocol.Ospfv3.AuthProfile, nestedProtocolOspfv3AuthProfile) } } - if o.Protocol.Ospf.Enable != nil { - nestedProtocol.Ospf.Enable = util.AsBool(o.Protocol.Ospf.Enable, nil) - } - if o.Protocol.Ospf.ExportRules != nil { - nestedProtocol.Ospf.ExportRules = []ProtocolOspfExportRules{} - for _, oProtocolOspfExportRules := range o.Protocol.Ospf.ExportRules { - nestedProtocolOspfExportRules := ProtocolOspfExportRules{} - if oProtocolOspfExportRules.Misc != nil { - entry.Misc["ProtocolOspfExportRules"] = oProtocolOspfExportRules.Misc - } - if oProtocolOspfExportRules.Metric != nil { - nestedProtocolOspfExportRules.Metric = oProtocolOspfExportRules.Metric - } - if oProtocolOspfExportRules.Name != "" { - nestedProtocolOspfExportRules.Name = oProtocolOspfExportRules.Name - } - if oProtocolOspfExportRules.NewPathType != nil { - nestedProtocolOspfExportRules.NewPathType = oProtocolOspfExportRules.NewPathType - } - if oProtocolOspfExportRules.NewTag != nil { - nestedProtocolOspfExportRules.NewTag = oProtocolOspfExportRules.NewTag - } - nestedProtocol.Ospf.ExportRules = append(nestedProtocol.Ospf.ExportRules, nestedProtocolOspfExportRules) + if o.Protocol.Ospfv3.GracefulRestart != nil { + nestedProtocol.Ospfv3.GracefulRestart = &ProtocolOspfv3GracefulRestart{} + if o.Protocol.Ospfv3.GracefulRestart.Misc != nil { + entry.Misc["ProtocolOspfv3GracefulRestart"] = o.Protocol.Ospfv3.GracefulRestart.Misc } - } - if o.Protocol.Ospf.Rfc1583 != nil { - nestedProtocol.Ospf.Rfc1583 = util.AsBool(o.Protocol.Ospf.Rfc1583, nil) - } - if o.Protocol.Ospf.AllowRedistDefaultRoute != nil { - nestedProtocol.Ospf.AllowRedistDefaultRoute = util.AsBool(o.Protocol.Ospf.AllowRedistDefaultRoute, nil) - } - if o.Protocol.Ospf.GlobalBfd != nil { - nestedProtocol.Ospf.GlobalBfd = &ProtocolOspfGlobalBfd{} - if o.Protocol.Ospf.GlobalBfd.Misc != nil { - entry.Misc["ProtocolOspfGlobalBfd"] = o.Protocol.Ospf.GlobalBfd.Misc + if o.Protocol.Ospfv3.GracefulRestart.Enable != nil { + nestedProtocol.Ospfv3.GracefulRestart.Enable = util.AsBool(o.Protocol.Ospfv3.GracefulRestart.Enable, nil) } - if o.Protocol.Ospf.GlobalBfd.Profile != nil { - nestedProtocol.Ospf.GlobalBfd.Profile = o.Protocol.Ospf.GlobalBfd.Profile + if o.Protocol.Ospfv3.GracefulRestart.GracePeriod != nil { + nestedProtocol.Ospfv3.GracefulRestart.GracePeriod = o.Protocol.Ospfv3.GracefulRestart.GracePeriod } - } - if o.Protocol.Ospf.GracefulRestart != nil { - nestedProtocol.Ospf.GracefulRestart = &ProtocolOspfGracefulRestart{} - if o.Protocol.Ospf.GracefulRestart.Misc != nil { - entry.Misc["ProtocolOspfGracefulRestart"] = o.Protocol.Ospf.GracefulRestart.Misc + if o.Protocol.Ospfv3.GracefulRestart.HelperEnable != nil { + nestedProtocol.Ospfv3.GracefulRestart.HelperEnable = util.AsBool(o.Protocol.Ospfv3.GracefulRestart.HelperEnable, nil) } - if o.Protocol.Ospf.GracefulRestart.Enable != nil { - nestedProtocol.Ospf.GracefulRestart.Enable = util.AsBool(o.Protocol.Ospf.GracefulRestart.Enable, nil) + if o.Protocol.Ospfv3.GracefulRestart.MaxNeighborRestartTime != nil { + nestedProtocol.Ospfv3.GracefulRestart.MaxNeighborRestartTime = o.Protocol.Ospfv3.GracefulRestart.MaxNeighborRestartTime } - if o.Protocol.Ospf.GracefulRestart.GracePeriod != nil { - nestedProtocol.Ospf.GracefulRestart.GracePeriod = o.Protocol.Ospf.GracefulRestart.GracePeriod + if o.Protocol.Ospfv3.GracefulRestart.StrictLSAChecking != nil { + nestedProtocol.Ospfv3.GracefulRestart.StrictLSAChecking = util.AsBool(o.Protocol.Ospfv3.GracefulRestart.StrictLSAChecking, nil) } - if o.Protocol.Ospf.GracefulRestart.HelperEnable != nil { - nestedProtocol.Ospf.GracefulRestart.HelperEnable = util.AsBool(o.Protocol.Ospf.GracefulRestart.HelperEnable, nil) + } + if o.Protocol.Ospfv3.RouterId != nil { + nestedProtocol.Ospfv3.RouterId = o.Protocol.Ospfv3.RouterId + } + if o.Protocol.Ospfv3.Timers != nil { + nestedProtocol.Ospfv3.Timers = &ProtocolOspfv3Timers{} + if o.Protocol.Ospfv3.Timers.Misc != nil { + entry.Misc["ProtocolOspfv3Timers"] = o.Protocol.Ospfv3.Timers.Misc } - if o.Protocol.Ospf.GracefulRestart.MaxNeighborRestartTime != nil { - nestedProtocol.Ospf.GracefulRestart.MaxNeighborRestartTime = o.Protocol.Ospf.GracefulRestart.MaxNeighborRestartTime + if o.Protocol.Ospfv3.Timers.LsaInterval != nil { + nestedProtocol.Ospfv3.Timers.LsaInterval = o.Protocol.Ospfv3.Timers.LsaInterval } - if o.Protocol.Ospf.GracefulRestart.StrictLSAChecking != nil { - nestedProtocol.Ospf.GracefulRestart.StrictLSAChecking = util.AsBool(o.Protocol.Ospf.GracefulRestart.StrictLSAChecking, nil) + if o.Protocol.Ospfv3.Timers.SpfCalculationDelay != nil { + nestedProtocol.Ospfv3.Timers.SpfCalculationDelay = o.Protocol.Ospfv3.Timers.SpfCalculationDelay } } - if o.Protocol.Ospf.RejectDefaultRoute != nil { - nestedProtocol.Ospf.RejectDefaultRoute = util.AsBool(o.Protocol.Ospf.RejectDefaultRoute, nil) - } } } entry.Protocol = nestedProtocol @@ -9011,53 +9011,157 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.RoutingTable.Misc != nil { entry.Misc["RoutingTable"] = o.RoutingTable.Misc } - if o.RoutingTable.Ip != nil { - nestedRoutingTable.Ip = &RoutingTableIp{} - if o.RoutingTable.Ip.Misc != nil { - entry.Misc["RoutingTableIp"] = o.RoutingTable.Ip.Misc + if o.RoutingTable.Ipv6 != nil { + nestedRoutingTable.Ipv6 = &RoutingTableIpv6{} + if o.RoutingTable.Ipv6.Misc != nil { + entry.Misc["RoutingTableIpv6"] = o.RoutingTable.Ipv6.Misc } - if o.RoutingTable.Ip.StaticRoute != nil { - nestedRoutingTable.Ip.StaticRoute = []RoutingTableIpStaticRoute{} - for _, oRoutingTableIpStaticRoute := range o.RoutingTable.Ip.StaticRoute { - nestedRoutingTableIpStaticRoute := RoutingTableIpStaticRoute{} - if oRoutingTableIpStaticRoute.Misc != nil { - entry.Misc["RoutingTableIpStaticRoute"] = oRoutingTableIpStaticRoute.Misc + if o.RoutingTable.Ipv6.StaticRoute != nil { + nestedRoutingTable.Ipv6.StaticRoute = []RoutingTableIpv6StaticRoute{} + for _, oRoutingTableIpv6StaticRoute := range o.RoutingTable.Ipv6.StaticRoute { + nestedRoutingTableIpv6StaticRoute := RoutingTableIpv6StaticRoute{} + if oRoutingTableIpv6StaticRoute.Misc != nil { + entry.Misc["RoutingTableIpv6StaticRoute"] = oRoutingTableIpv6StaticRoute.Misc } - if oRoutingTableIpStaticRoute.Metric != nil { - nestedRoutingTableIpStaticRoute.Metric = oRoutingTableIpStaticRoute.Metric + if oRoutingTableIpv6StaticRoute.AdminDist != nil { + nestedRoutingTableIpv6StaticRoute.AdminDist = oRoutingTableIpv6StaticRoute.AdminDist } - if oRoutingTableIpStaticRoute.Nexthop != nil { - nestedRoutingTableIpStaticRoute.Nexthop = &RoutingTableIpStaticRouteNexthop{} - if oRoutingTableIpStaticRoute.Nexthop.Misc != nil { - entry.Misc["RoutingTableIpStaticRouteNexthop"] = oRoutingTableIpStaticRoute.Nexthop.Misc + if oRoutingTableIpv6StaticRoute.Metric != nil { + nestedRoutingTableIpv6StaticRoute.Metric = oRoutingTableIpv6StaticRoute.Metric + } + if oRoutingTableIpv6StaticRoute.Nexthop != nil { + nestedRoutingTableIpv6StaticRoute.Nexthop = &RoutingTableIpv6StaticRouteNexthop{} + if oRoutingTableIpv6StaticRoute.Nexthop.Misc != nil { + entry.Misc["RoutingTableIpv6StaticRouteNexthop"] = oRoutingTableIpv6StaticRoute.Nexthop.Misc } - if oRoutingTableIpStaticRoute.Nexthop.IpAddress != nil { - nestedRoutingTableIpStaticRoute.Nexthop.IpAddress = oRoutingTableIpStaticRoute.Nexthop.IpAddress + if oRoutingTableIpv6StaticRoute.Nexthop.Receive != nil { + nestedRoutingTableIpv6StaticRoute.Nexthop.Receive = &RoutingTableIpv6StaticRouteNexthopReceive{} + if oRoutingTableIpv6StaticRoute.Nexthop.Receive.Misc != nil { + entry.Misc["RoutingTableIpv6StaticRouteNexthopReceive"] = oRoutingTableIpv6StaticRoute.Nexthop.Receive.Misc + } } - if oRoutingTableIpStaticRoute.Nexthop.Fqdn != nil { - nestedRoutingTableIpStaticRoute.Nexthop.Fqdn = oRoutingTableIpStaticRoute.Nexthop.Fqdn + if oRoutingTableIpv6StaticRoute.Nexthop.Discard != nil { + nestedRoutingTableIpv6StaticRoute.Nexthop.Discard = &RoutingTableIpv6StaticRouteNexthopDiscard{} + if oRoutingTableIpv6StaticRoute.Nexthop.Discard.Misc != nil { + entry.Misc["RoutingTableIpv6StaticRouteNexthopDiscard"] = oRoutingTableIpv6StaticRoute.Nexthop.Discard.Misc + } } - if oRoutingTableIpStaticRoute.Nexthop.NextVr != nil { - nestedRoutingTableIpStaticRoute.Nexthop.NextVr = oRoutingTableIpStaticRoute.Nexthop.NextVr + if oRoutingTableIpv6StaticRoute.Nexthop.Ipv6Address != nil { + nestedRoutingTableIpv6StaticRoute.Nexthop.Ipv6Address = oRoutingTableIpv6StaticRoute.Nexthop.Ipv6Address } - if oRoutingTableIpStaticRoute.Nexthop.Receive != nil { - nestedRoutingTableIpStaticRoute.Nexthop.Receive = &RoutingTableIpStaticRouteNexthopReceive{} - if oRoutingTableIpStaticRoute.Nexthop.Receive.Misc != nil { - entry.Misc["RoutingTableIpStaticRouteNexthopReceive"] = oRoutingTableIpStaticRoute.Nexthop.Receive.Misc + if oRoutingTableIpv6StaticRoute.Nexthop.NextVr != nil { + nestedRoutingTableIpv6StaticRoute.Nexthop.NextVr = oRoutingTableIpv6StaticRoute.Nexthop.NextVr + } + } + if oRoutingTableIpv6StaticRoute.Option != nil { + nestedRoutingTableIpv6StaticRoute.Option = &RoutingTableIpv6StaticRouteOption{} + if oRoutingTableIpv6StaticRoute.Option.Misc != nil { + entry.Misc["RoutingTableIpv6StaticRouteOption"] = oRoutingTableIpv6StaticRoute.Option.Misc + } + } + if oRoutingTableIpv6StaticRoute.RouteTable != nil { + nestedRoutingTableIpv6StaticRoute.RouteTable = &RoutingTableIpv6StaticRouteRouteTable{} + if oRoutingTableIpv6StaticRoute.RouteTable.Misc != nil { + entry.Misc["RoutingTableIpv6StaticRouteRouteTable"] = oRoutingTableIpv6StaticRoute.RouteTable.Misc + } + if oRoutingTableIpv6StaticRoute.RouteTable.Unicast != nil { + nestedRoutingTableIpv6StaticRoute.RouteTable.Unicast = &RoutingTableIpv6StaticRouteRouteTableUnicast{} + if oRoutingTableIpv6StaticRoute.RouteTable.Unicast.Misc != nil { + entry.Misc["RoutingTableIpv6StaticRouteRouteTableUnicast"] = oRoutingTableIpv6StaticRoute.RouteTable.Unicast.Misc } } - if oRoutingTableIpStaticRoute.Nexthop.Discard != nil { - nestedRoutingTableIpStaticRoute.Nexthop.Discard = &RoutingTableIpStaticRouteNexthopDiscard{} - if oRoutingTableIpStaticRoute.Nexthop.Discard.Misc != nil { - entry.Misc["RoutingTableIpStaticRouteNexthopDiscard"] = oRoutingTableIpStaticRoute.Nexthop.Discard.Misc + if oRoutingTableIpv6StaticRoute.RouteTable.NoInstall != nil { + nestedRoutingTableIpv6StaticRoute.RouteTable.NoInstall = &RoutingTableIpv6StaticRouteRouteTableNoInstall{} + if oRoutingTableIpv6StaticRoute.RouteTable.NoInstall.Misc != nil { + entry.Misc["RoutingTableIpv6StaticRouteRouteTableNoInstall"] = oRoutingTableIpv6StaticRoute.RouteTable.NoInstall.Misc + } + } + } + if oRoutingTableIpv6StaticRoute.PathMonitor != nil { + nestedRoutingTableIpv6StaticRoute.PathMonitor = &RoutingTableIpv6StaticRoutePathMonitor{} + if oRoutingTableIpv6StaticRoute.PathMonitor.Misc != nil { + entry.Misc["RoutingTableIpv6StaticRoutePathMonitor"] = oRoutingTableIpv6StaticRoute.PathMonitor.Misc + } + if oRoutingTableIpv6StaticRoute.PathMonitor.HoldTime != nil { + nestedRoutingTableIpv6StaticRoute.PathMonitor.HoldTime = oRoutingTableIpv6StaticRoute.PathMonitor.HoldTime + } + if oRoutingTableIpv6StaticRoute.PathMonitor.MonitorDestinations != nil { + nestedRoutingTableIpv6StaticRoute.PathMonitor.MonitorDestinations = []RoutingTableIpv6StaticRoutePathMonitorMonitorDestinations{} + for _, oRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations := range oRoutingTableIpv6StaticRoute.PathMonitor.MonitorDestinations { + nestedRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations := RoutingTableIpv6StaticRoutePathMonitorMonitorDestinations{} + if oRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Misc != nil { + entry.Misc["RoutingTableIpv6StaticRoutePathMonitorMonitorDestinations"] = oRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Misc + } + if oRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Count != nil { + nestedRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Count = oRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Count + } + if oRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Name != "" { + nestedRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Name = oRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Name + } + if oRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Enable != nil { + nestedRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Enable = util.AsBool(oRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Enable, nil) + } + if oRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Source != nil { + nestedRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Source = oRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Source + } + if oRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Destination != nil { + nestedRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Destination = oRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Destination + } + if oRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Interval != nil { + nestedRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Interval = oRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Interval + } + nestedRoutingTableIpv6StaticRoute.PathMonitor.MonitorDestinations = append(nestedRoutingTableIpv6StaticRoute.PathMonitor.MonitorDestinations, nestedRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations) } } + if oRoutingTableIpv6StaticRoute.PathMonitor.Enable != nil { + nestedRoutingTableIpv6StaticRoute.PathMonitor.Enable = util.AsBool(oRoutingTableIpv6StaticRoute.PathMonitor.Enable, nil) + } + if oRoutingTableIpv6StaticRoute.PathMonitor.FailureCondition != nil { + nestedRoutingTableIpv6StaticRoute.PathMonitor.FailureCondition = oRoutingTableIpv6StaticRoute.PathMonitor.FailureCondition + } + } + if oRoutingTableIpv6StaticRoute.Destination != nil { + nestedRoutingTableIpv6StaticRoute.Destination = oRoutingTableIpv6StaticRoute.Destination + } + if oRoutingTableIpv6StaticRoute.Interface != nil { + nestedRoutingTableIpv6StaticRoute.Interface = oRoutingTableIpv6StaticRoute.Interface + } + if oRoutingTableIpv6StaticRoute.Bfd != nil { + nestedRoutingTableIpv6StaticRoute.Bfd = &RoutingTableIpv6StaticRouteBfd{} + if oRoutingTableIpv6StaticRoute.Bfd.Misc != nil { + entry.Misc["RoutingTableIpv6StaticRouteBfd"] = oRoutingTableIpv6StaticRoute.Bfd.Misc + } + if oRoutingTableIpv6StaticRoute.Bfd.Profile != nil { + nestedRoutingTableIpv6StaticRoute.Bfd.Profile = oRoutingTableIpv6StaticRoute.Bfd.Profile + } + } + if oRoutingTableIpv6StaticRoute.Name != "" { + nestedRoutingTableIpv6StaticRoute.Name = oRoutingTableIpv6StaticRoute.Name + } + nestedRoutingTable.Ipv6.StaticRoute = append(nestedRoutingTable.Ipv6.StaticRoute, nestedRoutingTableIpv6StaticRoute) + } + } + } + if o.RoutingTable.Ip != nil { + nestedRoutingTable.Ip = &RoutingTableIp{} + if o.RoutingTable.Ip.Misc != nil { + entry.Misc["RoutingTableIp"] = o.RoutingTable.Ip.Misc + } + if o.RoutingTable.Ip.StaticRoute != nil { + nestedRoutingTable.Ip.StaticRoute = []RoutingTableIpStaticRoute{} + for _, oRoutingTableIpStaticRoute := range o.RoutingTable.Ip.StaticRoute { + nestedRoutingTableIpStaticRoute := RoutingTableIpStaticRoute{} + if oRoutingTableIpStaticRoute.Misc != nil { + entry.Misc["RoutingTableIpStaticRoute"] = oRoutingTableIpStaticRoute.Misc } if oRoutingTableIpStaticRoute.PathMonitor != nil { nestedRoutingTableIpStaticRoute.PathMonitor = &RoutingTableIpStaticRoutePathMonitor{} if oRoutingTableIpStaticRoute.PathMonitor.Misc != nil { entry.Misc["RoutingTableIpStaticRoutePathMonitor"] = oRoutingTableIpStaticRoute.PathMonitor.Misc } + if oRoutingTableIpStaticRoute.PathMonitor.FailureCondition != nil { + nestedRoutingTableIpStaticRoute.PathMonitor.FailureCondition = oRoutingTableIpStaticRoute.PathMonitor.FailureCondition + } if oRoutingTableIpStaticRoute.PathMonitor.HoldTime != nil { nestedRoutingTableIpStaticRoute.PathMonitor.HoldTime = oRoutingTableIpStaticRoute.PathMonitor.HoldTime } @@ -9068,15 +9172,6 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Misc != nil { entry.Misc["RoutingTableIpStaticRoutePathMonitorMonitorDestinations"] = oRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Misc } - if oRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Count != nil { - nestedRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Count = oRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Count - } - if oRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Name != "" { - nestedRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Name = oRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Name - } - if oRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Enable != nil { - nestedRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Enable = util.AsBool(oRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Enable, nil) - } if oRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Source != nil { nestedRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Source = oRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Source } @@ -9086,44 +9181,56 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Interval != nil { nestedRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Interval = oRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Interval } + if oRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Count != nil { + nestedRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Count = oRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Count + } + if oRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Name != "" { + nestedRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Name = oRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Name + } + if oRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Enable != nil { + nestedRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Enable = util.AsBool(oRoutingTableIpStaticRoutePathMonitorMonitorDestinations.Enable, nil) + } nestedRoutingTableIpStaticRoute.PathMonitor.MonitorDestinations = append(nestedRoutingTableIpStaticRoute.PathMonitor.MonitorDestinations, nestedRoutingTableIpStaticRoutePathMonitorMonitorDestinations) } } if oRoutingTableIpStaticRoute.PathMonitor.Enable != nil { nestedRoutingTableIpStaticRoute.PathMonitor.Enable = util.AsBool(oRoutingTableIpStaticRoute.PathMonitor.Enable, nil) } - if oRoutingTableIpStaticRoute.PathMonitor.FailureCondition != nil { - nestedRoutingTableIpStaticRoute.PathMonitor.FailureCondition = oRoutingTableIpStaticRoute.PathMonitor.FailureCondition - } } - if oRoutingTableIpStaticRoute.RouteTable != nil { - nestedRoutingTableIpStaticRoute.RouteTable = &RoutingTableIpStaticRouteRouteTable{} - if oRoutingTableIpStaticRoute.RouteTable.Misc != nil { - entry.Misc["RoutingTableIpStaticRouteRouteTable"] = oRoutingTableIpStaticRoute.RouteTable.Misc - } - if oRoutingTableIpStaticRoute.RouteTable.NoInstall != nil { - nestedRoutingTableIpStaticRoute.RouteTable.NoInstall = &RoutingTableIpStaticRouteRouteTableNoInstall{} - if oRoutingTableIpStaticRoute.RouteTable.NoInstall.Misc != nil { - entry.Misc["RoutingTableIpStaticRouteRouteTableNoInstall"] = oRoutingTableIpStaticRoute.RouteTable.NoInstall.Misc - } + if oRoutingTableIpStaticRoute.Name != "" { + nestedRoutingTableIpStaticRoute.Name = oRoutingTableIpStaticRoute.Name + } + if oRoutingTableIpStaticRoute.Destination != nil { + nestedRoutingTableIpStaticRoute.Destination = oRoutingTableIpStaticRoute.Destination + } + if oRoutingTableIpStaticRoute.Metric != nil { + nestedRoutingTableIpStaticRoute.Metric = oRoutingTableIpStaticRoute.Metric + } + if oRoutingTableIpStaticRoute.Nexthop != nil { + nestedRoutingTableIpStaticRoute.Nexthop = &RoutingTableIpStaticRouteNexthop{} + if oRoutingTableIpStaticRoute.Nexthop.Misc != nil { + entry.Misc["RoutingTableIpStaticRouteNexthop"] = oRoutingTableIpStaticRoute.Nexthop.Misc } - if oRoutingTableIpStaticRoute.RouteTable.Unicast != nil { - nestedRoutingTableIpStaticRoute.RouteTable.Unicast = &RoutingTableIpStaticRouteRouteTableUnicast{} - if oRoutingTableIpStaticRoute.RouteTable.Unicast.Misc != nil { - entry.Misc["RoutingTableIpStaticRouteRouteTableUnicast"] = oRoutingTableIpStaticRoute.RouteTable.Unicast.Misc + if oRoutingTableIpStaticRoute.Nexthop.Receive != nil { + nestedRoutingTableIpStaticRoute.Nexthop.Receive = &RoutingTableIpStaticRouteNexthopReceive{} + if oRoutingTableIpStaticRoute.Nexthop.Receive.Misc != nil { + entry.Misc["RoutingTableIpStaticRouteNexthopReceive"] = oRoutingTableIpStaticRoute.Nexthop.Receive.Misc } } - if oRoutingTableIpStaticRoute.RouteTable.Multicast != nil { - nestedRoutingTableIpStaticRoute.RouteTable.Multicast = &RoutingTableIpStaticRouteRouteTableMulticast{} - if oRoutingTableIpStaticRoute.RouteTable.Multicast.Misc != nil { - entry.Misc["RoutingTableIpStaticRouteRouteTableMulticast"] = oRoutingTableIpStaticRoute.RouteTable.Multicast.Misc + if oRoutingTableIpStaticRoute.Nexthop.Discard != nil { + nestedRoutingTableIpStaticRoute.Nexthop.Discard = &RoutingTableIpStaticRouteNexthopDiscard{} + if oRoutingTableIpStaticRoute.Nexthop.Discard.Misc != nil { + entry.Misc["RoutingTableIpStaticRouteNexthopDiscard"] = oRoutingTableIpStaticRoute.Nexthop.Discard.Misc } } - if oRoutingTableIpStaticRoute.RouteTable.Both != nil { - nestedRoutingTableIpStaticRoute.RouteTable.Both = &RoutingTableIpStaticRouteRouteTableBoth{} - if oRoutingTableIpStaticRoute.RouteTable.Both.Misc != nil { - entry.Misc["RoutingTableIpStaticRouteRouteTableBoth"] = oRoutingTableIpStaticRoute.RouteTable.Both.Misc - } + if oRoutingTableIpStaticRoute.Nexthop.IpAddress != nil { + nestedRoutingTableIpStaticRoute.Nexthop.IpAddress = oRoutingTableIpStaticRoute.Nexthop.IpAddress + } + if oRoutingTableIpStaticRoute.Nexthop.Fqdn != nil { + nestedRoutingTableIpStaticRoute.Nexthop.Fqdn = oRoutingTableIpStaticRoute.Nexthop.Fqdn + } + if oRoutingTableIpStaticRoute.Nexthop.NextVr != nil { + nestedRoutingTableIpStaticRoute.Nexthop.NextVr = oRoutingTableIpStaticRoute.Nexthop.NextVr } } if oRoutingTableIpStaticRoute.Bfd != nil { @@ -9135,150 +9242,43 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { nestedRoutingTableIpStaticRoute.Bfd.Profile = oRoutingTableIpStaticRoute.Bfd.Profile } } - if oRoutingTableIpStaticRoute.Name != "" { - nestedRoutingTableIpStaticRoute.Name = oRoutingTableIpStaticRoute.Name - } - if oRoutingTableIpStaticRoute.Destination != nil { - nestedRoutingTableIpStaticRoute.Destination = oRoutingTableIpStaticRoute.Destination - } if oRoutingTableIpStaticRoute.Interface != nil { nestedRoutingTableIpStaticRoute.Interface = oRoutingTableIpStaticRoute.Interface } if oRoutingTableIpStaticRoute.AdminDist != nil { nestedRoutingTableIpStaticRoute.AdminDist = oRoutingTableIpStaticRoute.AdminDist } - nestedRoutingTable.Ip.StaticRoute = append(nestedRoutingTable.Ip.StaticRoute, nestedRoutingTableIpStaticRoute) - } - } - } - if o.RoutingTable.Ipv6 != nil { - nestedRoutingTable.Ipv6 = &RoutingTableIpv6{} - if o.RoutingTable.Ipv6.Misc != nil { - entry.Misc["RoutingTableIpv6"] = o.RoutingTable.Ipv6.Misc - } - if o.RoutingTable.Ipv6.StaticRoute != nil { - nestedRoutingTable.Ipv6.StaticRoute = []RoutingTableIpv6StaticRoute{} - for _, oRoutingTableIpv6StaticRoute := range o.RoutingTable.Ipv6.StaticRoute { - nestedRoutingTableIpv6StaticRoute := RoutingTableIpv6StaticRoute{} - if oRoutingTableIpv6StaticRoute.Misc != nil { - entry.Misc["RoutingTableIpv6StaticRoute"] = oRoutingTableIpv6StaticRoute.Misc - } - if oRoutingTableIpv6StaticRoute.Destination != nil { - nestedRoutingTableIpv6StaticRoute.Destination = oRoutingTableIpv6StaticRoute.Destination - } - if oRoutingTableIpv6StaticRoute.Metric != nil { - nestedRoutingTableIpv6StaticRoute.Metric = oRoutingTableIpv6StaticRoute.Metric - } - if oRoutingTableIpv6StaticRoute.Nexthop != nil { - nestedRoutingTableIpv6StaticRoute.Nexthop = &RoutingTableIpv6StaticRouteNexthop{} - if oRoutingTableIpv6StaticRoute.Nexthop.Misc != nil { - entry.Misc["RoutingTableIpv6StaticRouteNexthop"] = oRoutingTableIpv6StaticRoute.Nexthop.Misc - } - if oRoutingTableIpv6StaticRoute.Nexthop.Receive != nil { - nestedRoutingTableIpv6StaticRoute.Nexthop.Receive = &RoutingTableIpv6StaticRouteNexthopReceive{} - if oRoutingTableIpv6StaticRoute.Nexthop.Receive.Misc != nil { - entry.Misc["RoutingTableIpv6StaticRouteNexthopReceive"] = oRoutingTableIpv6StaticRoute.Nexthop.Receive.Misc - } + if oRoutingTableIpStaticRoute.RouteTable != nil { + nestedRoutingTableIpStaticRoute.RouteTable = &RoutingTableIpStaticRouteRouteTable{} + if oRoutingTableIpStaticRoute.RouteTable.Misc != nil { + entry.Misc["RoutingTableIpStaticRouteRouteTable"] = oRoutingTableIpStaticRoute.RouteTable.Misc } - if oRoutingTableIpv6StaticRoute.Nexthop.Discard != nil { - nestedRoutingTableIpv6StaticRoute.Nexthop.Discard = &RoutingTableIpv6StaticRouteNexthopDiscard{} - if oRoutingTableIpv6StaticRoute.Nexthop.Discard.Misc != nil { - entry.Misc["RoutingTableIpv6StaticRouteNexthopDiscard"] = oRoutingTableIpv6StaticRoute.Nexthop.Discard.Misc + if oRoutingTableIpStaticRoute.RouteTable.Unicast != nil { + nestedRoutingTableIpStaticRoute.RouteTable.Unicast = &RoutingTableIpStaticRouteRouteTableUnicast{} + if oRoutingTableIpStaticRoute.RouteTable.Unicast.Misc != nil { + entry.Misc["RoutingTableIpStaticRouteRouteTableUnicast"] = oRoutingTableIpStaticRoute.RouteTable.Unicast.Misc } } - if oRoutingTableIpv6StaticRoute.Nexthop.Ipv6Address != nil { - nestedRoutingTableIpv6StaticRoute.Nexthop.Ipv6Address = oRoutingTableIpv6StaticRoute.Nexthop.Ipv6Address - } - if oRoutingTableIpv6StaticRoute.Nexthop.NextVr != nil { - nestedRoutingTableIpv6StaticRoute.Nexthop.NextVr = oRoutingTableIpv6StaticRoute.Nexthop.NextVr - } - } - if oRoutingTableIpv6StaticRoute.PathMonitor != nil { - nestedRoutingTableIpv6StaticRoute.PathMonitor = &RoutingTableIpv6StaticRoutePathMonitor{} - if oRoutingTableIpv6StaticRoute.PathMonitor.Misc != nil { - entry.Misc["RoutingTableIpv6StaticRoutePathMonitor"] = oRoutingTableIpv6StaticRoute.PathMonitor.Misc - } - if oRoutingTableIpv6StaticRoute.PathMonitor.FailureCondition != nil { - nestedRoutingTableIpv6StaticRoute.PathMonitor.FailureCondition = oRoutingTableIpv6StaticRoute.PathMonitor.FailureCondition - } - if oRoutingTableIpv6StaticRoute.PathMonitor.HoldTime != nil { - nestedRoutingTableIpv6StaticRoute.PathMonitor.HoldTime = oRoutingTableIpv6StaticRoute.PathMonitor.HoldTime - } - if oRoutingTableIpv6StaticRoute.PathMonitor.MonitorDestinations != nil { - nestedRoutingTableIpv6StaticRoute.PathMonitor.MonitorDestinations = []RoutingTableIpv6StaticRoutePathMonitorMonitorDestinations{} - for _, oRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations := range oRoutingTableIpv6StaticRoute.PathMonitor.MonitorDestinations { - nestedRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations := RoutingTableIpv6StaticRoutePathMonitorMonitorDestinations{} - if oRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Misc != nil { - entry.Misc["RoutingTableIpv6StaticRoutePathMonitorMonitorDestinations"] = oRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Misc - } - if oRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Interval != nil { - nestedRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Interval = oRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Interval - } - if oRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Count != nil { - nestedRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Count = oRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Count - } - if oRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Name != "" { - nestedRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Name = oRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Name - } - if oRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Enable != nil { - nestedRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Enable = util.AsBool(oRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Enable, nil) - } - if oRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Source != nil { - nestedRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Source = oRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Source - } - if oRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Destination != nil { - nestedRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Destination = oRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations.Destination - } - nestedRoutingTableIpv6StaticRoute.PathMonitor.MonitorDestinations = append(nestedRoutingTableIpv6StaticRoute.PathMonitor.MonitorDestinations, nestedRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations) + if oRoutingTableIpStaticRoute.RouteTable.Multicast != nil { + nestedRoutingTableIpStaticRoute.RouteTable.Multicast = &RoutingTableIpStaticRouteRouteTableMulticast{} + if oRoutingTableIpStaticRoute.RouteTable.Multicast.Misc != nil { + entry.Misc["RoutingTableIpStaticRouteRouteTableMulticast"] = oRoutingTableIpStaticRoute.RouteTable.Multicast.Misc } } - if oRoutingTableIpv6StaticRoute.PathMonitor.Enable != nil { - nestedRoutingTableIpv6StaticRoute.PathMonitor.Enable = util.AsBool(oRoutingTableIpv6StaticRoute.PathMonitor.Enable, nil) - } - } - if oRoutingTableIpv6StaticRoute.Name != "" { - nestedRoutingTableIpv6StaticRoute.Name = oRoutingTableIpv6StaticRoute.Name - } - if oRoutingTableIpv6StaticRoute.Interface != nil { - nestedRoutingTableIpv6StaticRoute.Interface = oRoutingTableIpv6StaticRoute.Interface - } - if oRoutingTableIpv6StaticRoute.AdminDist != nil { - nestedRoutingTableIpv6StaticRoute.AdminDist = oRoutingTableIpv6StaticRoute.AdminDist - } - if oRoutingTableIpv6StaticRoute.Option != nil { - nestedRoutingTableIpv6StaticRoute.Option = &RoutingTableIpv6StaticRouteOption{} - if oRoutingTableIpv6StaticRoute.Option.Misc != nil { - entry.Misc["RoutingTableIpv6StaticRouteOption"] = oRoutingTableIpv6StaticRoute.Option.Misc - } - } - if oRoutingTableIpv6StaticRoute.RouteTable != nil { - nestedRoutingTableIpv6StaticRoute.RouteTable = &RoutingTableIpv6StaticRouteRouteTable{} - if oRoutingTableIpv6StaticRoute.RouteTable.Misc != nil { - entry.Misc["RoutingTableIpv6StaticRouteRouteTable"] = oRoutingTableIpv6StaticRoute.RouteTable.Misc - } - if oRoutingTableIpv6StaticRoute.RouteTable.Unicast != nil { - nestedRoutingTableIpv6StaticRoute.RouteTable.Unicast = &RoutingTableIpv6StaticRouteRouteTableUnicast{} - if oRoutingTableIpv6StaticRoute.RouteTable.Unicast.Misc != nil { - entry.Misc["RoutingTableIpv6StaticRouteRouteTableUnicast"] = oRoutingTableIpv6StaticRoute.RouteTable.Unicast.Misc + if oRoutingTableIpStaticRoute.RouteTable.Both != nil { + nestedRoutingTableIpStaticRoute.RouteTable.Both = &RoutingTableIpStaticRouteRouteTableBoth{} + if oRoutingTableIpStaticRoute.RouteTable.Both.Misc != nil { + entry.Misc["RoutingTableIpStaticRouteRouteTableBoth"] = oRoutingTableIpStaticRoute.RouteTable.Both.Misc } } - if oRoutingTableIpv6StaticRoute.RouteTable.NoInstall != nil { - nestedRoutingTableIpv6StaticRoute.RouteTable.NoInstall = &RoutingTableIpv6StaticRouteRouteTableNoInstall{} - if oRoutingTableIpv6StaticRoute.RouteTable.NoInstall.Misc != nil { - entry.Misc["RoutingTableIpv6StaticRouteRouteTableNoInstall"] = oRoutingTableIpv6StaticRoute.RouteTable.NoInstall.Misc + if oRoutingTableIpStaticRoute.RouteTable.NoInstall != nil { + nestedRoutingTableIpStaticRoute.RouteTable.NoInstall = &RoutingTableIpStaticRouteRouteTableNoInstall{} + if oRoutingTableIpStaticRoute.RouteTable.NoInstall.Misc != nil { + entry.Misc["RoutingTableIpStaticRouteRouteTableNoInstall"] = oRoutingTableIpStaticRoute.RouteTable.NoInstall.Misc } } } - if oRoutingTableIpv6StaticRoute.Bfd != nil { - nestedRoutingTableIpv6StaticRoute.Bfd = &RoutingTableIpv6StaticRouteBfd{} - if oRoutingTableIpv6StaticRoute.Bfd.Misc != nil { - entry.Misc["RoutingTableIpv6StaticRouteBfd"] = oRoutingTableIpv6StaticRoute.Bfd.Misc - } - if oRoutingTableIpv6StaticRoute.Bfd.Profile != nil { - nestedRoutingTableIpv6StaticRoute.Bfd.Profile = oRoutingTableIpv6StaticRoute.Bfd.Profile - } - } - nestedRoutingTable.Ipv6.StaticRoute = append(nestedRoutingTable.Ipv6.StaticRoute, nestedRoutingTableIpv6StaticRoute) + nestedRoutingTable.Ip.StaticRoute = append(nestedRoutingTable.Ip.StaticRoute, nestedRoutingTableIpStaticRoute) } } } @@ -9323,109 +9323,51 @@ func SpecMatches(a, b *Entry) bool { return true } -func matchRoutingTableIpStaticRouteRouteTableUnicast(a *RoutingTableIpStaticRouteRouteTableUnicast, b *RoutingTableIpStaticRouteRouteTableUnicast) bool { - if a == nil && b != nil || a != nil && b == nil { - return false - } else if a == nil && b == nil { - return true - } - return true -} -func matchRoutingTableIpStaticRouteRouteTableMulticast(a *RoutingTableIpStaticRouteRouteTableMulticast, b *RoutingTableIpStaticRouteRouteTableMulticast) bool { - if a == nil && b != nil || a != nil && b == nil { - return false - } else if a == nil && b == nil { - return true - } - return true -} -func matchRoutingTableIpStaticRouteRouteTableBoth(a *RoutingTableIpStaticRouteRouteTableBoth, b *RoutingTableIpStaticRouteRouteTableBoth) bool { - if a == nil && b != nil || a != nil && b == nil { - return false - } else if a == nil && b == nil { - return true - } - return true -} -func matchRoutingTableIpStaticRouteRouteTableNoInstall(a *RoutingTableIpStaticRouteRouteTableNoInstall, b *RoutingTableIpStaticRouteRouteTableNoInstall) bool { - if a == nil && b != nil || a != nil && b == nil { - return false - } else if a == nil && b == nil { - return true - } - return true -} -func matchRoutingTableIpStaticRouteRouteTable(a *RoutingTableIpStaticRouteRouteTable, b *RoutingTableIpStaticRouteRouteTable) bool { - if a == nil && b != nil || a != nil && b == nil { - return false - } else if a == nil && b == nil { - return true - } - if !matchRoutingTableIpStaticRouteRouteTableNoInstall(a.NoInstall, b.NoInstall) { - return false - } - if !matchRoutingTableIpStaticRouteRouteTableUnicast(a.Unicast, b.Unicast) { - return false - } - if !matchRoutingTableIpStaticRouteRouteTableMulticast(a.Multicast, b.Multicast) { - return false - } - if !matchRoutingTableIpStaticRouteRouteTableBoth(a.Both, b.Both) { - return false - } - return true -} -func matchRoutingTableIpStaticRouteBfd(a *RoutingTableIpStaticRouteBfd, b *RoutingTableIpStaticRouteBfd) bool { +func matchMulticastInterfaceGroupPimAllowedNeighbors(a []MulticastInterfaceGroupPimAllowedNeighbors, b []MulticastInterfaceGroupPimAllowedNeighbors) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Profile, b.Profile) { - return false + for _, a := range a { + for _, b := range b { + if !util.StringsEqual(a.Name, b.Name) { + return false + } + } } return true } -func matchRoutingTableIpStaticRouteNexthopReceive(a *RoutingTableIpStaticRouteNexthopReceive, b *RoutingTableIpStaticRouteNexthopReceive) bool { +func matchMulticastInterfaceGroupPim(a *MulticastInterfaceGroupPim, b *MulticastInterfaceGroupPim) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - return true -} -func matchRoutingTableIpStaticRouteNexthopDiscard(a *RoutingTableIpStaticRouteNexthopDiscard, b *RoutingTableIpStaticRouteNexthopDiscard) bool { - if a == nil && b != nil || a != nil && b == nil { + if !util.Ints64Match(a.JoinPruneInterval, b.JoinPruneInterval) { return false - } else if a == nil && b == nil { - return true } - return true -} -func matchRoutingTableIpStaticRouteNexthop(a *RoutingTableIpStaticRouteNexthop, b *RoutingTableIpStaticRouteNexthop) bool { - if a == nil && b != nil || a != nil && b == nil { + if !util.Ints64Match(a.DrPriority, b.DrPriority) { return false - } else if a == nil && b == nil { - return true } - if !matchRoutingTableIpStaticRouteNexthopReceive(a.Receive, b.Receive) { + if !util.BoolsMatch(a.BsrBorder, b.BsrBorder) { return false } - if !matchRoutingTableIpStaticRouteNexthopDiscard(a.Discard, b.Discard) { + if !matchMulticastInterfaceGroupPimAllowedNeighbors(a.AllowedNeighbors, b.AllowedNeighbors) { return false } - if !util.StringsMatch(a.IpAddress, b.IpAddress) { + if !util.BoolsMatch(a.Enable, b.Enable) { return false } - if !util.StringsMatch(a.Fqdn, b.Fqdn) { + if !util.Ints64Match(a.AssertInterval, b.AssertInterval) { return false } - if !util.StringsMatch(a.NextVr, b.NextVr) { + if !util.Ints64Match(a.HelloInterval, b.HelloInterval) { return false } return true } -func matchRoutingTableIpStaticRoutePathMonitorMonitorDestinations(a []RoutingTableIpStaticRoutePathMonitorMonitorDestinations, b []RoutingTableIpStaticRoutePathMonitorMonitorDestinations) bool { +func matchMulticastInterfaceGroupGroupPermissionSourceSpecificMulticast(a []MulticastInterfaceGroupGroupPermissionSourceSpecificMulticast, b []MulticastInterfaceGroupGroupPermissionSourceSpecificMulticast) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -9433,49 +9375,96 @@ func matchRoutingTableIpStaticRoutePathMonitorMonitorDestinations(a []RoutingTab } for _, a := range a { for _, b := range b { - if !util.Ints64Match(a.Interval, b.Interval) { + if !util.StringsMatch(a.SourceAddress, b.SourceAddress) { return false } - if !util.Ints64Match(a.Count, b.Count) { + if !util.BoolsMatch(a.Included, b.Included) { return false } if !util.StringsEqual(a.Name, b.Name) { return false } - if !util.BoolsMatch(a.Enable, b.Enable) { + if !util.StringsMatch(a.GroupAddress, b.GroupAddress) { return false } - if !util.StringsMatch(a.Source, b.Source) { + } + } + return true +} +func matchMulticastInterfaceGroupGroupPermissionAnySourceMulticast(a []MulticastInterfaceGroupGroupPermissionAnySourceMulticast, b []MulticastInterfaceGroupGroupPermissionAnySourceMulticast) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + for _, a := range a { + for _, b := range b { + if !util.StringsMatch(a.GroupAddress, b.GroupAddress) { return false } - if !util.StringsMatch(a.Destination, b.Destination) { + if !util.BoolsMatch(a.Included, b.Included) { + return false + } + if !util.StringsEqual(a.Name, b.Name) { return false } } } return true } -func matchRoutingTableIpStaticRoutePathMonitor(a *RoutingTableIpStaticRoutePathMonitor, b *RoutingTableIpStaticRoutePathMonitor) bool { +func matchMulticastInterfaceGroupGroupPermission(a *MulticastInterfaceGroupGroupPermission, b *MulticastInterfaceGroupGroupPermission) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.Ints64Match(a.HoldTime, b.HoldTime) { + if !matchMulticastInterfaceGroupGroupPermissionAnySourceMulticast(a.AnySourceMulticast, b.AnySourceMulticast) { return false } - if !matchRoutingTableIpStaticRoutePathMonitorMonitorDestinations(a.MonitorDestinations, b.MonitorDestinations) { + if !matchMulticastInterfaceGroupGroupPermissionSourceSpecificMulticast(a.SourceSpecificMulticast, b.SourceSpecificMulticast) { + return false + } + return true +} +func matchMulticastInterfaceGroupIgmp(a *MulticastInterfaceGroupIgmp, b *MulticastInterfaceGroupIgmp) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + if !util.StringsMatch(a.MaxSources, b.MaxSources) { return false } if !util.BoolsMatch(a.Enable, b.Enable) { return false } - if !util.StringsMatch(a.FailureCondition, b.FailureCondition) { + if !util.Ints64Match(a.QueryInterval, b.QueryInterval) { + return false + } + if !util.FloatsMatch(a.LastMemberQueryInterval, b.LastMemberQueryInterval) { + return false + } + if !util.BoolsMatch(a.ImmediateLeave, b.ImmediateLeave) { + return false + } + if !util.StringsMatch(a.Robustness, b.Robustness) { + return false + } + if !util.StringsMatch(a.Version, b.Version) { + return false + } + if !util.FloatsMatch(a.MaxQueryResponseTime, b.MaxQueryResponseTime) { + return false + } + if !util.StringsMatch(a.MaxGroups, b.MaxGroups) { + return false + } + if !util.BoolsMatch(a.RouterAlertPolicing, b.RouterAlertPolicing) { return false } return true } -func matchRoutingTableIpStaticRoute(a []RoutingTableIpStaticRoute, b []RoutingTableIpStaticRoute) bool { +func matchMulticastInterfaceGroup(a []MulticastInterfaceGroup, b []MulticastInterfaceGroup) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -9483,134 +9472,186 @@ func matchRoutingTableIpStaticRoute(a []RoutingTableIpStaticRoute, b []RoutingTa } for _, a := range a { for _, b := range b { - if !matchRoutingTableIpStaticRouteNexthop(a.Nexthop, b.Nexthop) { + if !matchMulticastInterfaceGroupGroupPermission(a.GroupPermission, b.GroupPermission) { return false } - if !matchRoutingTableIpStaticRoutePathMonitor(a.PathMonitor, b.PathMonitor) { + if !matchMulticastInterfaceGroupIgmp(a.Igmp, b.Igmp) { return false } - if !util.Ints64Match(a.Metric, b.Metric) { + if !matchMulticastInterfaceGroupPim(a.Pim, b.Pim) { return false } - if !util.StringsMatch(a.Interface, b.Interface) { + if !util.StringsEqual(a.Name, b.Name) { return false } - if !util.Ints64Match(a.AdminDist, b.AdminDist) { + if !util.StringsMatch(a.Description, b.Description) { return false } - if !matchRoutingTableIpStaticRouteRouteTable(a.RouteTable, b.RouteTable) { + if !util.OrderedListsMatch(a.Interface, b.Interface) { return false } - if !matchRoutingTableIpStaticRouteBfd(a.Bfd, b.Bfd) { + } + } + return true +} +func matchMulticastRpExternalRp(a []MulticastRpExternalRp, b []MulticastRpExternalRp) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + for _, a := range a { + for _, b := range b { + if !util.OrderedListsMatch(a.GroupAddresses, b.GroupAddresses) { return false } - if !util.StringsEqual(a.Name, b.Name) { + if !util.BoolsMatch(a.Override, b.Override) { return false } - if !util.StringsMatch(a.Destination, b.Destination) { + if !util.StringsEqual(a.Name, b.Name) { return false } } } return true } -func matchRoutingTableIp(a *RoutingTableIp, b *RoutingTableIp) bool { +func matchMulticastRpLocalRpCandidateRp(a *MulticastRpLocalRpCandidateRp, b *MulticastRpLocalRpCandidateRp) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchRoutingTableIpStaticRoute(a.StaticRoute, b.StaticRoute) { + if !util.StringsMatch(a.Address, b.Address) { return false } - return true -} -func matchRoutingTableIpv6StaticRouteNexthopReceive(a *RoutingTableIpv6StaticRouteNexthopReceive, b *RoutingTableIpv6StaticRouteNexthopReceive) bool { - if a == nil && b != nil || a != nil && b == nil { + if !util.Ints64Match(a.AdvertisementInterval, b.AdvertisementInterval) { return false - } else if a == nil && b == nil { - return true } - return true -} -func matchRoutingTableIpv6StaticRouteNexthopDiscard(a *RoutingTableIpv6StaticRouteNexthopDiscard, b *RoutingTableIpv6StaticRouteNexthopDiscard) bool { - if a == nil && b != nil || a != nil && b == nil { + if !util.OrderedListsMatch(a.GroupAddresses, b.GroupAddresses) { + return false + } + if !util.StringsMatch(a.Interface, b.Interface) { + return false + } + if !util.Ints64Match(a.Priority, b.Priority) { return false - } else if a == nil && b == nil { - return true } return true } -func matchRoutingTableIpv6StaticRouteNexthop(a *RoutingTableIpv6StaticRouteNexthop, b *RoutingTableIpv6StaticRouteNexthop) bool { +func matchMulticastRpLocalRpStaticRp(a *MulticastRpLocalRpStaticRp, b *MulticastRpLocalRpStaticRp) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchRoutingTableIpv6StaticRouteNexthopReceive(a.Receive, b.Receive) { + if !util.StringsMatch(a.Address, b.Address) { return false } - if !matchRoutingTableIpv6StaticRouteNexthopDiscard(a.Discard, b.Discard) { + if !util.OrderedListsMatch(a.GroupAddresses, b.GroupAddresses) { return false } - if !util.StringsMatch(a.Ipv6Address, b.Ipv6Address) { + if !util.StringsMatch(a.Interface, b.Interface) { return false } - if !util.StringsMatch(a.NextVr, b.NextVr) { + if !util.BoolsMatch(a.Override, b.Override) { return false } return true } -func matchRoutingTableIpv6StaticRouteOption(a *RoutingTableIpv6StaticRouteOption, b *RoutingTableIpv6StaticRouteOption) bool { +func matchMulticastRpLocalRp(a *MulticastRpLocalRp, b *MulticastRpLocalRp) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } + if !matchMulticastRpLocalRpCandidateRp(a.CandidateRp, b.CandidateRp) { + return false + } + if !matchMulticastRpLocalRpStaticRp(a.StaticRp, b.StaticRp) { + return false + } return true } -func matchRoutingTableIpv6StaticRouteRouteTableUnicast(a *RoutingTableIpv6StaticRouteRouteTableUnicast, b *RoutingTableIpv6StaticRouteRouteTableUnicast) bool { +func matchMulticastRp(a *MulticastRp, b *MulticastRp) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } + if !matchMulticastRpExternalRp(a.ExternalRp, b.ExternalRp) { + return false + } + if !matchMulticastRpLocalRp(a.LocalRp, b.LocalRp) { + return false + } return true } -func matchRoutingTableIpv6StaticRouteRouteTableNoInstall(a *RoutingTableIpv6StaticRouteRouteTableNoInstall, b *RoutingTableIpv6StaticRouteRouteTableNoInstall) bool { +func matchMulticastSptThreshold(a []MulticastSptThreshold, b []MulticastSptThreshold) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } + for _, a := range a { + for _, b := range b { + if !util.StringsMatch(a.Threshold, b.Threshold) { + return false + } + if !util.StringsEqual(a.Name, b.Name) { + return false + } + } + } return true } -func matchRoutingTableIpv6StaticRouteRouteTable(a *RoutingTableIpv6StaticRouteRouteTable, b *RoutingTableIpv6StaticRouteRouteTable) bool { +func matchMulticastSsmAddressSpace(a []MulticastSsmAddressSpace, b []MulticastSsmAddressSpace) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchRoutingTableIpv6StaticRouteRouteTableUnicast(a.Unicast, b.Unicast) { - return false - } - if !matchRoutingTableIpv6StaticRouteRouteTableNoInstall(a.NoInstall, b.NoInstall) { - return false + for _, a := range a { + for _, b := range b { + if !util.StringsMatch(a.GroupAddress, b.GroupAddress) { + return false + } + if !util.BoolsMatch(a.Included, b.Included) { + return false + } + if !util.StringsEqual(a.Name, b.Name) { + return false + } + } } return true } -func matchRoutingTableIpv6StaticRouteBfd(a *RoutingTableIpv6StaticRouteBfd, b *RoutingTableIpv6StaticRouteBfd) bool { +func matchMulticast(a *Multicast, b *Multicast) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Profile, b.Profile) { + if !util.BoolsMatch(a.Enable, b.Enable) { + return false + } + if !matchMulticastInterfaceGroup(a.InterfaceGroup, b.InterfaceGroup) { + return false + } + if !util.Ints64Match(a.RouteAgeoutTime, b.RouteAgeoutTime) { + return false + } + if !matchMulticastRp(a.Rp, b.Rp) { + return false + } + if !matchMulticastSptThreshold(a.SptThreshold, b.SptThreshold) { + return false + } + if !matchMulticastSsmAddressSpace(a.SsmAddressSpace, b.SsmAddressSpace) { return false } return true } -func matchRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations(a []RoutingTableIpv6StaticRoutePathMonitorMonitorDestinations, b []RoutingTableIpv6StaticRoutePathMonitorMonitorDestinations) bool { +func matchProtocolBgpAuthProfile(a []ProtocolBgpAuthProfile, b []ProtocolBgpAuthProfile) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -9618,19 +9659,7 @@ func matchRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations(a []RoutingT } for _, a := range a { for _, b := range b { - if !util.BoolsMatch(a.Enable, b.Enable) { - return false - } - if !util.StringsMatch(a.Source, b.Source) { - return false - } - if !util.StringsMatch(a.Destination, b.Destination) { - return false - } - if !util.Ints64Match(a.Interval, b.Interval) { - return false - } - if !util.Ints64Match(a.Count, b.Count) { + if !util.StringsMatch(a.Secret, b.Secret) { return false } if !util.StringsEqual(a.Name, b.Name) { @@ -9640,234 +9669,236 @@ func matchRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations(a []RoutingT } return true } -func matchRoutingTableIpv6StaticRoutePathMonitor(a *RoutingTableIpv6StaticRoutePathMonitor, b *RoutingTableIpv6StaticRoutePathMonitor) bool { +func matchProtocolBgpPolicyAggregationAddressAggregateRouteAttributesExtendedCommunityNone(a *ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesExtendedCommunityNone, b *ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesExtendedCommunityNone) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + return true +} +func matchProtocolBgpPolicyAggregationAddressAggregateRouteAttributesExtendedCommunityRemoveAll(a *ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesExtendedCommunityRemoveAll, b *ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesExtendedCommunityRemoveAll) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + return true +} +func matchProtocolBgpPolicyAggregationAddressAggregateRouteAttributesExtendedCommunity(a *ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesExtendedCommunity, b *ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesExtendedCommunity) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + if !matchProtocolBgpPolicyAggregationAddressAggregateRouteAttributesExtendedCommunityNone(a.None, b.None) { + return false + } + if !matchProtocolBgpPolicyAggregationAddressAggregateRouteAttributesExtendedCommunityRemoveAll(a.RemoveAll, b.RemoveAll) { + return false + } + if !util.StringsMatch(a.RemoveRegex, b.RemoveRegex) { + return false + } + if !util.OrderedListsMatch(a.Append, b.Append) { + return false + } + if !util.OrderedListsMatch(a.Overwrite, b.Overwrite) { + return false + } + return true +} +func matchProtocolBgpPolicyAggregationAddressAggregateRouteAttributesAsPathNone(a *ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesAsPathNone, b *ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesAsPathNone) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.BoolsMatch(a.Enable, b.Enable) { + return true +} +func matchProtocolBgpPolicyAggregationAddressAggregateRouteAttributesAsPathRemove(a *ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesAsPathRemove, b *ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesAsPathRemove) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } - if !util.StringsMatch(a.FailureCondition, b.FailureCondition) { + return true +} +func matchProtocolBgpPolicyAggregationAddressAggregateRouteAttributesAsPath(a *ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesAsPath, b *ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesAsPath) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + if !matchProtocolBgpPolicyAggregationAddressAggregateRouteAttributesAsPathNone(a.None, b.None) { return false } - if !util.Ints64Match(a.HoldTime, b.HoldTime) { + if !matchProtocolBgpPolicyAggregationAddressAggregateRouteAttributesAsPathRemove(a.Remove, b.Remove) { return false } - if !matchRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations(a.MonitorDestinations, b.MonitorDestinations) { + if !util.Ints64Match(a.Prepend, b.Prepend) { return false } return true } -func matchRoutingTableIpv6StaticRoute(a []RoutingTableIpv6StaticRoute, b []RoutingTableIpv6StaticRoute) bool { +func matchProtocolBgpPolicyAggregationAddressAggregateRouteAttributesCommunityNone(a *ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesCommunityNone, b *ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesCommunityNone) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - for _, a := range a { - for _, b := range b { - if !util.StringsMatch(a.Destination, b.Destination) { - return false - } - if !util.Ints64Match(a.Metric, b.Metric) { - return false - } - if !matchRoutingTableIpv6StaticRouteNexthop(a.Nexthop, b.Nexthop) { - return false - } - if !util.StringsEqual(a.Name, b.Name) { - return false - } - if !util.StringsMatch(a.Interface, b.Interface) { - return false - } - if !util.Ints64Match(a.AdminDist, b.AdminDist) { - return false - } - if !matchRoutingTableIpv6StaticRouteOption(a.Option, b.Option) { - return false - } - if !matchRoutingTableIpv6StaticRouteRouteTable(a.RouteTable, b.RouteTable) { - return false - } - if !matchRoutingTableIpv6StaticRouteBfd(a.Bfd, b.Bfd) { - return false - } - if !matchRoutingTableIpv6StaticRoutePathMonitor(a.PathMonitor, b.PathMonitor) { - return false - } - } - } return true } -func matchRoutingTableIpv6(a *RoutingTableIpv6, b *RoutingTableIpv6) bool { +func matchProtocolBgpPolicyAggregationAddressAggregateRouteAttributesCommunityRemoveAll(a *ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesCommunityRemoveAll, b *ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesCommunityRemoveAll) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchRoutingTableIpv6StaticRoute(a.StaticRoute, b.StaticRoute) { - return false - } return true } -func matchRoutingTable(a *RoutingTable, b *RoutingTable) bool { +func matchProtocolBgpPolicyAggregationAddressAggregateRouteAttributesCommunity(a *ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesCommunity, b *ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesCommunity) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchRoutingTableIp(a.Ip, b.Ip) { + if !matchProtocolBgpPolicyAggregationAddressAggregateRouteAttributesCommunityNone(a.None, b.None) { return false } - if !matchRoutingTableIpv6(a.Ipv6, b.Ipv6) { + if !matchProtocolBgpPolicyAggregationAddressAggregateRouteAttributesCommunityRemoveAll(a.RemoveAll, b.RemoveAll) { + return false + } + if !util.StringsMatch(a.RemoveRegex, b.RemoveRegex) { + return false + } + if !util.OrderedListsMatch(a.Append, b.Append) { + return false + } + if !util.OrderedListsMatch(a.Overwrite, b.Overwrite) { return false } return true } -func matchAdminDists(a *AdminDists, b *AdminDists) bool { +func matchProtocolBgpPolicyAggregationAddressAggregateRouteAttributes(a *ProtocolBgpPolicyAggregationAddressAggregateRouteAttributes, b *ProtocolBgpPolicyAggregationAddressAggregateRouteAttributes) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.Ints64Match(a.Ospfv3Ext, b.Ospfv3Ext) { + if !util.Ints64Match(a.Weight, b.Weight) { return false } - if !util.Ints64Match(a.Rip, b.Rip) { + if !util.StringsMatch(a.Nexthop, b.Nexthop) { return false } - if !util.Ints64Match(a.StaticIpv6, b.StaticIpv6) { + if !util.StringsMatch(a.Origin, b.Origin) { return false } - if !util.Ints64Match(a.Ibgp, b.Ibgp) { + if !matchProtocolBgpPolicyAggregationAddressAggregateRouteAttributesAsPath(a.AsPath, b.AsPath) { return false } - if !util.Ints64Match(a.OspfExt, b.OspfExt) { + if !matchProtocolBgpPolicyAggregationAddressAggregateRouteAttributesCommunity(a.Community, b.Community) { return false } - if !util.Ints64Match(a.OspfInt, b.OspfInt) { + if !util.Ints64Match(a.LocalPreference, b.LocalPreference) { return false } - if !util.Ints64Match(a.Ebgp, b.Ebgp) { + if !util.Ints64Match(a.AsPathLimit, b.AsPathLimit) { return false } - if !util.Ints64Match(a.Ospfv3Int, b.Ospfv3Int) { + if !matchProtocolBgpPolicyAggregationAddressAggregateRouteAttributesExtendedCommunity(a.ExtendedCommunity, b.ExtendedCommunity) { return false } - if !util.Ints64Match(a.Static, b.Static) { + if !util.Ints64Match(a.Med, b.Med) { return false } return true } -func matchEcmpAlgorithmIpModulo(a *EcmpAlgorithmIpModulo, b *EcmpAlgorithmIpModulo) bool { +func matchProtocolBgpPolicyAggregationAddressSuppressFiltersMatchCommunity(a *ProtocolBgpPolicyAggregationAddressSuppressFiltersMatchCommunity, b *ProtocolBgpPolicyAggregationAddressSuppressFiltersMatchCommunity) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - return true -} -func matchEcmpAlgorithmWeightedRoundRobinInterface(a []EcmpAlgorithmWeightedRoundRobinInterface, b []EcmpAlgorithmWeightedRoundRobinInterface) bool { - if a == nil && b != nil || a != nil && b == nil { + if !util.StringsMatch(a.Regex, b.Regex) { return false - } else if a == nil && b == nil { - return true - } - for _, a := range a { - for _, b := range b { - if !util.Ints64Match(a.Weight, b.Weight) { - return false - } - if !util.StringsEqual(a.Name, b.Name) { - return false - } - } } return true } -func matchEcmpAlgorithmWeightedRoundRobin(a *EcmpAlgorithmWeightedRoundRobin, b *EcmpAlgorithmWeightedRoundRobin) bool { +func matchProtocolBgpPolicyAggregationAddressSuppressFiltersMatchExtendedCommunity(a *ProtocolBgpPolicyAggregationAddressSuppressFiltersMatchExtendedCommunity, b *ProtocolBgpPolicyAggregationAddressSuppressFiltersMatchExtendedCommunity) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchEcmpAlgorithmWeightedRoundRobinInterface(a.Interface, b.Interface) { + if !util.StringsMatch(a.Regex, b.Regex) { return false } return true } -func matchEcmpAlgorithmBalancedRoundRobin(a *EcmpAlgorithmBalancedRoundRobin, b *EcmpAlgorithmBalancedRoundRobin) bool { +func matchProtocolBgpPolicyAggregationAddressSuppressFiltersMatchAddressPrefix(a []ProtocolBgpPolicyAggregationAddressSuppressFiltersMatchAddressPrefix, b []ProtocolBgpPolicyAggregationAddressSuppressFiltersMatchAddressPrefix) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } + for _, a := range a { + for _, b := range b { + if !util.BoolsMatch(a.Exact, b.Exact) { + return false + } + if !util.StringsEqual(a.Name, b.Name) { + return false + } + } + } return true } -func matchEcmpAlgorithmIpHash(a *EcmpAlgorithmIpHash, b *EcmpAlgorithmIpHash) bool { +func matchProtocolBgpPolicyAggregationAddressSuppressFiltersMatchAsPath(a *ProtocolBgpPolicyAggregationAddressSuppressFiltersMatchAsPath, b *ProtocolBgpPolicyAggregationAddressSuppressFiltersMatchAsPath) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.Ints64Match(a.HashSeed, b.HashSeed) { - return false - } - if !util.BoolsMatch(a.SrcOnly, b.SrcOnly) { - return false - } - if !util.BoolsMatch(a.UsePort, b.UsePort) { + if !util.StringsMatch(a.Regex, b.Regex) { return false } return true } -func matchEcmpAlgorithm(a *EcmpAlgorithm, b *EcmpAlgorithm) bool { +func matchProtocolBgpPolicyAggregationAddressSuppressFiltersMatch(a *ProtocolBgpPolicyAggregationAddressSuppressFiltersMatch, b *ProtocolBgpPolicyAggregationAddressSuppressFiltersMatch) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchEcmpAlgorithmWeightedRoundRobin(a.WeightedRoundRobin, b.WeightedRoundRobin) { - return false - } - if !matchEcmpAlgorithmBalancedRoundRobin(a.BalancedRoundRobin, b.BalancedRoundRobin) { - return false - } - if !matchEcmpAlgorithmIpHash(a.IpHash, b.IpHash) { + if !matchProtocolBgpPolicyAggregationAddressSuppressFiltersMatchAddressPrefix(a.AddressPrefix, b.AddressPrefix) { return false } - if !matchEcmpAlgorithmIpModulo(a.IpModulo, b.IpModulo) { + if !util.OrderedListsMatch(a.Nexthop, b.Nexthop) { return false } - return true -} -func matchEcmp(a *Ecmp, b *Ecmp) bool { - if a == nil && b != nil || a != nil && b == nil { + if !util.OrderedListsMatch(a.FromPeer, b.FromPeer) { return false - } else if a == nil && b == nil { - return true } - if !matchEcmpAlgorithm(a.Algorithm, b.Algorithm) { + if !matchProtocolBgpPolicyAggregationAddressSuppressFiltersMatchAsPath(a.AsPath, b.AsPath) { return false } - if !util.BoolsMatch(a.Enable, b.Enable) { + if !matchProtocolBgpPolicyAggregationAddressSuppressFiltersMatchCommunity(a.Community, b.Community) { return false } - if !util.Ints64Match(a.MaxPath, b.MaxPath) { + if !matchProtocolBgpPolicyAggregationAddressSuppressFiltersMatchExtendedCommunity(a.ExtendedCommunity, b.ExtendedCommunity) { return false } - if !util.BoolsMatch(a.StrictSourcePath, b.StrictSourcePath) { + if !util.StringsMatch(a.RouteTable, b.RouteTable) { return false } - if !util.BoolsMatch(a.SymmetricReturn, b.SymmetricReturn) { + if !util.Ints64Match(a.Med, b.Med) { return false } return true } -func matchMulticastInterfaceGroupGroupPermissionAnySourceMulticast(a []MulticastInterfaceGroupGroupPermissionAnySourceMulticast, b []MulticastInterfaceGroupGroupPermissionAnySourceMulticast) bool { +func matchProtocolBgpPolicyAggregationAddressSuppressFilters(a []ProtocolBgpPolicyAggregationAddressSuppressFilters, b []ProtocolBgpPolicyAggregationAddressSuppressFilters) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -9875,10 +9906,10 @@ func matchMulticastInterfaceGroupGroupPermissionAnySourceMulticast(a []Multicast } for _, a := range a { for _, b := range b { - if !util.StringsMatch(a.GroupAddress, b.GroupAddress) { + if !util.BoolsMatch(a.Enable, b.Enable) { return false } - if !util.BoolsMatch(a.Included, b.Included) { + if !matchProtocolBgpPolicyAggregationAddressSuppressFiltersMatch(a.Match, b.Match) { return false } if !util.StringsEqual(a.Name, b.Name) { @@ -9888,7 +9919,7 @@ func matchMulticastInterfaceGroupGroupPermissionAnySourceMulticast(a []Multicast } return true } -func matchMulticastInterfaceGroupGroupPermissionSourceSpecificMulticast(a []MulticastInterfaceGroupGroupPermissionSourceSpecificMulticast, b []MulticastInterfaceGroupGroupPermissionSourceSpecificMulticast) bool { +func matchProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix(a []ProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix, b []ProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -9896,13 +9927,7 @@ func matchMulticastInterfaceGroupGroupPermissionSourceSpecificMulticast(a []Mult } for _, a := range a { for _, b := range b { - if !util.StringsMatch(a.GroupAddress, b.GroupAddress) { - return false - } - if !util.StringsMatch(a.SourceAddress, b.SourceAddress) { - return false - } - if !util.BoolsMatch(a.Included, b.Included) { + if !util.BoolsMatch(a.Exact, b.Exact) { return false } if !util.StringsEqual(a.Name, b.Name) { @@ -9912,103 +9937,72 @@ func matchMulticastInterfaceGroupGroupPermissionSourceSpecificMulticast(a []Mult } return true } -func matchMulticastInterfaceGroupGroupPermission(a *MulticastInterfaceGroupGroupPermission, b *MulticastInterfaceGroupGroupPermission) bool { +func matchProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAsPath(a *ProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAsPath, b *ProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAsPath) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchMulticastInterfaceGroupGroupPermissionAnySourceMulticast(a.AnySourceMulticast, b.AnySourceMulticast) { - return false - } - if !matchMulticastInterfaceGroupGroupPermissionSourceSpecificMulticast(a.SourceSpecificMulticast, b.SourceSpecificMulticast) { + if !util.StringsMatch(a.Regex, b.Regex) { return false } return true } -func matchMulticastInterfaceGroupIgmp(a *MulticastInterfaceGroupIgmp, b *MulticastInterfaceGroupIgmp) bool { +func matchProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchCommunity(a *ProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchCommunity, b *ProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchCommunity) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.BoolsMatch(a.Enable, b.Enable) { - return false - } - if !util.StringsMatch(a.Version, b.Version) { - return false - } - if !util.FloatsMatch(a.LastMemberQueryInterval, b.LastMemberQueryInterval) { - return false - } - if !util.StringsMatch(a.Robustness, b.Robustness) { - return false - } - if !util.BoolsMatch(a.RouterAlertPolicing, b.RouterAlertPolicing) { - return false - } - if !util.FloatsMatch(a.MaxQueryResponseTime, b.MaxQueryResponseTime) { - return false - } - if !util.Ints64Match(a.QueryInterval, b.QueryInterval) { - return false - } - if !util.BoolsMatch(a.ImmediateLeave, b.ImmediateLeave) { - return false - } - if !util.StringsMatch(a.MaxGroups, b.MaxGroups) { - return false - } - if !util.StringsMatch(a.MaxSources, b.MaxSources) { + if !util.StringsMatch(a.Regex, b.Regex) { return false } return true } -func matchMulticastInterfaceGroupPimAllowedNeighbors(a []MulticastInterfaceGroupPimAllowedNeighbors, b []MulticastInterfaceGroupPimAllowedNeighbors) bool { +func matchProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchExtendedCommunity(a *ProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchExtendedCommunity, b *ProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchExtendedCommunity) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - for _, a := range a { - for _, b := range b { - if !util.StringsEqual(a.Name, b.Name) { - return false - } - } + if !util.StringsMatch(a.Regex, b.Regex) { + return false } return true } -func matchMulticastInterfaceGroupPim(a *MulticastInterfaceGroupPim, b *MulticastInterfaceGroupPim) bool { +func matchProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatch(a *ProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatch, b *ProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatch) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchMulticastInterfaceGroupPimAllowedNeighbors(a.AllowedNeighbors, b.AllowedNeighbors) { + if !matchProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix(a.AddressPrefix, b.AddressPrefix) { return false } - if !util.BoolsMatch(a.Enable, b.Enable) { + if !util.OrderedListsMatch(a.Nexthop, b.Nexthop) { return false } - if !util.Ints64Match(a.AssertInterval, b.AssertInterval) { + if !util.OrderedListsMatch(a.FromPeer, b.FromPeer) { return false } - if !util.Ints64Match(a.HelloInterval, b.HelloInterval) { + if !matchProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAsPath(a.AsPath, b.AsPath) { return false } - if !util.Ints64Match(a.JoinPruneInterval, b.JoinPruneInterval) { + if !matchProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchCommunity(a.Community, b.Community) { return false } - if !util.Ints64Match(a.DrPriority, b.DrPriority) { + if !matchProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchExtendedCommunity(a.ExtendedCommunity, b.ExtendedCommunity) { return false } - if !util.BoolsMatch(a.BsrBorder, b.BsrBorder) { + if !util.StringsMatch(a.RouteTable, b.RouteTable) { + return false + } + if !util.Ints64Match(a.Med, b.Med) { return false } return true } -func matchMulticastInterfaceGroup(a []MulticastInterfaceGroup, b []MulticastInterfaceGroup) bool { +func matchProtocolBgpPolicyAggregationAddressAdvertiseFilters(a []ProtocolBgpPolicyAggregationAddressAdvertiseFilters, b []ProtocolBgpPolicyAggregationAddressAdvertiseFilters) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -10016,19 +10010,10 @@ func matchMulticastInterfaceGroup(a []MulticastInterfaceGroup, b []MulticastInte } for _, a := range a { for _, b := range b { - if !util.StringsMatch(a.Description, b.Description) { - return false - } - if !util.OrderedListsMatch(a.Interface, b.Interface) { - return false - } - if !matchMulticastInterfaceGroupGroupPermission(a.GroupPermission, b.GroupPermission) { - return false - } - if !matchMulticastInterfaceGroupIgmp(a.Igmp, b.Igmp) { + if !util.BoolsMatch(a.Enable, b.Enable) { return false } - if !matchMulticastInterfaceGroupPim(a.Pim, b.Pim) { + if !matchProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatch(a.Match, b.Match) { return false } if !util.StringsEqual(a.Name, b.Name) { @@ -10038,7 +10023,7 @@ func matchMulticastInterfaceGroup(a []MulticastInterfaceGroup, b []MulticastInte } return true } -func matchMulticastRpExternalRp(a []MulticastRpExternalRp, b []MulticastRpExternalRp) bool { +func matchProtocolBgpPolicyAggregationAddress(a []ProtocolBgpPolicyAggregationAddress, b []ProtocolBgpPolicyAggregationAddress) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -10046,91 +10031,126 @@ func matchMulticastRpExternalRp(a []MulticastRpExternalRp, b []MulticastRpExtern } for _, a := range a { for _, b := range b { - if !util.OrderedListsMatch(a.GroupAddresses, b.GroupAddresses) { + if !util.BoolsMatch(a.Summary, b.Summary) { return false } - if !util.BoolsMatch(a.Override, b.Override) { + if !util.BoolsMatch(a.AsSet, b.AsSet) { + return false + } + if !matchProtocolBgpPolicyAggregationAddressAggregateRouteAttributes(a.AggregateRouteAttributes, b.AggregateRouteAttributes) { + return false + } + if !matchProtocolBgpPolicyAggregationAddressSuppressFilters(a.SuppressFilters, b.SuppressFilters) { + return false + } + if !matchProtocolBgpPolicyAggregationAddressAdvertiseFilters(a.AdvertiseFilters, b.AdvertiseFilters) { return false } if !util.StringsEqual(a.Name, b.Name) { return false } + if !util.StringsMatch(a.Prefix, b.Prefix) { + return false + } + if !util.BoolsMatch(a.Enable, b.Enable) { + return false + } } } return true } -func matchMulticastRpLocalRpCandidateRp(a *MulticastRpLocalRpCandidateRp, b *MulticastRpLocalRpCandidateRp) bool { +func matchProtocolBgpPolicyAggregation(a *ProtocolBgpPolicyAggregation, b *ProtocolBgpPolicyAggregation) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Address, b.Address) { + if !matchProtocolBgpPolicyAggregationAddress(a.Address, b.Address) { return false } - if !util.Ints64Match(a.AdvertisementInterval, b.AdvertisementInterval) { + return true +} +func matchProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFiltersMatchAddressPrefix(a []ProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFiltersMatchAddressPrefix, b []ProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFiltersMatchAddressPrefix) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } - if !util.OrderedListsMatch(a.GroupAddresses, b.GroupAddresses) { - return false + for _, a := range a { + for _, b := range b { + if !util.StringsEqual(a.Name, b.Name) { + return false + } + } } - if !util.StringsMatch(a.Interface, b.Interface) { + return true +} +func matchProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFiltersMatchAsPath(a *ProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFiltersMatchAsPath, b *ProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFiltersMatchAsPath) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } - if !util.Ints64Match(a.Priority, b.Priority) { + if !util.StringsMatch(a.Regex, b.Regex) { return false } return true } -func matchMulticastRpLocalRpStaticRp(a *MulticastRpLocalRpStaticRp, b *MulticastRpLocalRpStaticRp) bool { +func matchProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFiltersMatchCommunity(a *ProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFiltersMatchCommunity, b *ProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFiltersMatchCommunity) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Interface, b.Interface) { - return false - } - if !util.BoolsMatch(a.Override, b.Override) { + if !util.StringsMatch(a.Regex, b.Regex) { return false } - if !util.StringsMatch(a.Address, b.Address) { + return true +} +func matchProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFiltersMatchExtendedCommunity(a *ProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFiltersMatchExtendedCommunity, b *ProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFiltersMatchExtendedCommunity) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } - if !util.OrderedListsMatch(a.GroupAddresses, b.GroupAddresses) { + if !util.StringsMatch(a.Regex, b.Regex) { return false } return true } -func matchMulticastRpLocalRp(a *MulticastRpLocalRp, b *MulticastRpLocalRp) bool { +func matchProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFiltersMatch(a *ProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFiltersMatch, b *ProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFiltersMatch) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchMulticastRpLocalRpCandidateRp(a.CandidateRp, b.CandidateRp) { + if !matchProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFiltersMatchExtendedCommunity(a.ExtendedCommunity, b.ExtendedCommunity) { return false } - if !matchMulticastRpLocalRpStaticRp(a.StaticRp, b.StaticRp) { + if !util.StringsMatch(a.RouteTable, b.RouteTable) { return false } - return true -} -func matchMulticastRp(a *MulticastRp, b *MulticastRp) bool { - if a == nil && b != nil || a != nil && b == nil { + if !util.Ints64Match(a.Med, b.Med) { return false - } else if a == nil && b == nil { - return true } - if !matchMulticastRpExternalRp(a.ExternalRp, b.ExternalRp) { + if !matchProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFiltersMatchAddressPrefix(a.AddressPrefix, b.AddressPrefix) { return false } - if !matchMulticastRpLocalRp(a.LocalRp, b.LocalRp) { + if !util.OrderedListsMatch(a.Nexthop, b.Nexthop) { + return false + } + if !util.OrderedListsMatch(a.FromPeer, b.FromPeer) { + return false + } + if !matchProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFiltersMatchAsPath(a.AsPath, b.AsPath) { + return false + } + if !matchProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFiltersMatchCommunity(a.Community, b.Community) { return false } return true } -func matchMulticastSptThreshold(a []MulticastSptThreshold, b []MulticastSptThreshold) bool { +func matchProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters(a []ProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters, b []ProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -10138,7 +10158,10 @@ func matchMulticastSptThreshold(a []MulticastSptThreshold, b []MulticastSptThres } for _, a := range a { for _, b := range b { - if !util.StringsMatch(a.Threshold, b.Threshold) { + if !util.BoolsMatch(a.Enable, b.Enable) { + return false + } + if !matchProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFiltersMatch(a.Match, b.Match) { return false } if !util.StringsEqual(a.Name, b.Name) { @@ -10148,7 +10171,7 @@ func matchMulticastSptThreshold(a []MulticastSptThreshold, b []MulticastSptThres } return true } -func matchMulticastSsmAddressSpace(a []MulticastSsmAddressSpace, b []MulticastSsmAddressSpace) bool { +func matchProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchAddressPrefix(a []ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchAddressPrefix, b []ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchAddressPrefix) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -10156,12 +10179,6 @@ func matchMulticastSsmAddressSpace(a []MulticastSsmAddressSpace, b []MulticastSs } for _, a := range a { for _, b := range b { - if !util.StringsMatch(a.GroupAddress, b.GroupAddress) { - return false - } - if !util.BoolsMatch(a.Included, b.Included) { - return false - } if !util.StringsEqual(a.Name, b.Name) { return false } @@ -10169,64 +10186,40 @@ func matchMulticastSsmAddressSpace(a []MulticastSsmAddressSpace, b []MulticastSs } return true } -func matchMulticast(a *Multicast, b *Multicast) bool { +func matchProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchAsPath(a *ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchAsPath, b *ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchAsPath) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.BoolsMatch(a.Enable, b.Enable) { - return false - } - if !matchMulticastInterfaceGroup(a.InterfaceGroup, b.InterfaceGroup) { - return false - } - if !util.Ints64Match(a.RouteAgeoutTime, b.RouteAgeoutTime) { - return false - } - if !matchMulticastRp(a.Rp, b.Rp) { - return false - } - if !matchMulticastSptThreshold(a.SptThreshold, b.SptThreshold) { - return false - } - if !matchMulticastSsmAddressSpace(a.SsmAddressSpace, b.SsmAddressSpace) { + if !util.StringsMatch(a.Regex, b.Regex) { return false } return true } -func matchProtocolRedistProfileFilterOspf(a *ProtocolRedistProfileFilterOspf, b *ProtocolRedistProfileFilterOspf) bool { +func matchProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchCommunity(a *ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchCommunity, b *ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchCommunity) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.OrderedListsMatch(a.Tag, b.Tag) { - return false - } - if !util.OrderedListsMatch(a.PathType, b.PathType) { - return false - } - if !util.OrderedListsMatch(a.Area, b.Area) { + if !util.StringsMatch(a.Regex, b.Regex) { return false } return true } -func matchProtocolRedistProfileFilterBgp(a *ProtocolRedistProfileFilterBgp, b *ProtocolRedistProfileFilterBgp) bool { +func matchProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchExtendedCommunity(a *ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchExtendedCommunity, b *ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchExtendedCommunity) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.OrderedListsMatch(a.Community, b.Community) { - return false - } - if !util.OrderedListsMatch(a.ExtendedCommunity, b.ExtendedCommunity) { + if !util.StringsMatch(a.Regex, b.Regex) { return false } return true } -func matchProtocolRedistProfileFilter(a *ProtocolRedistProfileFilter, b *ProtocolRedistProfileFilter) bool { +func matchProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatch(a *ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatch, b *ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatch) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -10235,54 +10228,111 @@ func matchProtocolRedistProfileFilter(a *ProtocolRedistProfileFilter, b *Protoco if !util.OrderedListsMatch(a.Nexthop, b.Nexthop) { return false } - if !matchProtocolRedistProfileFilterOspf(a.Ospf, b.Ospf) { + if !util.OrderedListsMatch(a.FromPeer, b.FromPeer) { return false } - if !matchProtocolRedistProfileFilterBgp(a.Bgp, b.Bgp) { + if !matchProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchAsPath(a.AsPath, b.AsPath) { return false } - if !util.OrderedListsMatch(a.Type, b.Type) { + if !matchProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchCommunity(a.Community, b.Community) { return false } - if !util.OrderedListsMatch(a.Interface, b.Interface) { + if !matchProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchExtendedCommunity(a.ExtendedCommunity, b.ExtendedCommunity) { return false } - if !util.OrderedListsMatch(a.Destination, b.Destination) { + if !util.StringsMatch(a.RouteTable, b.RouteTable) { + return false + } + if !util.Ints64Match(a.Med, b.Med) { + return false + } + if !matchProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchAddressPrefix(a.AddressPrefix, b.AddressPrefix) { return false } return true } -func matchProtocolRedistProfileActionNoRedist(a *ProtocolRedistProfileActionNoRedist, b *ProtocolRedistProfileActionNoRedist) bool { +func matchProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters(a []ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters, b []ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } + for _, a := range a { + for _, b := range b { + if !util.BoolsMatch(a.Enable, b.Enable) { + return false + } + if !matchProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatch(a.Match, b.Match) { + return false + } + if !util.StringsEqual(a.Name, b.Name) { + return false + } + } + } return true } -func matchProtocolRedistProfileActionRedist(a *ProtocolRedistProfileActionRedist, b *ProtocolRedistProfileActionRedist) bool { +func matchProtocolBgpPolicyConditionalAdvertisementPolicy(a []ProtocolBgpPolicyConditionalAdvertisementPolicy, b []ProtocolBgpPolicyConditionalAdvertisementPolicy) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } + for _, a := range a { + for _, b := range b { + if !util.BoolsMatch(a.Enable, b.Enable) { + return false + } + if !util.OrderedListsMatch(a.UsedBy, b.UsedBy) { + return false + } + if !matchProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters(a.NonExistFilters, b.NonExistFilters) { + return false + } + if !matchProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters(a.AdvertiseFilters, b.AdvertiseFilters) { + return false + } + if !util.StringsEqual(a.Name, b.Name) { + return false + } + } + } return true } -func matchProtocolRedistProfileAction(a *ProtocolRedistProfileAction, b *ProtocolRedistProfileAction) bool { +func matchProtocolBgpPolicyConditionalAdvertisement(a *ProtocolBgpPolicyConditionalAdvertisement, b *ProtocolBgpPolicyConditionalAdvertisement) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchProtocolRedistProfileActionNoRedist(a.NoRedist, b.NoRedist) { + if !matchProtocolBgpPolicyConditionalAdvertisementPolicy(a.Policy, b.Policy) { return false } - if !matchProtocolRedistProfileActionRedist(a.Redist, b.Redist) { + return true +} +func matchProtocolBgpPolicyExportRulesMatchCommunity(a *ProtocolBgpPolicyExportRulesMatchCommunity, b *ProtocolBgpPolicyExportRulesMatchCommunity) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + if !util.StringsMatch(a.Regex, b.Regex) { return false } return true } -func matchProtocolRedistProfile(a []ProtocolRedistProfile, b []ProtocolRedistProfile) bool { +func matchProtocolBgpPolicyExportRulesMatchExtendedCommunity(a *ProtocolBgpPolicyExportRulesMatchExtendedCommunity, b *ProtocolBgpPolicyExportRulesMatchExtendedCommunity) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + if !util.StringsMatch(a.Regex, b.Regex) { + return false + } + return true +} +func matchProtocolBgpPolicyExportRulesMatchAddressPrefix(a []ProtocolBgpPolicyExportRulesMatchAddressPrefix, b []ProtocolBgpPolicyExportRulesMatchAddressPrefix) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -10290,13 +10340,7 @@ func matchProtocolRedistProfile(a []ProtocolRedistProfile, b []ProtocolRedistPro } for _, a := range a { for _, b := range b { - if !util.Ints64Match(a.Priority, b.Priority) { - return false - } - if !matchProtocolRedistProfileFilter(a.Filter, b.Filter) { - return false - } - if !matchProtocolRedistProfileAction(a.Action, b.Action) { + if !util.BoolsMatch(a.Exact, b.Exact) { return false } if !util.StringsEqual(a.Name, b.Name) { @@ -10306,64 +10350,58 @@ func matchProtocolRedistProfile(a []ProtocolRedistProfile, b []ProtocolRedistPro } return true } -func matchProtocolRedistProfileIpv6FilterOspfv3(a *ProtocolRedistProfileIpv6FilterOspfv3, b *ProtocolRedistProfileIpv6FilterOspfv3) bool { +func matchProtocolBgpPolicyExportRulesMatchAsPath(a *ProtocolBgpPolicyExportRulesMatchAsPath, b *ProtocolBgpPolicyExportRulesMatchAsPath) bool { if a == nil && b != nil || a != nil && b == nil { return false - } else if a == nil && b == nil { - return true - } - if !util.OrderedListsMatch(a.PathType, b.PathType) { - return false - } - if !util.OrderedListsMatch(a.Area, b.Area) { - return false + } else if a == nil && b == nil { + return true } - if !util.OrderedListsMatch(a.Tag, b.Tag) { + if !util.StringsMatch(a.Regex, b.Regex) { return false } return true } -func matchProtocolRedistProfileIpv6FilterBgp(a *ProtocolRedistProfileIpv6FilterBgp, b *ProtocolRedistProfileIpv6FilterBgp) bool { +func matchProtocolBgpPolicyExportRulesMatch(a *ProtocolBgpPolicyExportRulesMatch, b *ProtocolBgpPolicyExportRulesMatch) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.OrderedListsMatch(a.Community, b.Community) { + if !matchProtocolBgpPolicyExportRulesMatchCommunity(a.Community, b.Community) { return false } - if !util.OrderedListsMatch(a.ExtendedCommunity, b.ExtendedCommunity) { + if !matchProtocolBgpPolicyExportRulesMatchExtendedCommunity(a.ExtendedCommunity, b.ExtendedCommunity) { return false } - return true -} -func matchProtocolRedistProfileIpv6Filter(a *ProtocolRedistProfileIpv6Filter, b *ProtocolRedistProfileIpv6Filter) bool { - if a == nil && b != nil || a != nil && b == nil { + if !util.StringsMatch(a.RouteTable, b.RouteTable) { return false - } else if a == nil && b == nil { - return true } - if !util.OrderedListsMatch(a.Destination, b.Destination) { + if !util.Ints64Match(a.Med, b.Med) { return false } - if !util.OrderedListsMatch(a.Nexthop, b.Nexthop) { + if !matchProtocolBgpPolicyExportRulesMatchAddressPrefix(a.AddressPrefix, b.AddressPrefix) { return false } - if !matchProtocolRedistProfileIpv6FilterOspfv3(a.Ospfv3, b.Ospfv3) { + if !util.OrderedListsMatch(a.Nexthop, b.Nexthop) { return false } - if !matchProtocolRedistProfileIpv6FilterBgp(a.Bgp, b.Bgp) { + if !util.OrderedListsMatch(a.FromPeer, b.FromPeer) { return false } - if !util.OrderedListsMatch(a.Type, b.Type) { + if !matchProtocolBgpPolicyExportRulesMatchAsPath(a.AsPath, b.AsPath) { return false } - if !util.OrderedListsMatch(a.Interface, b.Interface) { + return true +} +func matchProtocolBgpPolicyExportRulesActionDeny(a *ProtocolBgpPolicyExportRulesActionDeny, b *ProtocolBgpPolicyExportRulesActionDeny) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } return true } -func matchProtocolRedistProfileIpv6ActionNoRedist(a *ProtocolRedistProfileIpv6ActionNoRedist, b *ProtocolRedistProfileIpv6ActionNoRedist) bool { +func matchProtocolBgpPolicyExportRulesActionAllowUpdateAsPathNone(a *ProtocolBgpPolicyExportRulesActionAllowUpdateAsPathNone, b *ProtocolBgpPolicyExportRulesActionAllowUpdateAsPathNone) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -10371,7 +10409,7 @@ func matchProtocolRedistProfileIpv6ActionNoRedist(a *ProtocolRedistProfileIpv6Ac } return true } -func matchProtocolRedistProfileIpv6ActionRedist(a *ProtocolRedistProfileIpv6ActionRedist, b *ProtocolRedistProfileIpv6ActionRedist) bool { +func matchProtocolBgpPolicyExportRulesActionAllowUpdateAsPathRemove(a *ProtocolBgpPolicyExportRulesActionAllowUpdateAsPathRemove, b *ProtocolBgpPolicyExportRulesActionAllowUpdateAsPathRemove) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -10379,45 +10417,35 @@ func matchProtocolRedistProfileIpv6ActionRedist(a *ProtocolRedistProfileIpv6Acti } return true } -func matchProtocolRedistProfileIpv6Action(a *ProtocolRedistProfileIpv6Action, b *ProtocolRedistProfileIpv6Action) bool { +func matchProtocolBgpPolicyExportRulesActionAllowUpdateAsPath(a *ProtocolBgpPolicyExportRulesActionAllowUpdateAsPath, b *ProtocolBgpPolicyExportRulesActionAllowUpdateAsPath) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchProtocolRedistProfileIpv6ActionRedist(a.Redist, b.Redist) { + if !matchProtocolBgpPolicyExportRulesActionAllowUpdateAsPathNone(a.None, b.None) { return false } - if !matchProtocolRedistProfileIpv6ActionNoRedist(a.NoRedist, b.NoRedist) { + if !matchProtocolBgpPolicyExportRulesActionAllowUpdateAsPathRemove(a.Remove, b.Remove) { + return false + } + if !util.Ints64Match(a.Prepend, b.Prepend) { + return false + } + if !util.Ints64Match(a.RemoveAndPrepend, b.RemoveAndPrepend) { return false } return true } -func matchProtocolRedistProfileIpv6(a []ProtocolRedistProfileIpv6, b []ProtocolRedistProfileIpv6) bool { +func matchProtocolBgpPolicyExportRulesActionAllowUpdateCommunityNone(a *ProtocolBgpPolicyExportRulesActionAllowUpdateCommunityNone, b *ProtocolBgpPolicyExportRulesActionAllowUpdateCommunityNone) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - for _, a := range a { - for _, b := range b { - if !util.Ints64Match(a.Priority, b.Priority) { - return false - } - if !matchProtocolRedistProfileIpv6Filter(a.Filter, b.Filter) { - return false - } - if !matchProtocolRedistProfileIpv6Action(a.Action, b.Action) { - return false - } - if !util.StringsEqual(a.Name, b.Name) { - return false - } - } - } return true } -func matchProtocolRipInterfaceDefaultRouteDisable(a *ProtocolRipInterfaceDefaultRouteDisable, b *ProtocolRipInterfaceDefaultRouteDisable) bool { +func matchProtocolBgpPolicyExportRulesActionAllowUpdateCommunityRemoveAll(a *ProtocolBgpPolicyExportRulesActionAllowUpdateCommunityRemoveAll, b *ProtocolBgpPolicyExportRulesActionAllowUpdateCommunityRemoveAll) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -10425,135 +10453,126 @@ func matchProtocolRipInterfaceDefaultRouteDisable(a *ProtocolRipInterfaceDefault } return true } -func matchProtocolRipInterfaceDefaultRouteAdvertise(a *ProtocolRipInterfaceDefaultRouteAdvertise, b *ProtocolRipInterfaceDefaultRouteAdvertise) bool { +func matchProtocolBgpPolicyExportRulesActionAllowUpdateCommunity(a *ProtocolBgpPolicyExportRulesActionAllowUpdateCommunity, b *ProtocolBgpPolicyExportRulesActionAllowUpdateCommunity) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.Ints64Match(a.Metric, b.Metric) { + if !matchProtocolBgpPolicyExportRulesActionAllowUpdateCommunityNone(a.None, b.None) { return false } - return true -} -func matchProtocolRipInterfaceDefaultRoute(a *ProtocolRipInterfaceDefaultRoute, b *ProtocolRipInterfaceDefaultRoute) bool { - if a == nil && b != nil || a != nil && b == nil { + if !matchProtocolBgpPolicyExportRulesActionAllowUpdateCommunityRemoveAll(a.RemoveAll, b.RemoveAll) { return false - } else if a == nil && b == nil { - return true } - if !matchProtocolRipInterfaceDefaultRouteDisable(a.Disable, b.Disable) { + if !util.StringsMatch(a.RemoveRegex, b.RemoveRegex) { return false } - if !matchProtocolRipInterfaceDefaultRouteAdvertise(a.Advertise, b.Advertise) { + if !util.OrderedListsMatch(a.Append, b.Append) { + return false + } + if !util.OrderedListsMatch(a.Overwrite, b.Overwrite) { return false } return true } -func matchProtocolRipInterfaceBfd(a *ProtocolRipInterfaceBfd, b *ProtocolRipInterfaceBfd) bool { +func matchProtocolBgpPolicyExportRulesActionAllowUpdateExtendedCommunityNone(a *ProtocolBgpPolicyExportRulesActionAllowUpdateExtendedCommunityNone, b *ProtocolBgpPolicyExportRulesActionAllowUpdateExtendedCommunityNone) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Profile, b.Profile) { + return true +} +func matchProtocolBgpPolicyExportRulesActionAllowUpdateExtendedCommunityRemoveAll(a *ProtocolBgpPolicyExportRulesActionAllowUpdateExtendedCommunityRemoveAll, b *ProtocolBgpPolicyExportRulesActionAllowUpdateExtendedCommunityRemoveAll) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } return true } -func matchProtocolRipInterface(a []ProtocolRipInterface, b []ProtocolRipInterface) bool { +func matchProtocolBgpPolicyExportRulesActionAllowUpdateExtendedCommunity(a *ProtocolBgpPolicyExportRulesActionAllowUpdateExtendedCommunity, b *ProtocolBgpPolicyExportRulesActionAllowUpdateExtendedCommunity) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - for _, a := range a { - for _, b := range b { - if !util.BoolsMatch(a.Enable, b.Enable) { - return false - } - if !util.StringsMatch(a.Authentication, b.Authentication) { - return false - } - if !util.StringsMatch(a.Mode, b.Mode) { - return false - } - if !matchProtocolRipInterfaceDefaultRoute(a.DefaultRoute, b.DefaultRoute) { - return false - } - if !matchProtocolRipInterfaceBfd(a.Bfd, b.Bfd) { - return false - } - if !util.StringsEqual(a.Name, b.Name) { - return false - } - } + if !matchProtocolBgpPolicyExportRulesActionAllowUpdateExtendedCommunityNone(a.None, b.None) { + return false + } + if !matchProtocolBgpPolicyExportRulesActionAllowUpdateExtendedCommunityRemoveAll(a.RemoveAll, b.RemoveAll) { + return false + } + if !util.StringsMatch(a.RemoveRegex, b.RemoveRegex) { + return false + } + if !util.OrderedListsMatch(a.Append, b.Append) { + return false + } + if !util.OrderedListsMatch(a.Overwrite, b.Overwrite) { + return false } return true } -func matchProtocolRipTimers(a *ProtocolRipTimers, b *ProtocolRipTimers) bool { +func matchProtocolBgpPolicyExportRulesActionAllowUpdate(a *ProtocolBgpPolicyExportRulesActionAllowUpdate, b *ProtocolBgpPolicyExportRulesActionAllowUpdate) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.Ints64Match(a.DeleteIntervals, b.DeleteIntervals) { + if !util.Ints64Match(a.LocalPreference, b.LocalPreference) { return false } - if !util.Ints64Match(a.ExpireIntervals, b.ExpireIntervals) { + if !util.Ints64Match(a.Med, b.Med) { return false } - if !util.Ints64Match(a.IntervalSeconds, b.IntervalSeconds) { + if !util.StringsMatch(a.Nexthop, b.Nexthop) { return false } - if !util.Ints64Match(a.UpdateIntervals, b.UpdateIntervals) { + if !util.StringsMatch(a.Origin, b.Origin) { + return false + } + if !util.Ints64Match(a.AsPathLimit, b.AsPathLimit) { + return false + } + if !matchProtocolBgpPolicyExportRulesActionAllowUpdateAsPath(a.AsPath, b.AsPath) { + return false + } + if !matchProtocolBgpPolicyExportRulesActionAllowUpdateCommunity(a.Community, b.Community) { + return false + } + if !matchProtocolBgpPolicyExportRulesActionAllowUpdateExtendedCommunity(a.ExtendedCommunity, b.ExtendedCommunity) { return false } return true } -func matchProtocolRipAuthProfileMd5(a []ProtocolRipAuthProfileMd5, b []ProtocolRipAuthProfileMd5) bool { +func matchProtocolBgpPolicyExportRulesActionAllow(a *ProtocolBgpPolicyExportRulesActionAllow, b *ProtocolBgpPolicyExportRulesActionAllow) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - for _, a := range a { - for _, b := range b { - if !util.BoolsMatch(a.Preferred, b.Preferred) { - return false - } - if !util.StringsEqual(a.Name, b.Name) { - return false - } - if !util.StringsMatch(a.Key, b.Key) { - return false - } - } + if !matchProtocolBgpPolicyExportRulesActionAllowUpdate(a.Update, b.Update) { + return false } return true } -func matchProtocolRipAuthProfile(a []ProtocolRipAuthProfile, b []ProtocolRipAuthProfile) bool { +func matchProtocolBgpPolicyExportRulesAction(a *ProtocolBgpPolicyExportRulesAction, b *ProtocolBgpPolicyExportRulesAction) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - for _, a := range a { - for _, b := range b { - if !util.StringsEqual(a.Name, b.Name) { - return false - } - if !util.StringsMatch(a.Password, b.Password) { - return false - } - if !matchProtocolRipAuthProfileMd5(a.Md5, b.Md5) { - return false - } - } + if !matchProtocolBgpPolicyExportRulesActionDeny(a.Deny, b.Deny) { + return false + } + if !matchProtocolBgpPolicyExportRulesActionAllow(a.Allow, b.Allow) { + return false } return true } -func matchProtocolRipExportRules(a []ProtocolRipExportRules, b []ProtocolRipExportRules) bool { +func matchProtocolBgpPolicyExportRules(a []ProtocolBgpPolicyExportRules, b []ProtocolBgpPolicyExportRules) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -10561,615 +10580,506 @@ func matchProtocolRipExportRules(a []ProtocolRipExportRules, b []ProtocolRipExpo } for _, a := range a { for _, b := range b { - if !util.Ints64Match(a.Metric, b.Metric) { + if !util.StringsEqual(a.Name, b.Name) { return false } - if !util.StringsEqual(a.Name, b.Name) { + if !util.BoolsMatch(a.Enable, b.Enable) { + return false + } + if !util.OrderedListsMatch(a.UsedBy, b.UsedBy) { + return false + } + if !matchProtocolBgpPolicyExportRulesMatch(a.Match, b.Match) { + return false + } + if !matchProtocolBgpPolicyExportRulesAction(a.Action, b.Action) { return false } } } return true } -func matchProtocolRipGlobalBfd(a *ProtocolRipGlobalBfd, b *ProtocolRipGlobalBfd) bool { - if a == nil && b != nil || a != nil && b == nil { - return false - } else if a == nil && b == nil { - return true - } - if !util.StringsMatch(a.Profile, b.Profile) { - return false - } - return true -} -func matchProtocolRip(a *ProtocolRip, b *ProtocolRip) bool { +func matchProtocolBgpPolicyExport(a *ProtocolBgpPolicyExport, b *ProtocolBgpPolicyExport) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchProtocolRipTimers(a.Timers, b.Timers) { - return false - } - if !util.BoolsMatch(a.AllowRedistDefaultRoute, b.AllowRedistDefaultRoute) { - return false - } - if !matchProtocolRipAuthProfile(a.AuthProfile, b.AuthProfile) { - return false - } - if !util.BoolsMatch(a.Enable, b.Enable) { - return false - } - if !matchProtocolRipExportRules(a.ExportRules, b.ExportRules) { - return false - } - if !matchProtocolRipGlobalBfd(a.GlobalBfd, b.GlobalBfd) { - return false - } - if !matchProtocolRipInterface(a.Interface, b.Interface) { - return false - } - if !util.BoolsMatch(a.RejectDefaultRoute, b.RejectDefaultRoute) { + if !matchProtocolBgpPolicyExportRules(a.Rules, b.Rules) { return false } return true } -func matchProtocolBgpGlobalBfd(a *ProtocolBgpGlobalBfd, b *ProtocolBgpGlobalBfd) bool { +func matchProtocolBgpPolicyImportRulesMatchAddressPrefix(a []ProtocolBgpPolicyImportRulesMatchAddressPrefix, b []ProtocolBgpPolicyImportRulesMatchAddressPrefix) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Profile, b.Profile) { - return false + for _, a := range a { + for _, b := range b { + if !util.BoolsMatch(a.Exact, b.Exact) { + return false + } + if !util.StringsEqual(a.Name, b.Name) { + return false + } + } } return true } -func matchProtocolBgpPeerGroupTypeIbgp(a *ProtocolBgpPeerGroupTypeIbgp, b *ProtocolBgpPeerGroupTypeIbgp) bool { +func matchProtocolBgpPolicyImportRulesMatchAsPath(a *ProtocolBgpPolicyImportRulesMatchAsPath, b *ProtocolBgpPolicyImportRulesMatchAsPath) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.ExportNexthop, b.ExportNexthop) { + if !util.StringsMatch(a.Regex, b.Regex) { return false } return true } -func matchProtocolBgpPeerGroupTypeEbgpConfed(a *ProtocolBgpPeerGroupTypeEbgpConfed, b *ProtocolBgpPeerGroupTypeEbgpConfed) bool { +func matchProtocolBgpPolicyImportRulesMatchCommunity(a *ProtocolBgpPolicyImportRulesMatchCommunity, b *ProtocolBgpPolicyImportRulesMatchCommunity) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.ExportNexthop, b.ExportNexthop) { + if !util.StringsMatch(a.Regex, b.Regex) { return false } return true } -func matchProtocolBgpPeerGroupTypeIbgpConfed(a *ProtocolBgpPeerGroupTypeIbgpConfed, b *ProtocolBgpPeerGroupTypeIbgpConfed) bool { +func matchProtocolBgpPolicyImportRulesMatchExtendedCommunity(a *ProtocolBgpPolicyImportRulesMatchExtendedCommunity, b *ProtocolBgpPolicyImportRulesMatchExtendedCommunity) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.ExportNexthop, b.ExportNexthop) { + if !util.StringsMatch(a.Regex, b.Regex) { return false } return true } -func matchProtocolBgpPeerGroupTypeEbgp(a *ProtocolBgpPeerGroupTypeEbgp, b *ProtocolBgpPeerGroupTypeEbgp) bool { +func matchProtocolBgpPolicyImportRulesMatch(a *ProtocolBgpPolicyImportRulesMatch, b *ProtocolBgpPolicyImportRulesMatch) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.ImportNexthop, b.ImportNexthop) { + if !util.OrderedListsMatch(a.FromPeer, b.FromPeer) { return false } - if !util.StringsMatch(a.ExportNexthop, b.ExportNexthop) { + if !matchProtocolBgpPolicyImportRulesMatchAsPath(a.AsPath, b.AsPath) { return false } - if !util.BoolsMatch(a.RemovePrivateAs, b.RemovePrivateAs) { + if !matchProtocolBgpPolicyImportRulesMatchCommunity(a.Community, b.Community) { return false } - return true -} -func matchProtocolBgpPeerGroupType(a *ProtocolBgpPeerGroupType, b *ProtocolBgpPeerGroupType) bool { - if a == nil && b != nil || a != nil && b == nil { + if !matchProtocolBgpPolicyImportRulesMatchExtendedCommunity(a.ExtendedCommunity, b.ExtendedCommunity) { return false - } else if a == nil && b == nil { - return true } - if !matchProtocolBgpPeerGroupTypeIbgpConfed(a.IbgpConfed, b.IbgpConfed) { + if !util.StringsMatch(a.RouteTable, b.RouteTable) { return false } - if !matchProtocolBgpPeerGroupTypeEbgp(a.Ebgp, b.Ebgp) { + if !util.Ints64Match(a.Med, b.Med) { return false } - if !matchProtocolBgpPeerGroupTypeIbgp(a.Ibgp, b.Ibgp) { + if !matchProtocolBgpPolicyImportRulesMatchAddressPrefix(a.AddressPrefix, b.AddressPrefix) { return false } - if !matchProtocolBgpPeerGroupTypeEbgpConfed(a.EbgpConfed, b.EbgpConfed) { + if !util.OrderedListsMatch(a.Nexthop, b.Nexthop) { return false } return true } -func matchProtocolBgpPeerGroupPeerLocalAddress(a *ProtocolBgpPeerGroupPeerLocalAddress, b *ProtocolBgpPeerGroupPeerLocalAddress) bool { +func matchProtocolBgpPolicyImportRulesActionDeny(a *ProtocolBgpPolicyImportRulesActionDeny, b *ProtocolBgpPolicyImportRulesActionDeny) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Interface, b.Interface) { - return false - } - if !util.StringsMatch(a.Ip, b.Ip) { - return false - } return true } -func matchProtocolBgpPeerGroupPeerConnectionOptionsIncomingBgpConnection(a *ProtocolBgpPeerGroupPeerConnectionOptionsIncomingBgpConnection, b *ProtocolBgpPeerGroupPeerConnectionOptionsIncomingBgpConnection) bool { +func matchProtocolBgpPolicyImportRulesActionAllowUpdateExtendedCommunityNone(a *ProtocolBgpPolicyImportRulesActionAllowUpdateExtendedCommunityNone, b *ProtocolBgpPolicyImportRulesActionAllowUpdateExtendedCommunityNone) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.Ints64Match(a.RemotePort, b.RemotePort) { - return false - } - if !util.BoolsMatch(a.Allow, b.Allow) { - return false - } return true } -func matchProtocolBgpPeerGroupPeerConnectionOptionsOutgoingBgpConnection(a *ProtocolBgpPeerGroupPeerConnectionOptionsOutgoingBgpConnection, b *ProtocolBgpPeerGroupPeerConnectionOptionsOutgoingBgpConnection) bool { +func matchProtocolBgpPolicyImportRulesActionAllowUpdateExtendedCommunityRemoveAll(a *ProtocolBgpPolicyImportRulesActionAllowUpdateExtendedCommunityRemoveAll, b *ProtocolBgpPolicyImportRulesActionAllowUpdateExtendedCommunityRemoveAll) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.Ints64Match(a.LocalPort, b.LocalPort) { - return false - } - if !util.BoolsMatch(a.Allow, b.Allow) { - return false - } return true } -func matchProtocolBgpPeerGroupPeerConnectionOptions(a *ProtocolBgpPeerGroupPeerConnectionOptions, b *ProtocolBgpPeerGroupPeerConnectionOptions) bool { +func matchProtocolBgpPolicyImportRulesActionAllowUpdateExtendedCommunity(a *ProtocolBgpPolicyImportRulesActionAllowUpdateExtendedCommunity, b *ProtocolBgpPolicyImportRulesActionAllowUpdateExtendedCommunity) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Authentication, b.Authentication) { - return false - } - if !util.Ints64Match(a.MinRouteAdvInterval, b.MinRouteAdvInterval) { - return false - } - if !util.Ints64Match(a.Multihop, b.Multihop) { - return false - } - if !util.Ints64Match(a.OpenDelayTime, b.OpenDelayTime) { - return false - } - if !matchProtocolBgpPeerGroupPeerConnectionOptionsOutgoingBgpConnection(a.OutgoingBgpConnection, b.OutgoingBgpConnection) { + if !util.OrderedListsMatch(a.Overwrite, b.Overwrite) { return false } - if !util.StringsMatch(a.KeepAliveInterval, b.KeepAliveInterval) { + if !matchProtocolBgpPolicyImportRulesActionAllowUpdateExtendedCommunityNone(a.None, b.None) { return false } - if !util.StringsMatch(a.HoldTime, b.HoldTime) { + if !matchProtocolBgpPolicyImportRulesActionAllowUpdateExtendedCommunityRemoveAll(a.RemoveAll, b.RemoveAll) { return false } - if !util.Ints64Match(a.IdleHoldTime, b.IdleHoldTime) { + if !util.StringsMatch(a.RemoveRegex, b.RemoveRegex) { return false } - if !matchProtocolBgpPeerGroupPeerConnectionOptionsIncomingBgpConnection(a.IncomingBgpConnection, b.IncomingBgpConnection) { + if !util.OrderedListsMatch(a.Append, b.Append) { return false } return true } -func matchProtocolBgpPeerGroupPeerSubsequentAddressFamilyIdentifier(a *ProtocolBgpPeerGroupPeerSubsequentAddressFamilyIdentifier, b *ProtocolBgpPeerGroupPeerSubsequentAddressFamilyIdentifier) bool { +func matchProtocolBgpPolicyImportRulesActionAllowUpdateAsPathNone(a *ProtocolBgpPolicyImportRulesActionAllowUpdateAsPathNone, b *ProtocolBgpPolicyImportRulesActionAllowUpdateAsPathNone) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.BoolsMatch(a.Unicast, b.Unicast) { - return false - } - if !util.BoolsMatch(a.Multicast, b.Multicast) { - return false - } return true } -func matchProtocolBgpPeerGroupPeerPeerAddress(a *ProtocolBgpPeerGroupPeerPeerAddress, b *ProtocolBgpPeerGroupPeerPeerAddress) bool { +func matchProtocolBgpPolicyImportRulesActionAllowUpdateAsPathRemove(a *ProtocolBgpPolicyImportRulesActionAllowUpdateAsPathRemove, b *ProtocolBgpPolicyImportRulesActionAllowUpdateAsPathRemove) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Ip, b.Ip) { - return false - } - if !util.StringsMatch(a.Fqdn, b.Fqdn) { - return false - } return true } -func matchProtocolBgpPeerGroupPeerBfd(a *ProtocolBgpPeerGroupPeerBfd, b *ProtocolBgpPeerGroupPeerBfd) bool { +func matchProtocolBgpPolicyImportRulesActionAllowUpdateAsPath(a *ProtocolBgpPolicyImportRulesActionAllowUpdateAsPath, b *ProtocolBgpPolicyImportRulesActionAllowUpdateAsPath) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Profile, b.Profile) { + if !matchProtocolBgpPolicyImportRulesActionAllowUpdateAsPathNone(a.None, b.None) { + return false + } + if !matchProtocolBgpPolicyImportRulesActionAllowUpdateAsPathRemove(a.Remove, b.Remove) { return false } return true } -func matchProtocolBgpPeerGroupPeer(a []ProtocolBgpPeerGroupPeer, b []ProtocolBgpPeerGroupPeer) bool { +func matchProtocolBgpPolicyImportRulesActionAllowUpdateCommunityNone(a *ProtocolBgpPolicyImportRulesActionAllowUpdateCommunityNone, b *ProtocolBgpPolicyImportRulesActionAllowUpdateCommunityNone) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - for _, a := range a { - for _, b := range b { - if !util.StringsMatch(a.PeerAs, b.PeerAs) { - return false - } - if !util.StringsMatch(a.ReflectorClient, b.ReflectorClient) { - return false - } - if !matchProtocolBgpPeerGroupPeerSubsequentAddressFamilyIdentifier(a.SubsequentAddressFamilyIdentifier, b.SubsequentAddressFamilyIdentifier) { - return false - } - if !matchProtocolBgpPeerGroupPeerConnectionOptions(a.ConnectionOptions, b.ConnectionOptions) { - return false - } - if !util.BoolsMatch(a.EnableMpBgp, b.EnableMpBgp) { - return false - } - if !util.StringsMatch(a.AddressFamilyIdentifier, b.AddressFamilyIdentifier) { - return false - } - if !util.StringsMatch(a.MaxPrefixes, b.MaxPrefixes) { - return false - } - if !matchProtocolBgpPeerGroupPeerPeerAddress(a.PeerAddress, b.PeerAddress) { - return false - } - if !matchProtocolBgpPeerGroupPeerBfd(a.Bfd, b.Bfd) { - return false - } - if !util.StringsEqual(a.Name, b.Name) { - return false - } - if !util.BoolsMatch(a.Enable, b.Enable) { - return false - } - if !util.BoolsMatch(a.EnableSenderSideLoopDetection, b.EnableSenderSideLoopDetection) { - return false - } - if !util.StringsMatch(a.PeeringType, b.PeeringType) { - return false - } - if !matchProtocolBgpPeerGroupPeerLocalAddress(a.LocalAddress, b.LocalAddress) { - return false - } - } - } return true } -func matchProtocolBgpPeerGroup(a []ProtocolBgpPeerGroup, b []ProtocolBgpPeerGroup) bool { +func matchProtocolBgpPolicyImportRulesActionAllowUpdateCommunityRemoveAll(a *ProtocolBgpPolicyImportRulesActionAllowUpdateCommunityRemoveAll, b *ProtocolBgpPolicyImportRulesActionAllowUpdateCommunityRemoveAll) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - for _, a := range a { - for _, b := range b { - if !matchProtocolBgpPeerGroupType(a.Type, b.Type) { - return false - } - if !matchProtocolBgpPeerGroupPeer(a.Peer, b.Peer) { - return false - } - if !util.StringsEqual(a.Name, b.Name) { - return false - } - if !util.BoolsMatch(a.Enable, b.Enable) { - return false - } - if !util.BoolsMatch(a.AggregatedConfedAsPath, b.AggregatedConfedAsPath) { - return false - } - if !util.BoolsMatch(a.SoftResetWithStoredInfo, b.SoftResetWithStoredInfo) { - return false - } - } - } return true } -func matchProtocolBgpRedistRules(a []ProtocolBgpRedistRules, b []ProtocolBgpRedistRules) bool { +func matchProtocolBgpPolicyImportRulesActionAllowUpdateCommunity(a *ProtocolBgpPolicyImportRulesActionAllowUpdateCommunity, b *ProtocolBgpPolicyImportRulesActionAllowUpdateCommunity) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - for _, a := range a { - for _, b := range b { - if !util.StringsMatch(a.AddressFamilyIdentifier, b.AddressFamilyIdentifier) { - return false - } - if !util.StringsMatch(a.SetOrigin, b.SetOrigin) { - return false - } - if !util.OrderedListsMatch(a.SetExtendedCommunity, b.SetExtendedCommunity) { - return false - } - if !util.StringsEqual(a.Name, b.Name) { - return false - } - if !util.OrderedListsMatch(a.SetCommunity, b.SetCommunity) { - return false - } - if !util.StringsMatch(a.RouteTable, b.RouteTable) { - return false - } - if !util.BoolsMatch(a.Enable, b.Enable) { - return false - } - if !util.Ints64Match(a.SetMed, b.SetMed) { - return false - } - if !util.Ints64Match(a.SetLocalPreference, b.SetLocalPreference) { - return false - } - if !util.Ints64Match(a.SetAsPathLimit, b.SetAsPathLimit) { - return false - } - if !util.Ints64Match(a.Metric, b.Metric) { - return false - } - } + if !matchProtocolBgpPolicyImportRulesActionAllowUpdateCommunityNone(a.None, b.None) { + return false } - return true -} -func matchProtocolBgpPolicyAggregationAddressAggregateRouteAttributesExtendedCommunityNone(a *ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesExtendedCommunityNone, b *ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesExtendedCommunityNone) bool { - if a == nil && b != nil || a != nil && b == nil { + if !matchProtocolBgpPolicyImportRulesActionAllowUpdateCommunityRemoveAll(a.RemoveAll, b.RemoveAll) { return false - } else if a == nil && b == nil { - return true } - return true -} -func matchProtocolBgpPolicyAggregationAddressAggregateRouteAttributesExtendedCommunityRemoveAll(a *ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesExtendedCommunityRemoveAll, b *ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesExtendedCommunityRemoveAll) bool { - if a == nil && b != nil || a != nil && b == nil { + if !util.StringsMatch(a.RemoveRegex, b.RemoveRegex) { + return false + } + if !util.OrderedListsMatch(a.Append, b.Append) { + return false + } + if !util.OrderedListsMatch(a.Overwrite, b.Overwrite) { return false - } else if a == nil && b == nil { - return true } return true } -func matchProtocolBgpPolicyAggregationAddressAggregateRouteAttributesExtendedCommunity(a *ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesExtendedCommunity, b *ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesExtendedCommunity) bool { +func matchProtocolBgpPolicyImportRulesActionAllowUpdate(a *ProtocolBgpPolicyImportRulesActionAllowUpdate, b *ProtocolBgpPolicyImportRulesActionAllowUpdate) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchProtocolBgpPolicyAggregationAddressAggregateRouteAttributesExtendedCommunityNone(a.None, b.None) { + if !util.Ints64Match(a.Weight, b.Weight) { return false } - if !matchProtocolBgpPolicyAggregationAddressAggregateRouteAttributesExtendedCommunityRemoveAll(a.RemoveAll, b.RemoveAll) { + if !util.StringsMatch(a.Origin, b.Origin) { return false } - if !util.StringsMatch(a.RemoveRegex, b.RemoveRegex) { + if !util.Ints64Match(a.AsPathLimit, b.AsPathLimit) { + return false + } + if !matchProtocolBgpPolicyImportRulesActionAllowUpdateExtendedCommunity(a.ExtendedCommunity, b.ExtendedCommunity) { + return false + } + if !util.Ints64Match(a.LocalPreference, b.LocalPreference) { + return false + } + if !util.Ints64Match(a.Med, b.Med) { + return false + } + if !util.StringsMatch(a.Nexthop, b.Nexthop) { return false } - if !util.OrderedListsMatch(a.Append, b.Append) { + if !matchProtocolBgpPolicyImportRulesActionAllowUpdateAsPath(a.AsPath, b.AsPath) { return false } - if !util.OrderedListsMatch(a.Overwrite, b.Overwrite) { + if !matchProtocolBgpPolicyImportRulesActionAllowUpdateCommunity(a.Community, b.Community) { return false } return true } -func matchProtocolBgpPolicyAggregationAddressAggregateRouteAttributesAsPathNone(a *ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesAsPathNone, b *ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesAsPathNone) bool { +func matchProtocolBgpPolicyImportRulesActionAllow(a *ProtocolBgpPolicyImportRulesActionAllow, b *ProtocolBgpPolicyImportRulesActionAllow) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - return true -} -func matchProtocolBgpPolicyAggregationAddressAggregateRouteAttributesAsPathRemove(a *ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesAsPathRemove, b *ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesAsPathRemove) bool { - if a == nil && b != nil || a != nil && b == nil { + if !util.StringsMatch(a.Dampening, b.Dampening) { + return false + } + if !matchProtocolBgpPolicyImportRulesActionAllowUpdate(a.Update, b.Update) { return false - } else if a == nil && b == nil { - return true } return true } -func matchProtocolBgpPolicyAggregationAddressAggregateRouteAttributesAsPath(a *ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesAsPath, b *ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesAsPath) bool { +func matchProtocolBgpPolicyImportRulesAction(a *ProtocolBgpPolicyImportRulesAction, b *ProtocolBgpPolicyImportRulesAction) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchProtocolBgpPolicyAggregationAddressAggregateRouteAttributesAsPathNone(a.None, b.None) { - return false - } - if !matchProtocolBgpPolicyAggregationAddressAggregateRouteAttributesAsPathRemove(a.Remove, b.Remove) { + if !matchProtocolBgpPolicyImportRulesActionDeny(a.Deny, b.Deny) { return false } - if !util.Ints64Match(a.Prepend, b.Prepend) { + if !matchProtocolBgpPolicyImportRulesActionAllow(a.Allow, b.Allow) { return false } return true } -func matchProtocolBgpPolicyAggregationAddressAggregateRouteAttributesCommunityRemoveAll(a *ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesCommunityRemoveAll, b *ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesCommunityRemoveAll) bool { +func matchProtocolBgpPolicyImportRules(a []ProtocolBgpPolicyImportRules, b []ProtocolBgpPolicyImportRules) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } + for _, a := range a { + for _, b := range b { + if !util.BoolsMatch(a.Enable, b.Enable) { + return false + } + if !util.OrderedListsMatch(a.UsedBy, b.UsedBy) { + return false + } + if !matchProtocolBgpPolicyImportRulesMatch(a.Match, b.Match) { + return false + } + if !matchProtocolBgpPolicyImportRulesAction(a.Action, b.Action) { + return false + } + if !util.StringsEqual(a.Name, b.Name) { + return false + } + } + } return true } -func matchProtocolBgpPolicyAggregationAddressAggregateRouteAttributesCommunityNone(a *ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesCommunityNone, b *ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesCommunityNone) bool { +func matchProtocolBgpPolicyImport(a *ProtocolBgpPolicyImport, b *ProtocolBgpPolicyImport) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } + if !matchProtocolBgpPolicyImportRules(a.Rules, b.Rules) { + return false + } return true } -func matchProtocolBgpPolicyAggregationAddressAggregateRouteAttributesCommunity(a *ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesCommunity, b *ProtocolBgpPolicyAggregationAddressAggregateRouteAttributesCommunity) bool { +func matchProtocolBgpPolicy(a *ProtocolBgpPolicy, b *ProtocolBgpPolicy) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchProtocolBgpPolicyAggregationAddressAggregateRouteAttributesCommunityNone(a.None, b.None) { - return false - } - if !matchProtocolBgpPolicyAggregationAddressAggregateRouteAttributesCommunityRemoveAll(a.RemoveAll, b.RemoveAll) { + if !matchProtocolBgpPolicyAggregation(a.Aggregation, b.Aggregation) { return false } - if !util.StringsMatch(a.RemoveRegex, b.RemoveRegex) { + if !matchProtocolBgpPolicyConditionalAdvertisement(a.ConditionalAdvertisement, b.ConditionalAdvertisement) { return false } - if !util.OrderedListsMatch(a.Append, b.Append) { + if !matchProtocolBgpPolicyExport(a.Export, b.Export) { return false } - if !util.OrderedListsMatch(a.Overwrite, b.Overwrite) { + if !matchProtocolBgpPolicyImport(a.Import, b.Import) { return false } return true } -func matchProtocolBgpPolicyAggregationAddressAggregateRouteAttributes(a *ProtocolBgpPolicyAggregationAddressAggregateRouteAttributes, b *ProtocolBgpPolicyAggregationAddressAggregateRouteAttributes) bool { +func matchProtocolBgpDampeningProfile(a []ProtocolBgpDampeningProfile, b []ProtocolBgpDampeningProfile) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchProtocolBgpPolicyAggregationAddressAggregateRouteAttributesAsPath(a.AsPath, b.AsPath) { - return false - } - if !matchProtocolBgpPolicyAggregationAddressAggregateRouteAttributesCommunity(a.Community, b.Community) { - return false - } - if !util.Ints64Match(a.LocalPreference, b.LocalPreference) { - return false + for _, a := range a { + for _, b := range b { + if !util.FloatsMatch(a.Cutoff, b.Cutoff) { + return false + } + if !util.FloatsMatch(a.Reuse, b.Reuse) { + return false + } + if !util.Ints64Match(a.MaxHoldTime, b.MaxHoldTime) { + return false + } + if !util.Ints64Match(a.DecayHalfLifeReachable, b.DecayHalfLifeReachable) { + return false + } + if !util.Ints64Match(a.DecayHalfLifeUnreachable, b.DecayHalfLifeUnreachable) { + return false + } + if !util.StringsEqual(a.Name, b.Name) { + return false + } + if !util.BoolsMatch(a.Enable, b.Enable) { + return false + } + } } - if !util.Ints64Match(a.Med, b.Med) { + return true +} +func matchProtocolBgpPeerGroupPeerPeerAddress(a *ProtocolBgpPeerGroupPeerPeerAddress, b *ProtocolBgpPeerGroupPeerPeerAddress) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } - if !util.Ints64Match(a.Weight, b.Weight) { + if !util.StringsMatch(a.Ip, b.Ip) { return false } - if !util.StringsMatch(a.Nexthop, b.Nexthop) { + if !util.StringsMatch(a.Fqdn, b.Fqdn) { return false } - if !util.StringsMatch(a.Origin, b.Origin) { + return true +} +func matchProtocolBgpPeerGroupPeerSubsequentAddressFamilyIdentifier(a *ProtocolBgpPeerGroupPeerSubsequentAddressFamilyIdentifier, b *ProtocolBgpPeerGroupPeerSubsequentAddressFamilyIdentifier) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } - if !util.Ints64Match(a.AsPathLimit, b.AsPathLimit) { + if !util.BoolsMatch(a.Unicast, b.Unicast) { return false } - if !matchProtocolBgpPolicyAggregationAddressAggregateRouteAttributesExtendedCommunity(a.ExtendedCommunity, b.ExtendedCommunity) { + if !util.BoolsMatch(a.Multicast, b.Multicast) { return false } return true } -func matchProtocolBgpPolicyAggregationAddressSuppressFiltersMatchAsPath(a *ProtocolBgpPolicyAggregationAddressSuppressFiltersMatchAsPath, b *ProtocolBgpPolicyAggregationAddressSuppressFiltersMatchAsPath) bool { +func matchProtocolBgpPeerGroupPeerBfd(a *ProtocolBgpPeerGroupPeerBfd, b *ProtocolBgpPeerGroupPeerBfd) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Regex, b.Regex) { + if !util.StringsMatch(a.Profile, b.Profile) { return false } return true } -func matchProtocolBgpPolicyAggregationAddressSuppressFiltersMatchCommunity(a *ProtocolBgpPolicyAggregationAddressSuppressFiltersMatchCommunity, b *ProtocolBgpPolicyAggregationAddressSuppressFiltersMatchCommunity) bool { +func matchProtocolBgpPeerGroupPeerLocalAddress(a *ProtocolBgpPeerGroupPeerLocalAddress, b *ProtocolBgpPeerGroupPeerLocalAddress) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Regex, b.Regex) { + if !util.StringsMatch(a.Interface, b.Interface) { + return false + } + if !util.StringsMatch(a.Ip, b.Ip) { return false } return true } -func matchProtocolBgpPolicyAggregationAddressSuppressFiltersMatchExtendedCommunity(a *ProtocolBgpPolicyAggregationAddressSuppressFiltersMatchExtendedCommunity, b *ProtocolBgpPolicyAggregationAddressSuppressFiltersMatchExtendedCommunity) bool { +func matchProtocolBgpPeerGroupPeerConnectionOptionsIncomingBgpConnection(a *ProtocolBgpPeerGroupPeerConnectionOptionsIncomingBgpConnection, b *ProtocolBgpPeerGroupPeerConnectionOptionsIncomingBgpConnection) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Regex, b.Regex) { + if !util.Ints64Match(a.RemotePort, b.RemotePort) { + return false + } + if !util.BoolsMatch(a.Allow, b.Allow) { return false } return true } -func matchProtocolBgpPolicyAggregationAddressSuppressFiltersMatchAddressPrefix(a []ProtocolBgpPolicyAggregationAddressSuppressFiltersMatchAddressPrefix, b []ProtocolBgpPolicyAggregationAddressSuppressFiltersMatchAddressPrefix) bool { +func matchProtocolBgpPeerGroupPeerConnectionOptionsOutgoingBgpConnection(a *ProtocolBgpPeerGroupPeerConnectionOptionsOutgoingBgpConnection, b *ProtocolBgpPeerGroupPeerConnectionOptionsOutgoingBgpConnection) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - for _, a := range a { - for _, b := range b { - if !util.BoolsMatch(a.Exact, b.Exact) { - return false - } - if !util.StringsEqual(a.Name, b.Name) { - return false - } - } + if !util.Ints64Match(a.LocalPort, b.LocalPort) { + return false + } + if !util.BoolsMatch(a.Allow, b.Allow) { + return false } return true } -func matchProtocolBgpPolicyAggregationAddressSuppressFiltersMatch(a *ProtocolBgpPolicyAggregationAddressSuppressFiltersMatch, b *ProtocolBgpPolicyAggregationAddressSuppressFiltersMatch) bool { +func matchProtocolBgpPeerGroupPeerConnectionOptions(a *ProtocolBgpPeerGroupPeerConnectionOptions, b *ProtocolBgpPeerGroupPeerConnectionOptions) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.Ints64Match(a.Med, b.Med) { + if !util.StringsMatch(a.Authentication, b.Authentication) { return false } - if !matchProtocolBgpPolicyAggregationAddressSuppressFiltersMatchAddressPrefix(a.AddressPrefix, b.AddressPrefix) { + if !util.StringsMatch(a.KeepAliveInterval, b.KeepAliveInterval) { return false } - if !util.OrderedListsMatch(a.Nexthop, b.Nexthop) { + if !util.Ints64Match(a.Multihop, b.Multihop) { return false } - if !util.OrderedListsMatch(a.FromPeer, b.FromPeer) { + if !util.Ints64Match(a.OpenDelayTime, b.OpenDelayTime) { return false } - if !matchProtocolBgpPolicyAggregationAddressSuppressFiltersMatchAsPath(a.AsPath, b.AsPath) { + if !util.StringsMatch(a.HoldTime, b.HoldTime) { return false } - if !matchProtocolBgpPolicyAggregationAddressSuppressFiltersMatchCommunity(a.Community, b.Community) { + if !util.Ints64Match(a.MinRouteAdvInterval, b.MinRouteAdvInterval) { return false } - if !matchProtocolBgpPolicyAggregationAddressSuppressFiltersMatchExtendedCommunity(a.ExtendedCommunity, b.ExtendedCommunity) { + if !util.Ints64Match(a.IdleHoldTime, b.IdleHoldTime) { return false } - if !util.StringsMatch(a.RouteTable, b.RouteTable) { + if !matchProtocolBgpPeerGroupPeerConnectionOptionsIncomingBgpConnection(a.IncomingBgpConnection, b.IncomingBgpConnection) { + return false + } + if !matchProtocolBgpPeerGroupPeerConnectionOptionsOutgoingBgpConnection(a.OutgoingBgpConnection, b.OutgoingBgpConnection) { return false } return true } -func matchProtocolBgpPolicyAggregationAddressSuppressFilters(a []ProtocolBgpPolicyAggregationAddressSuppressFilters, b []ProtocolBgpPolicyAggregationAddressSuppressFilters) bool { +func matchProtocolBgpPeerGroupPeer(a []ProtocolBgpPeerGroupPeer, b []ProtocolBgpPeerGroupPeer) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -11177,103 +11087,123 @@ func matchProtocolBgpPolicyAggregationAddressSuppressFilters(a []ProtocolBgpPoli } for _, a := range a { for _, b := range b { - if !util.BoolsMatch(a.Enable, b.Enable) { + if !util.StringsMatch(a.ReflectorClient, b.ReflectorClient) { return false } - if !matchProtocolBgpPolicyAggregationAddressSuppressFiltersMatch(a.Match, b.Match) { + if !matchProtocolBgpPeerGroupPeerPeerAddress(a.PeerAddress, b.PeerAddress) { return false } - if !util.StringsEqual(a.Name, b.Name) { + if !util.StringsMatch(a.AddressFamilyIdentifier, b.AddressFamilyIdentifier) { return false } - } - } - return true -} -func matchProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix(a []ProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix, b []ProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix) bool { - if a == nil && b != nil || a != nil && b == nil { - return false - } else if a == nil && b == nil { - return true - } - for _, a := range a { - for _, b := range b { - if !util.BoolsMatch(a.Exact, b.Exact) { + if !util.StringsMatch(a.MaxPrefixes, b.MaxPrefixes) { return false } if !util.StringsEqual(a.Name, b.Name) { return false } + if !util.BoolsMatch(a.EnableMpBgp, b.EnableMpBgp) { + return false + } + if !matchProtocolBgpPeerGroupPeerSubsequentAddressFamilyIdentifier(a.SubsequentAddressFamilyIdentifier, b.SubsequentAddressFamilyIdentifier) { + return false + } + if !matchProtocolBgpPeerGroupPeerBfd(a.Bfd, b.Bfd) { + return false + } + if !matchProtocolBgpPeerGroupPeerConnectionOptions(a.ConnectionOptions, b.ConnectionOptions) { + return false + } + if !util.BoolsMatch(a.Enable, b.Enable) { + return false + } + if !util.StringsMatch(a.PeerAs, b.PeerAs) { + return false + } + if !util.BoolsMatch(a.EnableSenderSideLoopDetection, b.EnableSenderSideLoopDetection) { + return false + } + if !util.StringsMatch(a.PeeringType, b.PeeringType) { + return false + } + if !matchProtocolBgpPeerGroupPeerLocalAddress(a.LocalAddress, b.LocalAddress) { + return false + } } } return true } -func matchProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAsPath(a *ProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAsPath, b *ProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAsPath) bool { +func matchProtocolBgpPeerGroupTypeIbgpConfed(a *ProtocolBgpPeerGroupTypeIbgpConfed, b *ProtocolBgpPeerGroupTypeIbgpConfed) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Regex, b.Regex) { + if !util.StringsMatch(a.ExportNexthop, b.ExportNexthop) { return false } return true } -func matchProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchCommunity(a *ProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchCommunity, b *ProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchCommunity) bool { +func matchProtocolBgpPeerGroupTypeEbgp(a *ProtocolBgpPeerGroupTypeEbgp, b *ProtocolBgpPeerGroupTypeEbgp) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Regex, b.Regex) { + if !util.BoolsMatch(a.RemovePrivateAs, b.RemovePrivateAs) { + return false + } + if !util.StringsMatch(a.ImportNexthop, b.ImportNexthop) { + return false + } + if !util.StringsMatch(a.ExportNexthop, b.ExportNexthop) { return false } return true } -func matchProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchExtendedCommunity(a *ProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchExtendedCommunity, b *ProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchExtendedCommunity) bool { +func matchProtocolBgpPeerGroupTypeIbgp(a *ProtocolBgpPeerGroupTypeIbgp, b *ProtocolBgpPeerGroupTypeIbgp) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Regex, b.Regex) { + if !util.StringsMatch(a.ExportNexthop, b.ExportNexthop) { return false } return true } -func matchProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatch(a *ProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatch, b *ProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatch) bool { +func matchProtocolBgpPeerGroupTypeEbgpConfed(a *ProtocolBgpPeerGroupTypeEbgpConfed, b *ProtocolBgpPeerGroupTypeEbgpConfed) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.RouteTable, b.RouteTable) { - return false - } - if !util.Ints64Match(a.Med, b.Med) { - return false - } - if !matchProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAddressPrefix(a.AddressPrefix, b.AddressPrefix) { + if !util.StringsMatch(a.ExportNexthop, b.ExportNexthop) { return false } - if !util.OrderedListsMatch(a.Nexthop, b.Nexthop) { + return true +} +func matchProtocolBgpPeerGroupType(a *ProtocolBgpPeerGroupType, b *ProtocolBgpPeerGroupType) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } - if !util.OrderedListsMatch(a.FromPeer, b.FromPeer) { + if !matchProtocolBgpPeerGroupTypeEbgpConfed(a.EbgpConfed, b.EbgpConfed) { return false } - if !matchProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchAsPath(a.AsPath, b.AsPath) { + if !matchProtocolBgpPeerGroupTypeIbgpConfed(a.IbgpConfed, b.IbgpConfed) { return false } - if !matchProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchCommunity(a.Community, b.Community) { + if !matchProtocolBgpPeerGroupTypeEbgp(a.Ebgp, b.Ebgp) { return false } - if !matchProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatchExtendedCommunity(a.ExtendedCommunity, b.ExtendedCommunity) { + if !matchProtocolBgpPeerGroupTypeIbgp(a.Ibgp, b.Ibgp) { return false } return true } -func matchProtocolBgpPolicyAggregationAddressAdvertiseFilters(a []ProtocolBgpPolicyAggregationAddressAdvertiseFilters, b []ProtocolBgpPolicyAggregationAddressAdvertiseFilters) bool { +func matchProtocolBgpPeerGroup(a []ProtocolBgpPeerGroup, b []ProtocolBgpPeerGroup) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -11281,20 +11211,29 @@ func matchProtocolBgpPolicyAggregationAddressAdvertiseFilters(a []ProtocolBgpPol } for _, a := range a { for _, b := range b { - if !util.BoolsMatch(a.Enable, b.Enable) { + if !util.BoolsMatch(a.SoftResetWithStoredInfo, b.SoftResetWithStoredInfo) { return false } - if !matchProtocolBgpPolicyAggregationAddressAdvertiseFiltersMatch(a.Match, b.Match) { + if !matchProtocolBgpPeerGroupType(a.Type, b.Type) { + return false + } + if !matchProtocolBgpPeerGroupPeer(a.Peer, b.Peer) { return false } if !util.StringsEqual(a.Name, b.Name) { return false } + if !util.BoolsMatch(a.Enable, b.Enable) { + return false + } + if !util.BoolsMatch(a.AggregatedConfedAsPath, b.AggregatedConfedAsPath) { + return false + } } } return true } -func matchProtocolBgpPolicyAggregationAddress(a []ProtocolBgpPolicyAggregationAddress, b []ProtocolBgpPolicyAggregationAddress) bool { +func matchProtocolBgpRedistRules(a []ProtocolBgpRedistRules, b []ProtocolBgpRedistRules) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -11302,25 +11241,34 @@ func matchProtocolBgpPolicyAggregationAddress(a []ProtocolBgpPolicyAggregationAd } for _, a := range a { for _, b := range b { - if !util.StringsMatch(a.Prefix, b.Prefix) { + if !util.StringsMatch(a.RouteTable, b.RouteTable) { return false } - if !util.BoolsMatch(a.Enable, b.Enable) { + if !util.StringsMatch(a.SetOrigin, b.SetOrigin) { return false } - if !util.BoolsMatch(a.Summary, b.Summary) { + if !util.Ints64Match(a.SetMed, b.SetMed) { return false } - if !util.BoolsMatch(a.AsSet, b.AsSet) { + if !util.Ints64Match(a.SetAsPathLimit, b.SetAsPathLimit) { return false } - if !matchProtocolBgpPolicyAggregationAddressAggregateRouteAttributes(a.AggregateRouteAttributes, b.AggregateRouteAttributes) { + if !util.Ints64Match(a.Metric, b.Metric) { return false } - if !matchProtocolBgpPolicyAggregationAddressSuppressFilters(a.SuppressFilters, b.SuppressFilters) { + if !util.OrderedListsMatch(a.SetCommunity, b.SetCommunity) { return false } - if !matchProtocolBgpPolicyAggregationAddressAdvertiseFilters(a.AdvertiseFilters, b.AdvertiseFilters) { + if !util.StringsMatch(a.AddressFamilyIdentifier, b.AddressFamilyIdentifier) { + return false + } + if !util.BoolsMatch(a.Enable, b.Enable) { + return false + } + if !util.Ints64Match(a.SetLocalPreference, b.SetLocalPreference) { + return false + } + if !util.OrderedListsMatch(a.SetExtendedCommunity, b.SetExtendedCommunity) { return false } if !util.StringsEqual(a.Name, b.Name) { @@ -11330,152 +11278,156 @@ func matchProtocolBgpPolicyAggregationAddress(a []ProtocolBgpPolicyAggregationAd } return true } -func matchProtocolBgpPolicyAggregation(a *ProtocolBgpPolicyAggregation, b *ProtocolBgpPolicyAggregation) bool { +func matchProtocolBgpGlobalBfd(a *ProtocolBgpGlobalBfd, b *ProtocolBgpGlobalBfd) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchProtocolBgpPolicyAggregationAddress(a.Address, b.Address) { + if !util.StringsMatch(a.Profile, b.Profile) { return false } return true } -func matchProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFiltersMatchAddressPrefix(a []ProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFiltersMatchAddressPrefix, b []ProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFiltersMatchAddressPrefix) bool { +func matchProtocolBgpRoutingOptionsMed(a *ProtocolBgpRoutingOptionsMed, b *ProtocolBgpRoutingOptionsMed) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - for _, a := range a { - for _, b := range b { - if !util.StringsEqual(a.Name, b.Name) { - return false - } - } + if !util.BoolsMatch(a.AlwaysCompareMed, b.AlwaysCompareMed) { + return false + } + if !util.BoolsMatch(a.DeterministicMedComparison, b.DeterministicMedComparison) { + return false } return true } -func matchProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFiltersMatchAsPath(a *ProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFiltersMatchAsPath, b *ProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFiltersMatchAsPath) bool { +func matchProtocolBgpRoutingOptionsAggregate(a *ProtocolBgpRoutingOptionsAggregate, b *ProtocolBgpRoutingOptionsAggregate) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Regex, b.Regex) { + if !util.BoolsMatch(a.AggregateMed, b.AggregateMed) { return false } return true } -func matchProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFiltersMatchCommunity(a *ProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFiltersMatchCommunity, b *ProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFiltersMatchCommunity) bool { +func matchProtocolBgpRoutingOptionsGracefulRestart(a *ProtocolBgpRoutingOptionsGracefulRestart, b *ProtocolBgpRoutingOptionsGracefulRestart) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Regex, b.Regex) { + if !util.BoolsMatch(a.Enable, b.Enable) { + return false + } + if !util.Ints64Match(a.LocalRestartTime, b.LocalRestartTime) { + return false + } + if !util.Ints64Match(a.MaxPeerRestartTime, b.MaxPeerRestartTime) { + return false + } + if !util.Ints64Match(a.StaleRouteTime, b.StaleRouteTime) { return false } return true } -func matchProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFiltersMatchExtendedCommunity(a *ProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFiltersMatchExtendedCommunity, b *ProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFiltersMatchExtendedCommunity) bool { +func matchProtocolBgpRoutingOptions(a *ProtocolBgpRoutingOptions, b *ProtocolBgpRoutingOptions) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Regex, b.Regex) { + if !matchProtocolBgpRoutingOptionsMed(a.Med, b.Med) { + return false + } + if !util.StringsMatch(a.ReflectorClusterId, b.ReflectorClusterId) { + return false + } + if !matchProtocolBgpRoutingOptionsAggregate(a.Aggregate, b.Aggregate) { + return false + } + if !util.StringsMatch(a.AsFormat, b.AsFormat) { + return false + } + if !util.StringsMatch(a.ConfederationMemberAs, b.ConfederationMemberAs) { + return false + } + if !util.Ints64Match(a.DefaultLocalPreference, b.DefaultLocalPreference) { + return false + } + if !matchProtocolBgpRoutingOptionsGracefulRestart(a.GracefulRestart, b.GracefulRestart) { return false } return true } -func matchProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFiltersMatch(a *ProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFiltersMatch, b *ProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFiltersMatch) bool { +func matchProtocolBgp(a *ProtocolBgp, b *ProtocolBgp) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFiltersMatchAsPath(a.AsPath, b.AsPath) { + if !matchProtocolBgpDampeningProfile(a.DampeningProfile, b.DampeningProfile) { return false } - if !matchProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFiltersMatchCommunity(a.Community, b.Community) { + if !util.BoolsMatch(a.EcmpMultiAs, b.EcmpMultiAs) { return false } - if !matchProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFiltersMatchExtendedCommunity(a.ExtendedCommunity, b.ExtendedCommunity) { + if !matchProtocolBgpPeerGroup(a.PeerGroup, b.PeerGroup) { return false } - if !util.StringsMatch(a.RouteTable, b.RouteTable) { + if !util.BoolsMatch(a.RejectDefaultRoute, b.RejectDefaultRoute) { return false } - if !util.Ints64Match(a.Med, b.Med) { + if !util.BoolsMatch(a.AllowRedistDefaultRoute, b.AllowRedistDefaultRoute) { return false } - if !matchProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFiltersMatchAddressPrefix(a.AddressPrefix, b.AddressPrefix) { + if !util.BoolsMatch(a.EnforceFirstAs, b.EnforceFirstAs) { return false } - if !util.OrderedListsMatch(a.Nexthop, b.Nexthop) { + if !matchProtocolBgpGlobalBfd(a.GlobalBfd, b.GlobalBfd) { return false } - if !util.OrderedListsMatch(a.FromPeer, b.FromPeer) { + if !util.StringsMatch(a.LocalAs, b.LocalAs) { return false } - return true -} -func matchProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters(a []ProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters, b []ProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters) bool { - if a == nil && b != nil || a != nil && b == nil { + if !matchProtocolBgpRedistRules(a.RedistRules, b.RedistRules) { return false - } else if a == nil && b == nil { - return true } - for _, a := range a { - for _, b := range b { - if !util.BoolsMatch(a.Enable, b.Enable) { - return false - } - if !matchProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFiltersMatch(a.Match, b.Match) { - return false - } - if !util.StringsEqual(a.Name, b.Name) { - return false - } - } + if !util.StringsMatch(a.RouterId, b.RouterId) { + return false } - return true -} -func matchProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchAsPath(a *ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchAsPath, b *ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchAsPath) bool { - if a == nil && b != nil || a != nil && b == nil { + if !matchProtocolBgpRoutingOptions(a.RoutingOptions, b.RoutingOptions) { return false - } else if a == nil && b == nil { - return true } - if !util.StringsMatch(a.Regex, b.Regex) { + if !matchProtocolBgpAuthProfile(a.AuthProfile, b.AuthProfile) { return false } - return true -} -func matchProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchCommunity(a *ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchCommunity, b *ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchCommunity) bool { - if a == nil && b != nil || a != nil && b == nil { + if !util.BoolsMatch(a.Enable, b.Enable) { return false - } else if a == nil && b == nil { - return true } - if !util.StringsMatch(a.Regex, b.Regex) { + if !util.BoolsMatch(a.InstallRoute, b.InstallRoute) { + return false + } + if !matchProtocolBgpPolicy(a.Policy, b.Policy) { return false } return true } -func matchProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchExtendedCommunity(a *ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchExtendedCommunity, b *ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchExtendedCommunity) bool { +func matchProtocolOspfGlobalBfd(a *ProtocolOspfGlobalBfd, b *ProtocolOspfGlobalBfd) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Regex, b.Regex) { + if !util.StringsMatch(a.Profile, b.Profile) { return false } return true } -func matchProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchAddressPrefix(a []ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchAddressPrefix, b []ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchAddressPrefix) bool { +func matchProtocolOspfAreaInterfaceNeighbor(a []ProtocolOspfAreaInterfaceNeighbor, b []ProtocolOspfAreaInterfaceNeighbor) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -11490,39 +11442,59 @@ func matchProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchAd } return true } -func matchProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatch(a *ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatch, b *ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatch) bool { +func matchProtocolOspfAreaInterfaceLinkTypeBroadcast(a *ProtocolOspfAreaInterfaceLinkTypeBroadcast, b *ProtocolOspfAreaInterfaceLinkTypeBroadcast) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.RouteTable, b.RouteTable) { + return true +} +func matchProtocolOspfAreaInterfaceLinkTypeP2p(a *ProtocolOspfAreaInterfaceLinkTypeP2p, b *ProtocolOspfAreaInterfaceLinkTypeP2p) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } - if !util.Ints64Match(a.Med, b.Med) { + return true +} +func matchProtocolOspfAreaInterfaceLinkTypeP2mp(a *ProtocolOspfAreaInterfaceLinkTypeP2mp, b *ProtocolOspfAreaInterfaceLinkTypeP2mp) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } - if !matchProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchAddressPrefix(a.AddressPrefix, b.AddressPrefix) { + return true +} +func matchProtocolOspfAreaInterfaceLinkType(a *ProtocolOspfAreaInterfaceLinkType, b *ProtocolOspfAreaInterfaceLinkType) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } - if !util.OrderedListsMatch(a.Nexthop, b.Nexthop) { + if !matchProtocolOspfAreaInterfaceLinkTypeBroadcast(a.Broadcast, b.Broadcast) { return false } - if !util.OrderedListsMatch(a.FromPeer, b.FromPeer) { + if !matchProtocolOspfAreaInterfaceLinkTypeP2p(a.P2p, b.P2p) { return false } - if !matchProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchAsPath(a.AsPath, b.AsPath) { + if !matchProtocolOspfAreaInterfaceLinkTypeP2mp(a.P2mp, b.P2mp) { return false } - if !matchProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchCommunity(a.Community, b.Community) { + return true +} +func matchProtocolOspfAreaInterfaceBfd(a *ProtocolOspfAreaInterfaceBfd, b *ProtocolOspfAreaInterfaceBfd) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } - if !matchProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatchExtendedCommunity(a.ExtendedCommunity, b.ExtendedCommunity) { + if !util.StringsMatch(a.Profile, b.Profile) { return false } return true } -func matchProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters(a []ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters, b []ProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters) bool { +func matchProtocolOspfAreaInterface(a []ProtocolOspfAreaInterface, b []ProtocolOspfAreaInterface) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -11530,20 +11502,64 @@ func matchProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters(a []Pr } for _, a := range a { for _, b := range b { + if !matchProtocolOspfAreaInterfaceBfd(a.Bfd, b.Bfd) { + return false + } + if !util.StringsEqual(a.Name, b.Name) { + return false + } + if !util.Ints64Match(a.Priority, b.Priority) { + return false + } + if !util.Ints64Match(a.RetransmitInterval, b.RetransmitInterval) { + return false + } + if !util.StringsMatch(a.Authentication, b.Authentication) { + return false + } + if !util.Ints64Match(a.GrDelay, b.GrDelay) { + return false + } + if !util.Ints64Match(a.Metric, b.Metric) { + return false + } + if !matchProtocolOspfAreaInterfaceNeighbor(a.Neighbor, b.Neighbor) { + return false + } if !util.BoolsMatch(a.Enable, b.Enable) { return false } - if !matchProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFiltersMatch(a.Match, b.Match) { + if !util.BoolsMatch(a.Passive, b.Passive) { return false } - if !util.StringsEqual(a.Name, b.Name) { + if !util.Ints64Match(a.HelloInterval, b.HelloInterval) { + return false + } + if !matchProtocolOspfAreaInterfaceLinkType(a.LinkType, b.LinkType) { + return false + } + if !util.Ints64Match(a.DeadCounts, b.DeadCounts) { + return false + } + if !util.Ints64Match(a.TransitDelay, b.TransitDelay) { return false } } } return true } -func matchProtocolBgpPolicyConditionalAdvertisementPolicy(a []ProtocolBgpPolicyConditionalAdvertisementPolicy, b []ProtocolBgpPolicyConditionalAdvertisementPolicy) bool { +func matchProtocolOspfAreaVirtualLinkBfd(a *ProtocolOspfAreaVirtualLinkBfd, b *ProtocolOspfAreaVirtualLinkBfd) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + if !util.StringsMatch(a.Profile, b.Profile) { + return false + } + return true +} +func matchProtocolOspfAreaVirtualLink(a []ProtocolOspfAreaVirtualLink, b []ProtocolOspfAreaVirtualLink) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -11554,117 +11570,93 @@ func matchProtocolBgpPolicyConditionalAdvertisementPolicy(a []ProtocolBgpPolicyC if !util.BoolsMatch(a.Enable, b.Enable) { return false } - if !util.OrderedListsMatch(a.UsedBy, b.UsedBy) { + if !util.Ints64Match(a.HelloInterval, b.HelloInterval) { return false } - if !matchProtocolBgpPolicyConditionalAdvertisementPolicyNonExistFilters(a.NonExistFilters, b.NonExistFilters) { + if !matchProtocolOspfAreaVirtualLinkBfd(a.Bfd, b.Bfd) { return false } - if !matchProtocolBgpPolicyConditionalAdvertisementPolicyAdvertiseFilters(a.AdvertiseFilters, b.AdvertiseFilters) { + if !util.Ints64Match(a.TransitDelay, b.TransitDelay) { + return false + } + if !util.StringsMatch(a.Authentication, b.Authentication) { return false } if !util.StringsEqual(a.Name, b.Name) { return false } + if !util.StringsMatch(a.NeighborId, b.NeighborId) { + return false + } + if !util.StringsMatch(a.TransitAreaId, b.TransitAreaId) { + return false + } + if !util.Ints64Match(a.DeadCounts, b.DeadCounts) { + return false + } + if !util.Ints64Match(a.RetransmitInterval, b.RetransmitInterval) { + return false + } } } return true } -func matchProtocolBgpPolicyConditionalAdvertisement(a *ProtocolBgpPolicyConditionalAdvertisement, b *ProtocolBgpPolicyConditionalAdvertisement) bool { +func matchProtocolOspfAreaTypeNormal(a *ProtocolOspfAreaTypeNormal, b *ProtocolOspfAreaTypeNormal) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchProtocolBgpPolicyConditionalAdvertisementPolicy(a.Policy, b.Policy) { - return false - } return true } -func matchProtocolBgpPolicyExportRulesMatchAsPath(a *ProtocolBgpPolicyExportRulesMatchAsPath, b *ProtocolBgpPolicyExportRulesMatchAsPath) bool { +func matchProtocolOspfAreaTypeStubDefaultRouteDisable(a *ProtocolOspfAreaTypeStubDefaultRouteDisable, b *ProtocolOspfAreaTypeStubDefaultRouteDisable) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Regex, b.Regex) { - return false - } return true } -func matchProtocolBgpPolicyExportRulesMatchCommunity(a *ProtocolBgpPolicyExportRulesMatchCommunity, b *ProtocolBgpPolicyExportRulesMatchCommunity) bool { +func matchProtocolOspfAreaTypeStubDefaultRouteAdvertise(a *ProtocolOspfAreaTypeStubDefaultRouteAdvertise, b *ProtocolOspfAreaTypeStubDefaultRouteAdvertise) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Regex, b.Regex) { + if !util.Ints64Match(a.Metric, b.Metric) { return false } return true } -func matchProtocolBgpPolicyExportRulesMatchExtendedCommunity(a *ProtocolBgpPolicyExportRulesMatchExtendedCommunity, b *ProtocolBgpPolicyExportRulesMatchExtendedCommunity) bool { +func matchProtocolOspfAreaTypeStubDefaultRoute(a *ProtocolOspfAreaTypeStubDefaultRoute, b *ProtocolOspfAreaTypeStubDefaultRoute) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Regex, b.Regex) { + if !matchProtocolOspfAreaTypeStubDefaultRouteDisable(a.Disable, b.Disable) { return false } - return true -} -func matchProtocolBgpPolicyExportRulesMatchAddressPrefix(a []ProtocolBgpPolicyExportRulesMatchAddressPrefix, b []ProtocolBgpPolicyExportRulesMatchAddressPrefix) bool { - if a == nil && b != nil || a != nil && b == nil { + if !matchProtocolOspfAreaTypeStubDefaultRouteAdvertise(a.Advertise, b.Advertise) { return false - } else if a == nil && b == nil { - return true - } - for _, a := range a { - for _, b := range b { - if !util.BoolsMatch(a.Exact, b.Exact) { - return false - } - if !util.StringsEqual(a.Name, b.Name) { - return false - } - } } return true } -func matchProtocolBgpPolicyExportRulesMatch(a *ProtocolBgpPolicyExportRulesMatch, b *ProtocolBgpPolicyExportRulesMatch) bool { +func matchProtocolOspfAreaTypeStub(a *ProtocolOspfAreaTypeStub, b *ProtocolOspfAreaTypeStub) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.OrderedListsMatch(a.Nexthop, b.Nexthop) { - return false - } - if !util.OrderedListsMatch(a.FromPeer, b.FromPeer) { - return false - } - if !matchProtocolBgpPolicyExportRulesMatchAsPath(a.AsPath, b.AsPath) { - return false - } - if !matchProtocolBgpPolicyExportRulesMatchCommunity(a.Community, b.Community) { - return false - } - if !matchProtocolBgpPolicyExportRulesMatchExtendedCommunity(a.ExtendedCommunity, b.ExtendedCommunity) { - return false - } - if !util.StringsMatch(a.RouteTable, b.RouteTable) { - return false - } - if !util.Ints64Match(a.Med, b.Med) { + if !util.BoolsMatch(a.AcceptSummary, b.AcceptSummary) { return false } - if !matchProtocolBgpPolicyExportRulesMatchAddressPrefix(a.AddressPrefix, b.AddressPrefix) { + if !matchProtocolOspfAreaTypeStubDefaultRoute(a.DefaultRoute, b.DefaultRoute) { return false } return true } -func matchProtocolBgpPolicyExportRulesActionDeny(a *ProtocolBgpPolicyExportRulesActionDeny, b *ProtocolBgpPolicyExportRulesActionDeny) bool { +func matchProtocolOspfAreaTypeNssaDefaultRouteDisable(a *ProtocolOspfAreaTypeNssaDefaultRouteDisable, b *ProtocolOspfAreaTypeNssaDefaultRouteDisable) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -11672,43 +11664,35 @@ func matchProtocolBgpPolicyExportRulesActionDeny(a *ProtocolBgpPolicyExportRules } return true } -func matchProtocolBgpPolicyExportRulesActionAllowUpdateAsPathNone(a *ProtocolBgpPolicyExportRulesActionAllowUpdateAsPathNone, b *ProtocolBgpPolicyExportRulesActionAllowUpdateAsPathNone) bool { +func matchProtocolOspfAreaTypeNssaDefaultRouteAdvertise(a *ProtocolOspfAreaTypeNssaDefaultRouteAdvertise, b *ProtocolOspfAreaTypeNssaDefaultRouteAdvertise) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - return true -} -func matchProtocolBgpPolicyExportRulesActionAllowUpdateAsPathRemove(a *ProtocolBgpPolicyExportRulesActionAllowUpdateAsPathRemove, b *ProtocolBgpPolicyExportRulesActionAllowUpdateAsPathRemove) bool { - if a == nil && b != nil || a != nil && b == nil { + if !util.Ints64Match(a.Metric, b.Metric) { + return false + } + if !util.StringsMatch(a.Type, b.Type) { return false - } else if a == nil && b == nil { - return true } return true } -func matchProtocolBgpPolicyExportRulesActionAllowUpdateAsPath(a *ProtocolBgpPolicyExportRulesActionAllowUpdateAsPath, b *ProtocolBgpPolicyExportRulesActionAllowUpdateAsPath) bool { +func matchProtocolOspfAreaTypeNssaDefaultRoute(a *ProtocolOspfAreaTypeNssaDefaultRoute, b *ProtocolOspfAreaTypeNssaDefaultRoute) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchProtocolBgpPolicyExportRulesActionAllowUpdateAsPathNone(a.None, b.None) { - return false - } - if !matchProtocolBgpPolicyExportRulesActionAllowUpdateAsPathRemove(a.Remove, b.Remove) { - return false - } - if !util.Ints64Match(a.Prepend, b.Prepend) { + if !matchProtocolOspfAreaTypeNssaDefaultRouteDisable(a.Disable, b.Disable) { return false } - if !util.Ints64Match(a.RemoveAndPrepend, b.RemoveAndPrepend) { + if !matchProtocolOspfAreaTypeNssaDefaultRouteAdvertise(a.Advertise, b.Advertise) { return false } return true } -func matchProtocolBgpPolicyExportRulesActionAllowUpdateCommunityNone(a *ProtocolBgpPolicyExportRulesActionAllowUpdateCommunityNone, b *ProtocolBgpPolicyExportRulesActionAllowUpdateCommunityNone) bool { +func matchProtocolOspfAreaTypeNssaNssaExtRangeAdvertise(a *ProtocolOspfAreaTypeNssaNssaExtRangeAdvertise, b *ProtocolOspfAreaTypeNssaNssaExtRangeAdvertise) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -11716,7 +11700,7 @@ func matchProtocolBgpPolicyExportRulesActionAllowUpdateCommunityNone(a *Protocol } return true } -func matchProtocolBgpPolicyExportRulesActionAllowUpdateCommunityRemoveAll(a *ProtocolBgpPolicyExportRulesActionAllowUpdateCommunityRemoveAll, b *ProtocolBgpPolicyExportRulesActionAllowUpdateCommunityRemoveAll) bool { +func matchProtocolOspfAreaTypeNssaNssaExtRangeSuppress(a *ProtocolOspfAreaTypeNssaNssaExtRangeSuppress, b *ProtocolOspfAreaTypeNssaNssaExtRangeSuppress) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -11724,126 +11708,99 @@ func matchProtocolBgpPolicyExportRulesActionAllowUpdateCommunityRemoveAll(a *Pro } return true } -func matchProtocolBgpPolicyExportRulesActionAllowUpdateCommunity(a *ProtocolBgpPolicyExportRulesActionAllowUpdateCommunity, b *ProtocolBgpPolicyExportRulesActionAllowUpdateCommunity) bool { +func matchProtocolOspfAreaTypeNssaNssaExtRange(a []ProtocolOspfAreaTypeNssaNssaExtRange, b []ProtocolOspfAreaTypeNssaNssaExtRange) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchProtocolBgpPolicyExportRulesActionAllowUpdateCommunityNone(a.None, b.None) { - return false - } - if !matchProtocolBgpPolicyExportRulesActionAllowUpdateCommunityRemoveAll(a.RemoveAll, b.RemoveAll) { - return false - } - if !util.StringsMatch(a.RemoveRegex, b.RemoveRegex) { - return false - } - if !util.OrderedListsMatch(a.Append, b.Append) { - return false - } - if !util.OrderedListsMatch(a.Overwrite, b.Overwrite) { - return false + for _, a := range a { + for _, b := range b { + if !util.StringsEqual(a.Name, b.Name) { + return false + } + if !matchProtocolOspfAreaTypeNssaNssaExtRangeAdvertise(a.Advertise, b.Advertise) { + return false + } + if !matchProtocolOspfAreaTypeNssaNssaExtRangeSuppress(a.Suppress, b.Suppress) { + return false + } + } } return true } -func matchProtocolBgpPolicyExportRulesActionAllowUpdateExtendedCommunityNone(a *ProtocolBgpPolicyExportRulesActionAllowUpdateExtendedCommunityNone, b *ProtocolBgpPolicyExportRulesActionAllowUpdateExtendedCommunityNone) bool { +func matchProtocolOspfAreaTypeNssa(a *ProtocolOspfAreaTypeNssa, b *ProtocolOspfAreaTypeNssa) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - return true -} -func matchProtocolBgpPolicyExportRulesActionAllowUpdateExtendedCommunityRemoveAll(a *ProtocolBgpPolicyExportRulesActionAllowUpdateExtendedCommunityRemoveAll, b *ProtocolBgpPolicyExportRulesActionAllowUpdateExtendedCommunityRemoveAll) bool { - if a == nil && b != nil || a != nil && b == nil { + if !util.BoolsMatch(a.AcceptSummary, b.AcceptSummary) { + return false + } + if !matchProtocolOspfAreaTypeNssaDefaultRoute(a.DefaultRoute, b.DefaultRoute) { + return false + } + if !matchProtocolOspfAreaTypeNssaNssaExtRange(a.NssaExtRange, b.NssaExtRange) { return false - } else if a == nil && b == nil { - return true } return true } -func matchProtocolBgpPolicyExportRulesActionAllowUpdateExtendedCommunity(a *ProtocolBgpPolicyExportRulesActionAllowUpdateExtendedCommunity, b *ProtocolBgpPolicyExportRulesActionAllowUpdateExtendedCommunity) bool { +func matchProtocolOspfAreaType(a *ProtocolOspfAreaType, b *ProtocolOspfAreaType) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.OrderedListsMatch(a.Append, b.Append) { - return false - } - if !util.OrderedListsMatch(a.Overwrite, b.Overwrite) { - return false - } - if !matchProtocolBgpPolicyExportRulesActionAllowUpdateExtendedCommunityNone(a.None, b.None) { + if !matchProtocolOspfAreaTypeNormal(a.Normal, b.Normal) { return false } - if !matchProtocolBgpPolicyExportRulesActionAllowUpdateExtendedCommunityRemoveAll(a.RemoveAll, b.RemoveAll) { + if !matchProtocolOspfAreaTypeStub(a.Stub, b.Stub) { return false } - if !util.StringsMatch(a.RemoveRegex, b.RemoveRegex) { + if !matchProtocolOspfAreaTypeNssa(a.Nssa, b.Nssa) { return false } return true } -func matchProtocolBgpPolicyExportRulesActionAllowUpdate(a *ProtocolBgpPolicyExportRulesActionAllowUpdate, b *ProtocolBgpPolicyExportRulesActionAllowUpdate) bool { +func matchProtocolOspfAreaRangeAdvertise(a *ProtocolOspfAreaRangeAdvertise, b *ProtocolOspfAreaRangeAdvertise) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchProtocolBgpPolicyExportRulesActionAllowUpdateExtendedCommunity(a.ExtendedCommunity, b.ExtendedCommunity) { - return false - } - if !util.Ints64Match(a.LocalPreference, b.LocalPreference) { - return false - } - if !util.Ints64Match(a.Med, b.Med) { - return false - } - if !util.StringsMatch(a.Nexthop, b.Nexthop) { - return false - } - if !util.StringsMatch(a.Origin, b.Origin) { - return false - } - if !util.Ints64Match(a.AsPathLimit, b.AsPathLimit) { - return false - } - if !matchProtocolBgpPolicyExportRulesActionAllowUpdateAsPath(a.AsPath, b.AsPath) { - return false - } - if !matchProtocolBgpPolicyExportRulesActionAllowUpdateCommunity(a.Community, b.Community) { - return false - } return true } -func matchProtocolBgpPolicyExportRulesActionAllow(a *ProtocolBgpPolicyExportRulesActionAllow, b *ProtocolBgpPolicyExportRulesActionAllow) bool { +func matchProtocolOspfAreaRangeSuppress(a *ProtocolOspfAreaRangeSuppress, b *ProtocolOspfAreaRangeSuppress) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchProtocolBgpPolicyExportRulesActionAllowUpdate(a.Update, b.Update) { - return false - } return true } -func matchProtocolBgpPolicyExportRulesAction(a *ProtocolBgpPolicyExportRulesAction, b *ProtocolBgpPolicyExportRulesAction) bool { +func matchProtocolOspfAreaRange(a []ProtocolOspfAreaRange, b []ProtocolOspfAreaRange) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchProtocolBgpPolicyExportRulesActionDeny(a.Deny, b.Deny) { - return false - } - if !matchProtocolBgpPolicyExportRulesActionAllow(a.Allow, b.Allow) { - return false + for _, a := range a { + for _, b := range b { + if !util.StringsEqual(a.Name, b.Name) { + return false + } + if !matchProtocolOspfAreaRangeSuppress(a.Suppress, b.Suppress) { + return false + } + if !matchProtocolOspfAreaRangeAdvertise(a.Advertise, b.Advertise) { + return false + } + } } return true } -func matchProtocolBgpPolicyExportRules(a []ProtocolBgpPolicyExportRules, b []ProtocolBgpPolicyExportRules) bool { +func matchProtocolOspfArea(a []ProtocolOspfArea, b []ProtocolOspfArea) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -11851,16 +11808,37 @@ func matchProtocolBgpPolicyExportRules(a []ProtocolBgpPolicyExportRules, b []Pro } for _, a := range a { for _, b := range b { - if !util.BoolsMatch(a.Enable, b.Enable) { + if !matchProtocolOspfAreaType(a.Type, b.Type) { return false } - if !util.OrderedListsMatch(a.UsedBy, b.UsedBy) { + if !matchProtocolOspfAreaRange(a.Range, b.Range) { return false } - if !matchProtocolBgpPolicyExportRulesMatch(a.Match, b.Match) { + if !matchProtocolOspfAreaInterface(a.Interface, b.Interface) { return false } - if !matchProtocolBgpPolicyExportRulesAction(a.Action, b.Action) { + if !matchProtocolOspfAreaVirtualLink(a.VirtualLink, b.VirtualLink) { + return false + } + if !util.StringsEqual(a.Name, b.Name) { + return false + } + } + } + return true +} +func matchProtocolOspfAuthProfileMd5(a []ProtocolOspfAuthProfileMd5, b []ProtocolOspfAuthProfileMd5) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + for _, a := range a { + for _, b := range b { + if !util.StringsMatch(a.Key, b.Key) { + return false + } + if !util.BoolsMatch(a.Preferred, b.Preferred) { return false } if !util.StringsEqual(a.Name, b.Name) { @@ -11870,18 +11848,28 @@ func matchProtocolBgpPolicyExportRules(a []ProtocolBgpPolicyExportRules, b []Pro } return true } -func matchProtocolBgpPolicyExport(a *ProtocolBgpPolicyExport, b *ProtocolBgpPolicyExport) bool { +func matchProtocolOspfAuthProfile(a []ProtocolOspfAuthProfile, b []ProtocolOspfAuthProfile) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchProtocolBgpPolicyExportRules(a.Rules, b.Rules) { - return false + for _, a := range a { + for _, b := range b { + if !util.StringsEqual(a.Name, b.Name) { + return false + } + if !util.StringsMatch(a.Password, b.Password) { + return false + } + if !matchProtocolOspfAuthProfileMd5(a.Md5, b.Md5) { + return false + } + } } return true } -func matchProtocolBgpPolicyImportRulesMatchAddressPrefix(a []ProtocolBgpPolicyImportRulesMatchAddressPrefix, b []ProtocolBgpPolicyImportRulesMatchAddressPrefix) bool { +func matchProtocolOspfExportRules(a []ProtocolOspfExportRules, b []ProtocolOspfExportRules) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -11889,7 +11877,13 @@ func matchProtocolBgpPolicyImportRulesMatchAddressPrefix(a []ProtocolBgpPolicyIm } for _, a := range a { for _, b := range b { - if !util.BoolsMatch(a.Exact, b.Exact) { + if !util.StringsMatch(a.NewPathType, b.NewPathType) { + return false + } + if !util.StringsMatch(a.NewTag, b.NewTag) { + return false + } + if !util.Ints64Match(a.Metric, b.Metric) { return false } if !util.StringsEqual(a.Name, b.Name) { @@ -11899,110 +11893,120 @@ func matchProtocolBgpPolicyImportRulesMatchAddressPrefix(a []ProtocolBgpPolicyIm } return true } -func matchProtocolBgpPolicyImportRulesMatchAsPath(a *ProtocolBgpPolicyImportRulesMatchAsPath, b *ProtocolBgpPolicyImportRulesMatchAsPath) bool { +func matchProtocolOspfTimers(a *ProtocolOspfTimers, b *ProtocolOspfTimers) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Regex, b.Regex) { + if !util.FloatsMatch(a.LsaInterval, b.LsaInterval) { + return false + } + if !util.FloatsMatch(a.SpfCalculationDelay, b.SpfCalculationDelay) { return false } return true } -func matchProtocolBgpPolicyImportRulesMatchCommunity(a *ProtocolBgpPolicyImportRulesMatchCommunity, b *ProtocolBgpPolicyImportRulesMatchCommunity) bool { +func matchProtocolOspfGracefulRestart(a *ProtocolOspfGracefulRestart, b *ProtocolOspfGracefulRestart) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Regex, b.Regex) { + if !util.Ints64Match(a.MaxNeighborRestartTime, b.MaxNeighborRestartTime) { return false } - return true -} -func matchProtocolBgpPolicyImportRulesMatchExtendedCommunity(a *ProtocolBgpPolicyImportRulesMatchExtendedCommunity, b *ProtocolBgpPolicyImportRulesMatchExtendedCommunity) bool { - if a == nil && b != nil || a != nil && b == nil { + if !util.BoolsMatch(a.StrictLSAChecking, b.StrictLSAChecking) { return false - } else if a == nil && b == nil { - return true } - if !util.StringsMatch(a.Regex, b.Regex) { + if !util.BoolsMatch(a.Enable, b.Enable) { + return false + } + if !util.Ints64Match(a.GracePeriod, b.GracePeriod) { + return false + } + if !util.BoolsMatch(a.HelperEnable, b.HelperEnable) { return false } return true } -func matchProtocolBgpPolicyImportRulesMatch(a *ProtocolBgpPolicyImportRulesMatch, b *ProtocolBgpPolicyImportRulesMatch) bool { +func matchProtocolOspf(a *ProtocolOspf, b *ProtocolOspf) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchProtocolBgpPolicyImportRulesMatchAddressPrefix(a.AddressPrefix, b.AddressPrefix) { + if !matchProtocolOspfExportRules(a.ExportRules, b.ExportRules) { return false } - if !util.OrderedListsMatch(a.Nexthop, b.Nexthop) { + if !matchProtocolOspfGlobalBfd(a.GlobalBfd, b.GlobalBfd) { return false } - if !util.OrderedListsMatch(a.FromPeer, b.FromPeer) { + if !util.StringsMatch(a.RouterId, b.RouterId) { return false } - if !matchProtocolBgpPolicyImportRulesMatchAsPath(a.AsPath, b.AsPath) { + if !matchProtocolOspfArea(a.Area, b.Area) { return false } - if !matchProtocolBgpPolicyImportRulesMatchCommunity(a.Community, b.Community) { + if !matchProtocolOspfAuthProfile(a.AuthProfile, b.AuthProfile) { return false } - if !matchProtocolBgpPolicyImportRulesMatchExtendedCommunity(a.ExtendedCommunity, b.ExtendedCommunity) { + if !matchProtocolOspfGracefulRestart(a.GracefulRestart, b.GracefulRestart) { return false } - if !util.StringsMatch(a.RouteTable, b.RouteTable) { + if !util.BoolsMatch(a.RejectDefaultRoute, b.RejectDefaultRoute) { return false } - if !util.Ints64Match(a.Med, b.Med) { + if !util.BoolsMatch(a.Rfc1583, b.Rfc1583) { return false } - return true -} -func matchProtocolBgpPolicyImportRulesActionDeny(a *ProtocolBgpPolicyImportRulesActionDeny, b *ProtocolBgpPolicyImportRulesActionDeny) bool { - if a == nil && b != nil || a != nil && b == nil { + if !matchProtocolOspfTimers(a.Timers, b.Timers) { return false - } else if a == nil && b == nil { - return true } - return true -} -func matchProtocolBgpPolicyImportRulesActionAllowUpdateAsPathNone(a *ProtocolBgpPolicyImportRulesActionAllowUpdateAsPathNone, b *ProtocolBgpPolicyImportRulesActionAllowUpdateAsPathNone) bool { - if a == nil && b != nil || a != nil && b == nil { + if !util.BoolsMatch(a.AllowRedistDefaultRoute, b.AllowRedistDefaultRoute) { + return false + } + if !util.BoolsMatch(a.Enable, b.Enable) { return false - } else if a == nil && b == nil { - return true } return true } -func matchProtocolBgpPolicyImportRulesActionAllowUpdateAsPathRemove(a *ProtocolBgpPolicyImportRulesActionAllowUpdateAsPathRemove, b *ProtocolBgpPolicyImportRulesActionAllowUpdateAsPathRemove) bool { +func matchProtocolOspfv3ExportRules(a []ProtocolOspfv3ExportRules, b []ProtocolOspfv3ExportRules) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } + for _, a := range a { + for _, b := range b { + if !util.StringsMatch(a.NewPathType, b.NewPathType) { + return false + } + if !util.StringsMatch(a.NewTag, b.NewTag) { + return false + } + if !util.Ints64Match(a.Metric, b.Metric) { + return false + } + if !util.StringsEqual(a.Name, b.Name) { + return false + } + } + } return true } -func matchProtocolBgpPolicyImportRulesActionAllowUpdateAsPath(a *ProtocolBgpPolicyImportRulesActionAllowUpdateAsPath, b *ProtocolBgpPolicyImportRulesActionAllowUpdateAsPath) bool { +func matchProtocolOspfv3GlobalBfd(a *ProtocolOspfv3GlobalBfd, b *ProtocolOspfv3GlobalBfd) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchProtocolBgpPolicyImportRulesActionAllowUpdateAsPathNone(a.None, b.None) { - return false - } - if !matchProtocolBgpPolicyImportRulesActionAllowUpdateAsPathRemove(a.Remove, b.Remove) { + if !util.StringsMatch(a.Profile, b.Profile) { return false } return true } -func matchProtocolBgpPolicyImportRulesActionAllowUpdateCommunityNone(a *ProtocolBgpPolicyImportRulesActionAllowUpdateCommunityNone, b *ProtocolBgpPolicyImportRulesActionAllowUpdateCommunityNone) bool { +func matchProtocolOspfv3AreaRangeAdvertise(a *ProtocolOspfv3AreaRangeAdvertise, b *ProtocolOspfv3AreaRangeAdvertise) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -12010,7 +12014,7 @@ func matchProtocolBgpPolicyImportRulesActionAllowUpdateCommunityNone(a *Protocol } return true } -func matchProtocolBgpPolicyImportRulesActionAllowUpdateCommunityRemoveAll(a *ProtocolBgpPolicyImportRulesActionAllowUpdateCommunityRemoveAll, b *ProtocolBgpPolicyImportRulesActionAllowUpdateCommunityRemoveAll) bool { +func matchProtocolOspfv3AreaRangeSuppress(a *ProtocolOspfv3AreaRangeSuppress, b *ProtocolOspfv3AreaRangeSuppress) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -12018,132 +12022,95 @@ func matchProtocolBgpPolicyImportRulesActionAllowUpdateCommunityRemoveAll(a *Pro } return true } -func matchProtocolBgpPolicyImportRulesActionAllowUpdateCommunity(a *ProtocolBgpPolicyImportRulesActionAllowUpdateCommunity, b *ProtocolBgpPolicyImportRulesActionAllowUpdateCommunity) bool { +func matchProtocolOspfv3AreaRange(a []ProtocolOspfv3AreaRange, b []ProtocolOspfv3AreaRange) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchProtocolBgpPolicyImportRulesActionAllowUpdateCommunityNone(a.None, b.None) { - return false - } - if !matchProtocolBgpPolicyImportRulesActionAllowUpdateCommunityRemoveAll(a.RemoveAll, b.RemoveAll) { - return false - } - if !util.StringsMatch(a.RemoveRegex, b.RemoveRegex) { - return false - } - if !util.OrderedListsMatch(a.Append, b.Append) { - return false - } - if !util.OrderedListsMatch(a.Overwrite, b.Overwrite) { - return false + for _, a := range a { + for _, b := range b { + if !util.StringsEqual(a.Name, b.Name) { + return false + } + if !matchProtocolOspfv3AreaRangeAdvertise(a.Advertise, b.Advertise) { + return false + } + if !matchProtocolOspfv3AreaRangeSuppress(a.Suppress, b.Suppress) { + return false + } + } } return true } -func matchProtocolBgpPolicyImportRulesActionAllowUpdateExtendedCommunityNone(a *ProtocolBgpPolicyImportRulesActionAllowUpdateExtendedCommunityNone, b *ProtocolBgpPolicyImportRulesActionAllowUpdateExtendedCommunityNone) bool { +func matchProtocolOspfv3AreaInterfaceNeighbor(a []ProtocolOspfv3AreaInterfaceNeighbor, b []ProtocolOspfv3AreaInterfaceNeighbor) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } + for _, a := range a { + for _, b := range b { + if !util.StringsEqual(a.Name, b.Name) { + return false + } + } + } return true } -func matchProtocolBgpPolicyImportRulesActionAllowUpdateExtendedCommunityRemoveAll(a *ProtocolBgpPolicyImportRulesActionAllowUpdateExtendedCommunityRemoveAll, b *ProtocolBgpPolicyImportRulesActionAllowUpdateExtendedCommunityRemoveAll) bool { +func matchProtocolOspfv3AreaInterfaceBfd(a *ProtocolOspfv3AreaInterfaceBfd, b *ProtocolOspfv3AreaInterfaceBfd) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } + if !util.StringsMatch(a.Profile, b.Profile) { + return false + } return true } -func matchProtocolBgpPolicyImportRulesActionAllowUpdateExtendedCommunity(a *ProtocolBgpPolicyImportRulesActionAllowUpdateExtendedCommunity, b *ProtocolBgpPolicyImportRulesActionAllowUpdateExtendedCommunity) bool { +func matchProtocolOspfv3AreaInterfaceLinkTypeBroadcast(a *ProtocolOspfv3AreaInterfaceLinkTypeBroadcast, b *ProtocolOspfv3AreaInterfaceLinkTypeBroadcast) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.RemoveRegex, b.RemoveRegex) { - return false - } - if !util.OrderedListsMatch(a.Append, b.Append) { - return false - } - if !util.OrderedListsMatch(a.Overwrite, b.Overwrite) { - return false - } - if !matchProtocolBgpPolicyImportRulesActionAllowUpdateExtendedCommunityNone(a.None, b.None) { - return false - } - if !matchProtocolBgpPolicyImportRulesActionAllowUpdateExtendedCommunityRemoveAll(a.RemoveAll, b.RemoveAll) { - return false - } return true } -func matchProtocolBgpPolicyImportRulesActionAllowUpdate(a *ProtocolBgpPolicyImportRulesActionAllowUpdate, b *ProtocolBgpPolicyImportRulesActionAllowUpdate) bool { +func matchProtocolOspfv3AreaInterfaceLinkTypeP2p(a *ProtocolOspfv3AreaInterfaceLinkTypeP2p, b *ProtocolOspfv3AreaInterfaceLinkTypeP2p) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.Ints64Match(a.LocalPreference, b.LocalPreference) { - return false - } - if !util.Ints64Match(a.Weight, b.Weight) { - return false - } - if !util.StringsMatch(a.Nexthop, b.Nexthop) { - return false - } - if !matchProtocolBgpPolicyImportRulesActionAllowUpdateAsPath(a.AsPath, b.AsPath) { - return false - } - if !util.Ints64Match(a.Med, b.Med) { - return false - } - if !util.StringsMatch(a.Origin, b.Origin) { - return false - } - if !util.Ints64Match(a.AsPathLimit, b.AsPathLimit) { - return false - } - if !matchProtocolBgpPolicyImportRulesActionAllowUpdateCommunity(a.Community, b.Community) { - return false - } - if !matchProtocolBgpPolicyImportRulesActionAllowUpdateExtendedCommunity(a.ExtendedCommunity, b.ExtendedCommunity) { - return false - } return true } -func matchProtocolBgpPolicyImportRulesActionAllow(a *ProtocolBgpPolicyImportRulesActionAllow, b *ProtocolBgpPolicyImportRulesActionAllow) bool { +func matchProtocolOspfv3AreaInterfaceLinkTypeP2mp(a *ProtocolOspfv3AreaInterfaceLinkTypeP2mp, b *ProtocolOspfv3AreaInterfaceLinkTypeP2mp) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Dampening, b.Dampening) { - return false - } - if !matchProtocolBgpPolicyImportRulesActionAllowUpdate(a.Update, b.Update) { - return false - } return true } -func matchProtocolBgpPolicyImportRulesAction(a *ProtocolBgpPolicyImportRulesAction, b *ProtocolBgpPolicyImportRulesAction) bool { +func matchProtocolOspfv3AreaInterfaceLinkType(a *ProtocolOspfv3AreaInterfaceLinkType, b *ProtocolOspfv3AreaInterfaceLinkType) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchProtocolBgpPolicyImportRulesActionAllow(a.Allow, b.Allow) { + if !matchProtocolOspfv3AreaInterfaceLinkTypeBroadcast(a.Broadcast, b.Broadcast) { return false } - if !matchProtocolBgpPolicyImportRulesActionDeny(a.Deny, b.Deny) { + if !matchProtocolOspfv3AreaInterfaceLinkTypeP2p(a.P2p, b.P2p) { + return false + } + if !matchProtocolOspfv3AreaInterfaceLinkTypeP2mp(a.P2mp, b.P2mp) { return false } return true } -func matchProtocolBgpPolicyImportRules(a []ProtocolBgpPolicyImportRules, b []ProtocolBgpPolicyImportRules) bool { +func matchProtocolOspfv3AreaInterface(a []ProtocolOspfv3AreaInterface, b []ProtocolOspfv3AreaInterface) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -12151,57 +12118,67 @@ func matchProtocolBgpPolicyImportRules(a []ProtocolBgpPolicyImportRules, b []Pro } for _, a := range a { for _, b := range b { - if !util.StringsEqual(a.Name, b.Name) { + if !util.Ints64Match(a.DeadCounts, b.DeadCounts) { + return false + } + if !util.Ints64Match(a.RetransmitInterval, b.RetransmitInterval) { + return false + } + if !util.StringsMatch(a.Authentication, b.Authentication) { + return false + } + if !matchProtocolOspfv3AreaInterfaceNeighbor(a.Neighbor, b.Neighbor) { + return false + } + if !matchProtocolOspfv3AreaInterfaceBfd(a.Bfd, b.Bfd) { return false } if !util.BoolsMatch(a.Enable, b.Enable) { return false } - if !util.OrderedListsMatch(a.UsedBy, b.UsedBy) { + if !util.BoolsMatch(a.Passive, b.Passive) { + return false + } + if !util.Ints64Match(a.GrDelay, b.GrDelay) { + return false + } + if !matchProtocolOspfv3AreaInterfaceLinkType(a.LinkType, b.LinkType) { + return false + } + if !util.Ints64Match(a.InstanceId, b.InstanceId) { + return false + } + if !util.Ints64Match(a.Metric, b.Metric) { + return false + } + if !util.Ints64Match(a.HelloInterval, b.HelloInterval) { + return false + } + if !util.Ints64Match(a.TransitDelay, b.TransitDelay) { return false } - if !matchProtocolBgpPolicyImportRulesMatch(a.Match, b.Match) { + if !util.StringsEqual(a.Name, b.Name) { return false } - if !matchProtocolBgpPolicyImportRulesAction(a.Action, b.Action) { + if !util.Ints64Match(a.Priority, b.Priority) { return false } } } return true } -func matchProtocolBgpPolicyImport(a *ProtocolBgpPolicyImport, b *ProtocolBgpPolicyImport) bool { - if a == nil && b != nil || a != nil && b == nil { - return false - } else if a == nil && b == nil { - return true - } - if !matchProtocolBgpPolicyImportRules(a.Rules, b.Rules) { - return false - } - return true -} -func matchProtocolBgpPolicy(a *ProtocolBgpPolicy, b *ProtocolBgpPolicy) bool { +func matchProtocolOspfv3AreaVirtualLinkBfd(a *ProtocolOspfv3AreaVirtualLinkBfd, b *ProtocolOspfv3AreaVirtualLinkBfd) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchProtocolBgpPolicyImport(a.Import, b.Import) { - return false - } - if !matchProtocolBgpPolicyAggregation(a.Aggregation, b.Aggregation) { - return false - } - if !matchProtocolBgpPolicyConditionalAdvertisement(a.ConditionalAdvertisement, b.ConditionalAdvertisement) { - return false - } - if !matchProtocolBgpPolicyExport(a.Export, b.Export) { + if !util.StringsMatch(a.Profile, b.Profile) { return false } return true } -func matchProtocolBgpDampeningProfile(a []ProtocolBgpDampeningProfile, b []ProtocolBgpDampeningProfile) bool { +func matchProtocolOspfv3AreaVirtualLink(a []ProtocolOspfv3AreaVirtualLink, b []ProtocolOspfv3AreaVirtualLink) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -12209,106 +12186,151 @@ func matchProtocolBgpDampeningProfile(a []ProtocolBgpDampeningProfile, b []Proto } for _, a := range a { for _, b := range b { - if !util.Ints64Match(a.MaxHoldTime, b.MaxHoldTime) { + if !matchProtocolOspfv3AreaVirtualLinkBfd(a.Bfd, b.Bfd) { return false } - if !util.Ints64Match(a.DecayHalfLifeReachable, b.DecayHalfLifeReachable) { + if !util.StringsMatch(a.NeighborId, b.NeighborId) { return false } - if !util.Ints64Match(a.DecayHalfLifeUnreachable, b.DecayHalfLifeUnreachable) { + if !util.BoolsMatch(a.Enable, b.Enable) { + return false + } + if !util.Ints64Match(a.HelloInterval, b.HelloInterval) { + return false + } + if !util.Ints64Match(a.TransitDelay, b.TransitDelay) { + return false + } + if !util.StringsMatch(a.Authentication, b.Authentication) { return false } if !util.StringsEqual(a.Name, b.Name) { return false } - if !util.BoolsMatch(a.Enable, b.Enable) { + if !util.StringsMatch(a.TransitAreaId, b.TransitAreaId) { return false } - if !util.FloatsMatch(a.Cutoff, b.Cutoff) { + if !util.Ints64Match(a.InstanceId, b.InstanceId) { return false } - if !util.FloatsMatch(a.Reuse, b.Reuse) { + if !util.Ints64Match(a.DeadCounts, b.DeadCounts) { + return false + } + if !util.Ints64Match(a.RetransmitInterval, b.RetransmitInterval) { return false } } } return true } -func matchProtocolBgpRoutingOptionsMed(a *ProtocolBgpRoutingOptionsMed, b *ProtocolBgpRoutingOptionsMed) bool { +func matchProtocolOspfv3AreaTypeNormal(a *ProtocolOspfv3AreaTypeNormal, b *ProtocolOspfv3AreaTypeNormal) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.BoolsMatch(a.AlwaysCompareMed, b.AlwaysCompareMed) { - return false - } - if !util.BoolsMatch(a.DeterministicMedComparison, b.DeterministicMedComparison) { + return true +} +func matchProtocolOspfv3AreaTypeStubDefaultRouteDisable(a *ProtocolOspfv3AreaTypeStubDefaultRouteDisable, b *ProtocolOspfv3AreaTypeStubDefaultRouteDisable) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } return true } -func matchProtocolBgpRoutingOptionsAggregate(a *ProtocolBgpRoutingOptionsAggregate, b *ProtocolBgpRoutingOptionsAggregate) bool { +func matchProtocolOspfv3AreaTypeStubDefaultRouteAdvertise(a *ProtocolOspfv3AreaTypeStubDefaultRouteAdvertise, b *ProtocolOspfv3AreaTypeStubDefaultRouteAdvertise) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.BoolsMatch(a.AggregateMed, b.AggregateMed) { + if !util.Ints64Match(a.Metric, b.Metric) { return false } return true } -func matchProtocolBgpRoutingOptionsGracefulRestart(a *ProtocolBgpRoutingOptionsGracefulRestart, b *ProtocolBgpRoutingOptionsGracefulRestart) bool { +func matchProtocolOspfv3AreaTypeStubDefaultRoute(a *ProtocolOspfv3AreaTypeStubDefaultRoute, b *ProtocolOspfv3AreaTypeStubDefaultRoute) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.BoolsMatch(a.Enable, b.Enable) { + if !matchProtocolOspfv3AreaTypeStubDefaultRouteDisable(a.Disable, b.Disable) { return false } - if !util.Ints64Match(a.LocalRestartTime, b.LocalRestartTime) { + if !matchProtocolOspfv3AreaTypeStubDefaultRouteAdvertise(a.Advertise, b.Advertise) { return false } - if !util.Ints64Match(a.MaxPeerRestartTime, b.MaxPeerRestartTime) { + return true +} +func matchProtocolOspfv3AreaTypeStub(a *ProtocolOspfv3AreaTypeStub, b *ProtocolOspfv3AreaTypeStub) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + if !util.BoolsMatch(a.AcceptSummary, b.AcceptSummary) { return false } - if !util.Ints64Match(a.StaleRouteTime, b.StaleRouteTime) { + if !matchProtocolOspfv3AreaTypeStubDefaultRoute(a.DefaultRoute, b.DefaultRoute) { return false } return true } -func matchProtocolBgpRoutingOptions(a *ProtocolBgpRoutingOptions, b *ProtocolBgpRoutingOptions) bool { +func matchProtocolOspfv3AreaTypeNssaDefaultRouteDisable(a *ProtocolOspfv3AreaTypeNssaDefaultRouteDisable, b *ProtocolOspfv3AreaTypeNssaDefaultRouteDisable) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchProtocolBgpRoutingOptionsAggregate(a.Aggregate, b.Aggregate) { + return true +} +func matchProtocolOspfv3AreaTypeNssaDefaultRouteAdvertise(a *ProtocolOspfv3AreaTypeNssaDefaultRouteAdvertise, b *ProtocolOspfv3AreaTypeNssaDefaultRouteAdvertise) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } - if !util.StringsMatch(a.AsFormat, b.AsFormat) { + if !util.Ints64Match(a.Metric, b.Metric) { return false } - if !util.StringsMatch(a.ConfederationMemberAs, b.ConfederationMemberAs) { + if !util.StringsMatch(a.Type, b.Type) { return false } - if !util.Ints64Match(a.DefaultLocalPreference, b.DefaultLocalPreference) { + return true +} +func matchProtocolOspfv3AreaTypeNssaDefaultRoute(a *ProtocolOspfv3AreaTypeNssaDefaultRoute, b *ProtocolOspfv3AreaTypeNssaDefaultRoute) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } - if !matchProtocolBgpRoutingOptionsGracefulRestart(a.GracefulRestart, b.GracefulRestart) { + if !matchProtocolOspfv3AreaTypeNssaDefaultRouteDisable(a.Disable, b.Disable) { return false } - if !matchProtocolBgpRoutingOptionsMed(a.Med, b.Med) { + if !matchProtocolOspfv3AreaTypeNssaDefaultRouteAdvertise(a.Advertise, b.Advertise) { return false } - if !util.StringsMatch(a.ReflectorClusterId, b.ReflectorClusterId) { + return true +} +func matchProtocolOspfv3AreaTypeNssaNssaExtRangeAdvertise(a *ProtocolOspfv3AreaTypeNssaNssaExtRangeAdvertise, b *ProtocolOspfv3AreaTypeNssaNssaExtRangeAdvertise) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } return true } -func matchProtocolBgpAuthProfile(a []ProtocolBgpAuthProfile, b []ProtocolBgpAuthProfile) bool { +func matchProtocolOspfv3AreaTypeNssaNssaExtRangeSuppress(a *ProtocolOspfv3AreaTypeNssaNssaExtRangeSuppress, b *ProtocolOspfv3AreaTypeNssaNssaExtRangeSuppress) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + return true +} +func matchProtocolOspfv3AreaTypeNssaNssaExtRange(a []ProtocolOspfv3AreaTypeNssaNssaExtRange, b []ProtocolOspfv3AreaTypeNssaNssaExtRange) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -12316,104 +12338,54 @@ func matchProtocolBgpAuthProfile(a []ProtocolBgpAuthProfile, b []ProtocolBgpAuth } for _, a := range a { for _, b := range b { - if !util.StringsMatch(a.Secret, b.Secret) { + if !util.StringsEqual(a.Name, b.Name) { return false } - if !util.StringsEqual(a.Name, b.Name) { + if !matchProtocolOspfv3AreaTypeNssaNssaExtRangeSuppress(a.Suppress, b.Suppress) { + return false + } + if !matchProtocolOspfv3AreaTypeNssaNssaExtRangeAdvertise(a.Advertise, b.Advertise) { return false } } } return true } -func matchProtocolBgp(a *ProtocolBgp, b *ProtocolBgp) bool { +func matchProtocolOspfv3AreaTypeNssa(a *ProtocolOspfv3AreaTypeNssa, b *ProtocolOspfv3AreaTypeNssa) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchProtocolBgpPolicy(a.Policy, b.Policy) { - return false - } - if !matchProtocolBgpDampeningProfile(a.DampeningProfile, b.DampeningProfile) { - return false - } - if !util.BoolsMatch(a.Enable, b.Enable) { - return false - } - if !util.BoolsMatch(a.InstallRoute, b.InstallRoute) { - return false - } - if !matchProtocolBgpRoutingOptions(a.RoutingOptions, b.RoutingOptions) { - return false - } - if !matchProtocolBgpAuthProfile(a.AuthProfile, b.AuthProfile) { - return false - } - if !util.BoolsMatch(a.EcmpMultiAs, b.EcmpMultiAs) { - return false - } - if !matchProtocolBgpGlobalBfd(a.GlobalBfd, b.GlobalBfd) { - return false - } - if !util.StringsMatch(a.LocalAs, b.LocalAs) { - return false - } - if !util.StringsMatch(a.RouterId, b.RouterId) { - return false - } - if !util.BoolsMatch(a.AllowRedistDefaultRoute, b.AllowRedistDefaultRoute) { - return false - } - if !matchProtocolBgpPeerGroup(a.PeerGroup, b.PeerGroup) { - return false - } - if !matchProtocolBgpRedistRules(a.RedistRules, b.RedistRules) { + if !matchProtocolOspfv3AreaTypeNssaNssaExtRange(a.NssaExtRange, b.NssaExtRange) { return false } - if !util.BoolsMatch(a.RejectDefaultRoute, b.RejectDefaultRoute) { + if !util.BoolsMatch(a.AcceptSummary, b.AcceptSummary) { return false } - if !util.BoolsMatch(a.EnforceFirstAs, b.EnforceFirstAs) { + if !matchProtocolOspfv3AreaTypeNssaDefaultRoute(a.DefaultRoute, b.DefaultRoute) { return false } return true } -func matchProtocolOspfGracefulRestart(a *ProtocolOspfGracefulRestart, b *ProtocolOspfGracefulRestart) bool { +func matchProtocolOspfv3AreaType(a *ProtocolOspfv3AreaType, b *ProtocolOspfv3AreaType) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.Ints64Match(a.MaxNeighborRestartTime, b.MaxNeighborRestartTime) { - return false - } - if !util.BoolsMatch(a.StrictLSAChecking, b.StrictLSAChecking) { - return false - } - if !util.BoolsMatch(a.Enable, b.Enable) { - return false - } - if !util.Ints64Match(a.GracePeriod, b.GracePeriod) { - return false - } - if !util.BoolsMatch(a.HelperEnable, b.HelperEnable) { + if !matchProtocolOspfv3AreaTypeNormal(a.Normal, b.Normal) { return false } - return true -} -func matchProtocolOspfGlobalBfd(a *ProtocolOspfGlobalBfd, b *ProtocolOspfGlobalBfd) bool { - if a == nil && b != nil || a != nil && b == nil { + if !matchProtocolOspfv3AreaTypeStub(a.Stub, b.Stub) { return false - } else if a == nil && b == nil { - return true } - if !util.StringsMatch(a.Profile, b.Profile) { + if !matchProtocolOspfv3AreaTypeNssa(a.Nssa, b.Nssa) { return false } return true } -func matchProtocolOspfExportRules(a []ProtocolOspfExportRules, b []ProtocolOspfExportRules) bool { +func matchProtocolOspfv3Area(a []ProtocolOspfv3Area, b []ProtocolOspfv3Area) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -12421,45 +12393,73 @@ func matchProtocolOspfExportRules(a []ProtocolOspfExportRules, b []ProtocolOspfE } for _, a := range a { for _, b := range b { - if !util.StringsEqual(a.Name, b.Name) { + if !util.StringsMatch(a.Authentication, b.Authentication) { return false } - if !util.StringsMatch(a.NewPathType, b.NewPathType) { + if !matchProtocolOspfv3AreaType(a.Type, b.Type) { return false } - if !util.StringsMatch(a.NewTag, b.NewTag) { + if !matchProtocolOspfv3AreaRange(a.Range, b.Range) { return false } - if !util.Ints64Match(a.Metric, b.Metric) { + if !matchProtocolOspfv3AreaInterface(a.Interface, b.Interface) { + return false + } + if !matchProtocolOspfv3AreaVirtualLink(a.VirtualLink, b.VirtualLink) { + return false + } + if !util.StringsEqual(a.Name, b.Name) { return false } } } return true } -func matchProtocolOspfTimers(a *ProtocolOspfTimers, b *ProtocolOspfTimers) bool { +func matchProtocolOspfv3AuthProfileEspAuthenticationSha1(a *ProtocolOspfv3AuthProfileEspAuthenticationSha1, b *ProtocolOspfv3AuthProfileEspAuthenticationSha1) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.FloatsMatch(a.SpfCalculationDelay, b.SpfCalculationDelay) { + if !util.StringsMatch(a.Key, b.Key) { return false } - if !util.FloatsMatch(a.LsaInterval, b.LsaInterval) { + return true +} +func matchProtocolOspfv3AuthProfileEspAuthenticationSha256(a *ProtocolOspfv3AuthProfileEspAuthenticationSha256, b *ProtocolOspfv3AuthProfileEspAuthenticationSha256) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + if !util.StringsMatch(a.Key, b.Key) { return false } return true } -func matchProtocolOspfAreaTypeNormal(a *ProtocolOspfAreaTypeNormal, b *ProtocolOspfAreaTypeNormal) bool { +func matchProtocolOspfv3AuthProfileEspAuthenticationSha384(a *ProtocolOspfv3AuthProfileEspAuthenticationSha384, b *ProtocolOspfv3AuthProfileEspAuthenticationSha384) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + if !util.StringsMatch(a.Key, b.Key) { + return false + } + return true +} +func matchProtocolOspfv3AuthProfileEspAuthenticationSha512(a *ProtocolOspfv3AuthProfileEspAuthenticationSha512, b *ProtocolOspfv3AuthProfileEspAuthenticationSha512) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } + if !util.StringsMatch(a.Key, b.Key) { + return false + } return true } -func matchProtocolOspfAreaTypeStubDefaultRouteDisable(a *ProtocolOspfAreaTypeStubDefaultRouteDisable, b *ProtocolOspfAreaTypeStubDefaultRouteDisable) bool { +func matchProtocolOspfv3AuthProfileEspAuthenticationNone(a *ProtocolOspfv3AuthProfileEspAuthenticationNone, b *ProtocolOspfv3AuthProfileEspAuthenticationNone) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -12467,169 +12467,150 @@ func matchProtocolOspfAreaTypeStubDefaultRouteDisable(a *ProtocolOspfAreaTypeStu } return true } -func matchProtocolOspfAreaTypeStubDefaultRouteAdvertise(a *ProtocolOspfAreaTypeStubDefaultRouteAdvertise, b *ProtocolOspfAreaTypeStubDefaultRouteAdvertise) bool { +func matchProtocolOspfv3AuthProfileEspAuthenticationMd5(a *ProtocolOspfv3AuthProfileEspAuthenticationMd5, b *ProtocolOspfv3AuthProfileEspAuthenticationMd5) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.Ints64Match(a.Metric, b.Metric) { + if !util.StringsMatch(a.Key, b.Key) { return false } return true } -func matchProtocolOspfAreaTypeStubDefaultRoute(a *ProtocolOspfAreaTypeStubDefaultRoute, b *ProtocolOspfAreaTypeStubDefaultRoute) bool { +func matchProtocolOspfv3AuthProfileEspAuthentication(a *ProtocolOspfv3AuthProfileEspAuthentication, b *ProtocolOspfv3AuthProfileEspAuthentication) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchProtocolOspfAreaTypeStubDefaultRouteDisable(a.Disable, b.Disable) { + if !matchProtocolOspfv3AuthProfileEspAuthenticationSha384(a.Sha384, b.Sha384) { return false } - if !matchProtocolOspfAreaTypeStubDefaultRouteAdvertise(a.Advertise, b.Advertise) { + if !matchProtocolOspfv3AuthProfileEspAuthenticationSha512(a.Sha512, b.Sha512) { return false } - return true -} -func matchProtocolOspfAreaTypeStub(a *ProtocolOspfAreaTypeStub, b *ProtocolOspfAreaTypeStub) bool { - if a == nil && b != nil || a != nil && b == nil { + if !matchProtocolOspfv3AuthProfileEspAuthenticationNone(a.None, b.None) { return false - } else if a == nil && b == nil { - return true } - if !util.BoolsMatch(a.AcceptSummary, b.AcceptSummary) { + if !matchProtocolOspfv3AuthProfileEspAuthenticationMd5(a.Md5, b.Md5) { return false } - if !matchProtocolOspfAreaTypeStubDefaultRoute(a.DefaultRoute, b.DefaultRoute) { + if !matchProtocolOspfv3AuthProfileEspAuthenticationSha1(a.Sha1, b.Sha1) { return false } - return true -} -func matchProtocolOspfAreaTypeNssaDefaultRouteDisable(a *ProtocolOspfAreaTypeNssaDefaultRouteDisable, b *ProtocolOspfAreaTypeNssaDefaultRouteDisable) bool { - if a == nil && b != nil || a != nil && b == nil { + if !matchProtocolOspfv3AuthProfileEspAuthenticationSha256(a.Sha256, b.Sha256) { return false - } else if a == nil && b == nil { - return true } return true } -func matchProtocolOspfAreaTypeNssaDefaultRouteAdvertise(a *ProtocolOspfAreaTypeNssaDefaultRouteAdvertise, b *ProtocolOspfAreaTypeNssaDefaultRouteAdvertise) bool { +func matchProtocolOspfv3AuthProfileEspEncryption(a *ProtocolOspfv3AuthProfileEspEncryption, b *ProtocolOspfv3AuthProfileEspEncryption) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.Ints64Match(a.Metric, b.Metric) { + if !util.StringsMatch(a.Algorithm, b.Algorithm) { return false } - if !util.StringsMatch(a.Type, b.Type) { + if !util.StringsMatch(a.Key, b.Key) { return false } return true } -func matchProtocolOspfAreaTypeNssaDefaultRoute(a *ProtocolOspfAreaTypeNssaDefaultRoute, b *ProtocolOspfAreaTypeNssaDefaultRoute) bool { +func matchProtocolOspfv3AuthProfileEsp(a *ProtocolOspfv3AuthProfileEsp, b *ProtocolOspfv3AuthProfileEsp) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchProtocolOspfAreaTypeNssaDefaultRouteDisable(a.Disable, b.Disable) { + if !matchProtocolOspfv3AuthProfileEspAuthentication(a.Authentication, b.Authentication) { return false } - if !matchProtocolOspfAreaTypeNssaDefaultRouteAdvertise(a.Advertise, b.Advertise) { + if !matchProtocolOspfv3AuthProfileEspEncryption(a.Encryption, b.Encryption) { return false } return true } -func matchProtocolOspfAreaTypeNssaNssaExtRangeAdvertise(a *ProtocolOspfAreaTypeNssaNssaExtRangeAdvertise, b *ProtocolOspfAreaTypeNssaNssaExtRangeAdvertise) bool { +func matchProtocolOspfv3AuthProfileAhSha1(a *ProtocolOspfv3AuthProfileAhSha1, b *ProtocolOspfv3AuthProfileAhSha1) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } + if !util.StringsMatch(a.Key, b.Key) { + return false + } return true } -func matchProtocolOspfAreaTypeNssaNssaExtRangeSuppress(a *ProtocolOspfAreaTypeNssaNssaExtRangeSuppress, b *ProtocolOspfAreaTypeNssaNssaExtRangeSuppress) bool { +func matchProtocolOspfv3AuthProfileAhSha256(a *ProtocolOspfv3AuthProfileAhSha256, b *ProtocolOspfv3AuthProfileAhSha256) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } + if !util.StringsMatch(a.Key, b.Key) { + return false + } return true } -func matchProtocolOspfAreaTypeNssaNssaExtRange(a []ProtocolOspfAreaTypeNssaNssaExtRange, b []ProtocolOspfAreaTypeNssaNssaExtRange) bool { +func matchProtocolOspfv3AuthProfileAhSha384(a *ProtocolOspfv3AuthProfileAhSha384, b *ProtocolOspfv3AuthProfileAhSha384) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - for _, a := range a { - for _, b := range b { - if !util.StringsEqual(a.Name, b.Name) { - return false - } - if !matchProtocolOspfAreaTypeNssaNssaExtRangeAdvertise(a.Advertise, b.Advertise) { - return false - } - if !matchProtocolOspfAreaTypeNssaNssaExtRangeSuppress(a.Suppress, b.Suppress) { - return false - } - } + if !util.StringsMatch(a.Key, b.Key) { + return false } return true } -func matchProtocolOspfAreaTypeNssa(a *ProtocolOspfAreaTypeNssa, b *ProtocolOspfAreaTypeNssa) bool { +func matchProtocolOspfv3AuthProfileAhSha512(a *ProtocolOspfv3AuthProfileAhSha512, b *ProtocolOspfv3AuthProfileAhSha512) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.BoolsMatch(a.AcceptSummary, b.AcceptSummary) { + if !util.StringsMatch(a.Key, b.Key) { return false } - if !matchProtocolOspfAreaTypeNssaDefaultRoute(a.DefaultRoute, b.DefaultRoute) { + return true +} +func matchProtocolOspfv3AuthProfileAhMd5(a *ProtocolOspfv3AuthProfileAhMd5, b *ProtocolOspfv3AuthProfileAhMd5) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } - if !matchProtocolOspfAreaTypeNssaNssaExtRange(a.NssaExtRange, b.NssaExtRange) { + if !util.StringsMatch(a.Key, b.Key) { return false } return true } -func matchProtocolOspfAreaType(a *ProtocolOspfAreaType, b *ProtocolOspfAreaType) bool { +func matchProtocolOspfv3AuthProfileAh(a *ProtocolOspfv3AuthProfileAh, b *ProtocolOspfv3AuthProfileAh) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchProtocolOspfAreaTypeStub(a.Stub, b.Stub) { + if !matchProtocolOspfv3AuthProfileAhSha512(a.Sha512, b.Sha512) { return false } - if !matchProtocolOspfAreaTypeNssa(a.Nssa, b.Nssa) { + if !matchProtocolOspfv3AuthProfileAhMd5(a.Md5, b.Md5) { return false } - if !matchProtocolOspfAreaTypeNormal(a.Normal, b.Normal) { + if !matchProtocolOspfv3AuthProfileAhSha1(a.Sha1, b.Sha1) { return false } - return true -} -func matchProtocolOspfAreaRangeAdvertise(a *ProtocolOspfAreaRangeAdvertise, b *ProtocolOspfAreaRangeAdvertise) bool { - if a == nil && b != nil || a != nil && b == nil { + if !matchProtocolOspfv3AuthProfileAhSha256(a.Sha256, b.Sha256) { return false - } else if a == nil && b == nil { - return true } - return true -} -func matchProtocolOspfAreaRangeSuppress(a *ProtocolOspfAreaRangeSuppress, b *ProtocolOspfAreaRangeSuppress) bool { - if a == nil && b != nil || a != nil && b == nil { + if !matchProtocolOspfv3AuthProfileAhSha384(a.Sha384, b.Sha384) { return false - } else if a == nil && b == nil { - return true } return true } -func matchProtocolOspfAreaRange(a []ProtocolOspfAreaRange, b []ProtocolOspfAreaRange) bool { +func matchProtocolOspfv3AuthProfile(a []ProtocolOspfv3AuthProfile, b []ProtocolOspfv3AuthProfile) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -12637,194 +12618,188 @@ func matchProtocolOspfAreaRange(a []ProtocolOspfAreaRange, b []ProtocolOspfAreaR } for _, a := range a { for _, b := range b { + if !util.StringsMatch(a.Spi, b.Spi) { + return false + } if !util.StringsEqual(a.Name, b.Name) { return false } - if !matchProtocolOspfAreaRangeAdvertise(a.Advertise, b.Advertise) { + if !matchProtocolOspfv3AuthProfileEsp(a.Esp, b.Esp) { return false } - if !matchProtocolOspfAreaRangeSuppress(a.Suppress, b.Suppress) { + if !matchProtocolOspfv3AuthProfileAh(a.Ah, b.Ah) { return false } } } return true } -func matchProtocolOspfAreaInterfaceNeighbor(a []ProtocolOspfAreaInterfaceNeighbor, b []ProtocolOspfAreaInterfaceNeighbor) bool { +func matchProtocolOspfv3GracefulRestart(a *ProtocolOspfv3GracefulRestart, b *ProtocolOspfv3GracefulRestart) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - for _, a := range a { - for _, b := range b { - if !util.StringsEqual(a.Name, b.Name) { - return false - } - } + if !util.BoolsMatch(a.StrictLSAChecking, b.StrictLSAChecking) { + return false + } + if !util.BoolsMatch(a.Enable, b.Enable) { + return false + } + if !util.Ints64Match(a.GracePeriod, b.GracePeriod) { + return false + } + if !util.BoolsMatch(a.HelperEnable, b.HelperEnable) { + return false + } + if !util.Ints64Match(a.MaxNeighborRestartTime, b.MaxNeighborRestartTime) { + return false } return true } -func matchProtocolOspfAreaInterfaceLinkTypeBroadcast(a *ProtocolOspfAreaInterfaceLinkTypeBroadcast, b *ProtocolOspfAreaInterfaceLinkTypeBroadcast) bool { +func matchProtocolOspfv3Timers(a *ProtocolOspfv3Timers, b *ProtocolOspfv3Timers) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } + if !util.FloatsMatch(a.LsaInterval, b.LsaInterval) { + return false + } + if !util.FloatsMatch(a.SpfCalculationDelay, b.SpfCalculationDelay) { + return false + } return true } -func matchProtocolOspfAreaInterfaceLinkTypeP2p(a *ProtocolOspfAreaInterfaceLinkTypeP2p, b *ProtocolOspfAreaInterfaceLinkTypeP2p) bool { +func matchProtocolOspfv3(a *ProtocolOspfv3, b *ProtocolOspfv3) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } + if !util.BoolsMatch(a.AllowRedistDefaultRoute, b.AllowRedistDefaultRoute) { + return false + } + if !matchProtocolOspfv3AuthProfile(a.AuthProfile, b.AuthProfile) { + return false + } + if !matchProtocolOspfv3GracefulRestart(a.GracefulRestart, b.GracefulRestart) { + return false + } + if !util.StringsMatch(a.RouterId, b.RouterId) { + return false + } + if !matchProtocolOspfv3Timers(a.Timers, b.Timers) { + return false + } + if !util.BoolsMatch(a.RejectDefaultRoute, b.RejectDefaultRoute) { + return false + } + if !matchProtocolOspfv3Area(a.Area, b.Area) { + return false + } + if !util.BoolsMatch(a.DisableTransitTraffic, b.DisableTransitTraffic) { + return false + } + if !util.BoolsMatch(a.Enable, b.Enable) { + return false + } + if !matchProtocolOspfv3ExportRules(a.ExportRules, b.ExportRules) { + return false + } + if !matchProtocolOspfv3GlobalBfd(a.GlobalBfd, b.GlobalBfd) { + return false + } return true } -func matchProtocolOspfAreaInterfaceLinkTypeP2mp(a *ProtocolOspfAreaInterfaceLinkTypeP2mp, b *ProtocolOspfAreaInterfaceLinkTypeP2mp) bool { +func matchProtocolRedistProfileFilterBgp(a *ProtocolRedistProfileFilterBgp, b *ProtocolRedistProfileFilterBgp) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } + if !util.OrderedListsMatch(a.Community, b.Community) { + return false + } + if !util.OrderedListsMatch(a.ExtendedCommunity, b.ExtendedCommunity) { + return false + } return true } -func matchProtocolOspfAreaInterfaceLinkType(a *ProtocolOspfAreaInterfaceLinkType, b *ProtocolOspfAreaInterfaceLinkType) bool { +func matchProtocolRedistProfileFilterOspf(a *ProtocolRedistProfileFilterOspf, b *ProtocolRedistProfileFilterOspf) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchProtocolOspfAreaInterfaceLinkTypeP2p(a.P2p, b.P2p) { + if !util.OrderedListsMatch(a.PathType, b.PathType) { return false } - if !matchProtocolOspfAreaInterfaceLinkTypeP2mp(a.P2mp, b.P2mp) { + if !util.OrderedListsMatch(a.Area, b.Area) { return false } - if !matchProtocolOspfAreaInterfaceLinkTypeBroadcast(a.Broadcast, b.Broadcast) { + if !util.OrderedListsMatch(a.Tag, b.Tag) { return false } return true } -func matchProtocolOspfAreaInterfaceBfd(a *ProtocolOspfAreaInterfaceBfd, b *ProtocolOspfAreaInterfaceBfd) bool { +func matchProtocolRedistProfileFilter(a *ProtocolRedistProfileFilter, b *ProtocolRedistProfileFilter) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Profile, b.Profile) { + if !util.OrderedListsMatch(a.Type, b.Type) { + return false + } + if !util.OrderedListsMatch(a.Interface, b.Interface) { + return false + } + if !util.OrderedListsMatch(a.Destination, b.Destination) { + return false + } + if !util.OrderedListsMatch(a.Nexthop, b.Nexthop) { + return false + } + if !matchProtocolRedistProfileFilterOspf(a.Ospf, b.Ospf) { + return false + } + if !matchProtocolRedistProfileFilterBgp(a.Bgp, b.Bgp) { return false } return true } -func matchProtocolOspfAreaInterface(a []ProtocolOspfAreaInterface, b []ProtocolOspfAreaInterface) bool { +func matchProtocolRedistProfileActionNoRedist(a *ProtocolRedistProfileActionNoRedist, b *ProtocolRedistProfileActionNoRedist) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - for _, a := range a { - for _, b := range b { - if !util.Ints64Match(a.Priority, b.Priority) { - return false - } - if !util.Ints64Match(a.HelloInterval, b.HelloInterval) { - return false - } - if !util.StringsMatch(a.Authentication, b.Authentication) { - return false - } - if !util.Ints64Match(a.GrDelay, b.GrDelay) { - return false - } - if !util.BoolsMatch(a.Enable, b.Enable) { - return false - } - if !util.Ints64Match(a.DeadCounts, b.DeadCounts) { - return false - } - if !matchProtocolOspfAreaInterfaceNeighbor(a.Neighbor, b.Neighbor) { - return false - } - if !util.StringsEqual(a.Name, b.Name) { - return false - } - if !util.BoolsMatch(a.Passive, b.Passive) { - return false - } - if !util.Ints64Match(a.RetransmitInterval, b.RetransmitInterval) { - return false - } - if !matchProtocolOspfAreaInterfaceLinkType(a.LinkType, b.LinkType) { - return false - } - if !matchProtocolOspfAreaInterfaceBfd(a.Bfd, b.Bfd) { - return false - } - if !util.Ints64Match(a.Metric, b.Metric) { - return false - } - if !util.Ints64Match(a.TransitDelay, b.TransitDelay) { - return false - } - } - } return true } -func matchProtocolOspfAreaVirtualLinkBfd(a *ProtocolOspfAreaVirtualLinkBfd, b *ProtocolOspfAreaVirtualLinkBfd) bool { +func matchProtocolRedistProfileActionRedist(a *ProtocolRedistProfileActionRedist, b *ProtocolRedistProfileActionRedist) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Profile, b.Profile) { - return false - } return true } -func matchProtocolOspfAreaVirtualLink(a []ProtocolOspfAreaVirtualLink, b []ProtocolOspfAreaVirtualLink) bool { +func matchProtocolRedistProfileAction(a *ProtocolRedistProfileAction, b *ProtocolRedistProfileAction) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - for _, a := range a { - for _, b := range b { - if !util.StringsEqual(a.Name, b.Name) { - return false - } - if !util.StringsMatch(a.TransitAreaId, b.TransitAreaId) { - return false - } - if !util.BoolsMatch(a.Enable, b.Enable) { - return false - } - if !util.Ints64Match(a.HelloInterval, b.HelloInterval) { - return false - } - if !util.Ints64Match(a.RetransmitInterval, b.RetransmitInterval) { - return false - } - if !util.Ints64Match(a.TransitDelay, b.TransitDelay) { - return false - } - if !util.StringsMatch(a.NeighborId, b.NeighborId) { - return false - } - if !util.Ints64Match(a.DeadCounts, b.DeadCounts) { - return false - } - if !util.StringsMatch(a.Authentication, b.Authentication) { - return false - } - if !matchProtocolOspfAreaVirtualLinkBfd(a.Bfd, b.Bfd) { - return false - } - } + if !matchProtocolRedistProfileActionNoRedist(a.NoRedist, b.NoRedist) { + return false + } + if !matchProtocolRedistProfileActionRedist(a.Redist, b.Redist) { + return false } return true } -func matchProtocolOspfArea(a []ProtocolOspfArea, b []ProtocolOspfArea) bool { +func matchProtocolRedistProfile(a []ProtocolRedistProfile, b []ProtocolRedistProfile) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -12832,139 +12807,163 @@ func matchProtocolOspfArea(a []ProtocolOspfArea, b []ProtocolOspfArea) bool { } for _, a := range a { for _, b := range b { - if !matchProtocolOspfAreaInterface(a.Interface, b.Interface) { - return false - } - if !matchProtocolOspfAreaVirtualLink(a.VirtualLink, b.VirtualLink) { + if !util.Ints64Match(a.Priority, b.Priority) { return false } - if !util.StringsEqual(a.Name, b.Name) { + if !matchProtocolRedistProfileFilter(a.Filter, b.Filter) { return false } - if !matchProtocolOspfAreaType(a.Type, b.Type) { + if !matchProtocolRedistProfileAction(a.Action, b.Action) { return false } - if !matchProtocolOspfAreaRange(a.Range, b.Range) { + if !util.StringsEqual(a.Name, b.Name) { return false } } } return true } -func matchProtocolOspfAuthProfileMd5(a []ProtocolOspfAuthProfileMd5, b []ProtocolOspfAuthProfileMd5) bool { +func matchProtocolRedistProfileIpv6FilterOspfv3(a *ProtocolRedistProfileIpv6FilterOspfv3, b *ProtocolRedistProfileIpv6FilterOspfv3) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - for _, a := range a { - for _, b := range b { - if !util.StringsMatch(a.Key, b.Key) { - return false - } - if !util.BoolsMatch(a.Preferred, b.Preferred) { - return false - } - if !util.StringsEqual(a.Name, b.Name) { - return false - } - } + if !util.OrderedListsMatch(a.PathType, b.PathType) { + return false + } + if !util.OrderedListsMatch(a.Area, b.Area) { + return false + } + if !util.OrderedListsMatch(a.Tag, b.Tag) { + return false } return true } -func matchProtocolOspfAuthProfile(a []ProtocolOspfAuthProfile, b []ProtocolOspfAuthProfile) bool { +func matchProtocolRedistProfileIpv6FilterBgp(a *ProtocolRedistProfileIpv6FilterBgp, b *ProtocolRedistProfileIpv6FilterBgp) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - for _, a := range a { - for _, b := range b { - if !util.StringsEqual(a.Name, b.Name) { - return false - } - if !util.StringsMatch(a.Password, b.Password) { - return false - } - if !matchProtocolOspfAuthProfileMd5(a.Md5, b.Md5) { - return false - } - } + if !util.OrderedListsMatch(a.Community, b.Community) { + return false + } + if !util.OrderedListsMatch(a.ExtendedCommunity, b.ExtendedCommunity) { + return false } return true } -func matchProtocolOspf(a *ProtocolOspf, b *ProtocolOspf) bool { +func matchProtocolRedistProfileIpv6Filter(a *ProtocolRedistProfileIpv6Filter, b *ProtocolRedistProfileIpv6Filter) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchProtocolOspfGracefulRestart(a.GracefulRestart, b.GracefulRestart) { + if !util.OrderedListsMatch(a.Type, b.Type) { return false } - if !util.BoolsMatch(a.RejectDefaultRoute, b.RejectDefaultRoute) { + if !util.OrderedListsMatch(a.Interface, b.Interface) { return false } - if !util.BoolsMatch(a.Rfc1583, b.Rfc1583) { + if !util.OrderedListsMatch(a.Destination, b.Destination) { return false } - if !util.BoolsMatch(a.AllowRedistDefaultRoute, b.AllowRedistDefaultRoute) { + if !util.OrderedListsMatch(a.Nexthop, b.Nexthop) { return false } - if !matchProtocolOspfGlobalBfd(a.GlobalBfd, b.GlobalBfd) { + if !matchProtocolRedistProfileIpv6FilterOspfv3(a.Ospfv3, b.Ospfv3) { return false } - if !util.BoolsMatch(a.Enable, b.Enable) { + if !matchProtocolRedistProfileIpv6FilterBgp(a.Bgp, b.Bgp) { return false } - if !matchProtocolOspfExportRules(a.ExportRules, b.ExportRules) { + return true +} +func matchProtocolRedistProfileIpv6ActionNoRedist(a *ProtocolRedistProfileIpv6ActionNoRedist, b *ProtocolRedistProfileIpv6ActionNoRedist) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } - if !util.StringsMatch(a.RouterId, b.RouterId) { + return true +} +func matchProtocolRedistProfileIpv6ActionRedist(a *ProtocolRedistProfileIpv6ActionRedist, b *ProtocolRedistProfileIpv6ActionRedist) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } - if !matchProtocolOspfTimers(a.Timers, b.Timers) { + return true +} +func matchProtocolRedistProfileIpv6Action(a *ProtocolRedistProfileIpv6Action, b *ProtocolRedistProfileIpv6Action) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } - if !matchProtocolOspfArea(a.Area, b.Area) { + if !matchProtocolRedistProfileIpv6ActionNoRedist(a.NoRedist, b.NoRedist) { return false } - if !matchProtocolOspfAuthProfile(a.AuthProfile, b.AuthProfile) { + if !matchProtocolRedistProfileIpv6ActionRedist(a.Redist, b.Redist) { return false } return true } -func matchProtocolOspfv3Timers(a *ProtocolOspfv3Timers, b *ProtocolOspfv3Timers) bool { +func matchProtocolRedistProfileIpv6(a []ProtocolRedistProfileIpv6, b []ProtocolRedistProfileIpv6) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.FloatsMatch(a.LsaInterval, b.LsaInterval) { - return false - } - if !util.FloatsMatch(a.SpfCalculationDelay, b.SpfCalculationDelay) { - return false + for _, a := range a { + for _, b := range b { + if !util.Ints64Match(a.Priority, b.Priority) { + return false + } + if !matchProtocolRedistProfileIpv6Filter(a.Filter, b.Filter) { + return false + } + if !matchProtocolRedistProfileIpv6Action(a.Action, b.Action) { + return false + } + if !util.StringsEqual(a.Name, b.Name) { + return false + } + } } return true } -func matchProtocolOspfv3AreaTypeNormal(a *ProtocolOspfv3AreaTypeNormal, b *ProtocolOspfv3AreaTypeNormal) bool { +func matchProtocolRipExportRules(a []ProtocolRipExportRules, b []ProtocolRipExportRules) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } + for _, a := range a { + for _, b := range b { + if !util.Ints64Match(a.Metric, b.Metric) { + return false + } + if !util.StringsEqual(a.Name, b.Name) { + return false + } + } + } return true } -func matchProtocolOspfv3AreaTypeStubDefaultRouteDisable(a *ProtocolOspfv3AreaTypeStubDefaultRouteDisable, b *ProtocolOspfv3AreaTypeStubDefaultRouteDisable) bool { +func matchProtocolRipGlobalBfd(a *ProtocolRipGlobalBfd, b *ProtocolRipGlobalBfd) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } + if !util.StringsMatch(a.Profile, b.Profile) { + return false + } return true } -func matchProtocolOspfv3AreaTypeStubDefaultRouteAdvertise(a *ProtocolOspfv3AreaTypeStubDefaultRouteAdvertise, b *ProtocolOspfv3AreaTypeStubDefaultRouteAdvertise) bool { +func matchProtocolRipInterfaceDefaultRouteAdvertise(a *ProtocolRipInterfaceDefaultRouteAdvertise, b *ProtocolRipInterfaceDefaultRouteAdvertise) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -12975,51 +12974,111 @@ func matchProtocolOspfv3AreaTypeStubDefaultRouteAdvertise(a *ProtocolOspfv3AreaT } return true } -func matchProtocolOspfv3AreaTypeStubDefaultRoute(a *ProtocolOspfv3AreaTypeStubDefaultRoute, b *ProtocolOspfv3AreaTypeStubDefaultRoute) bool { +func matchProtocolRipInterfaceDefaultRouteDisable(a *ProtocolRipInterfaceDefaultRouteDisable, b *ProtocolRipInterfaceDefaultRouteDisable) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchProtocolOspfv3AreaTypeStubDefaultRouteDisable(a.Disable, b.Disable) { + return true +} +func matchProtocolRipInterfaceDefaultRoute(a *ProtocolRipInterfaceDefaultRoute, b *ProtocolRipInterfaceDefaultRoute) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + if !matchProtocolRipInterfaceDefaultRouteAdvertise(a.Advertise, b.Advertise) { return false } - if !matchProtocolOspfv3AreaTypeStubDefaultRouteAdvertise(a.Advertise, b.Advertise) { + if !matchProtocolRipInterfaceDefaultRouteDisable(a.Disable, b.Disable) { return false } return true } -func matchProtocolOspfv3AreaTypeStub(a *ProtocolOspfv3AreaTypeStub, b *ProtocolOspfv3AreaTypeStub) bool { +func matchProtocolRipInterfaceBfd(a *ProtocolRipInterfaceBfd, b *ProtocolRipInterfaceBfd) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.BoolsMatch(a.AcceptSummary, b.AcceptSummary) { + if !util.StringsMatch(a.Profile, b.Profile) { return false } - if !matchProtocolOspfv3AreaTypeStubDefaultRoute(a.DefaultRoute, b.DefaultRoute) { + return true +} +func matchProtocolRipInterface(a []ProtocolRipInterface, b []ProtocolRipInterface) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true + } + for _, a := range a { + for _, b := range b { + if !util.BoolsMatch(a.Enable, b.Enable) { + return false + } + if !util.StringsMatch(a.Authentication, b.Authentication) { + return false + } + if !util.StringsMatch(a.Mode, b.Mode) { + return false + } + if !matchProtocolRipInterfaceDefaultRoute(a.DefaultRoute, b.DefaultRoute) { + return false + } + if !matchProtocolRipInterfaceBfd(a.Bfd, b.Bfd) { + return false + } + if !util.StringsEqual(a.Name, b.Name) { + return false + } + } } return true } -func matchProtocolOspfv3AreaTypeNssaNssaExtRangeAdvertise(a *ProtocolOspfv3AreaTypeNssaNssaExtRangeAdvertise, b *ProtocolOspfv3AreaTypeNssaNssaExtRangeAdvertise) bool { +func matchProtocolRipTimers(a *ProtocolRipTimers, b *ProtocolRipTimers) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } + if !util.Ints64Match(a.ExpireIntervals, b.ExpireIntervals) { + return false + } + if !util.Ints64Match(a.IntervalSeconds, b.IntervalSeconds) { + return false + } + if !util.Ints64Match(a.UpdateIntervals, b.UpdateIntervals) { + return false + } + if !util.Ints64Match(a.DeleteIntervals, b.DeleteIntervals) { + return false + } return true } -func matchProtocolOspfv3AreaTypeNssaNssaExtRangeSuppress(a *ProtocolOspfv3AreaTypeNssaNssaExtRangeSuppress, b *ProtocolOspfv3AreaTypeNssaNssaExtRangeSuppress) bool { +func matchProtocolRipAuthProfileMd5(a []ProtocolRipAuthProfileMd5, b []ProtocolRipAuthProfileMd5) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } + for _, a := range a { + for _, b := range b { + if !util.StringsMatch(a.Key, b.Key) { + return false + } + if !util.BoolsMatch(a.Preferred, b.Preferred) { + return false + } + if !util.StringsEqual(a.Name, b.Name) { + return false + } + } + } return true } -func matchProtocolOspfv3AreaTypeNssaNssaExtRange(a []ProtocolOspfv3AreaTypeNssaNssaExtRange, b []ProtocolOspfv3AreaTypeNssaNssaExtRange) bool { +func matchProtocolRipAuthProfile(a []ProtocolRipAuthProfile, b []ProtocolRipAuthProfile) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -13030,87 +13089,75 @@ func matchProtocolOspfv3AreaTypeNssaNssaExtRange(a []ProtocolOspfv3AreaTypeNssaN if !util.StringsEqual(a.Name, b.Name) { return false } - if !matchProtocolOspfv3AreaTypeNssaNssaExtRangeAdvertise(a.Advertise, b.Advertise) { + if !util.StringsMatch(a.Password, b.Password) { return false } - if !matchProtocolOspfv3AreaTypeNssaNssaExtRangeSuppress(a.Suppress, b.Suppress) { + if !matchProtocolRipAuthProfileMd5(a.Md5, b.Md5) { return false } } } return true } -func matchProtocolOspfv3AreaTypeNssaDefaultRouteDisable(a *ProtocolOspfv3AreaTypeNssaDefaultRouteDisable, b *ProtocolOspfv3AreaTypeNssaDefaultRouteDisable) bool { +func matchProtocolRip(a *ProtocolRip, b *ProtocolRip) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - return true -} -func matchProtocolOspfv3AreaTypeNssaDefaultRouteAdvertise(a *ProtocolOspfv3AreaTypeNssaDefaultRouteAdvertise, b *ProtocolOspfv3AreaTypeNssaDefaultRouteAdvertise) bool { - if a == nil && b != nil || a != nil && b == nil { + if !util.BoolsMatch(a.Enable, b.Enable) { return false - } else if a == nil && b == nil { - return true } - if !util.Ints64Match(a.Metric, b.Metric) { + if !matchProtocolRipExportRules(a.ExportRules, b.ExportRules) { return false } - if !util.StringsMatch(a.Type, b.Type) { + if !matchProtocolRipGlobalBfd(a.GlobalBfd, b.GlobalBfd) { return false } - return true -} -func matchProtocolOspfv3AreaTypeNssaDefaultRoute(a *ProtocolOspfv3AreaTypeNssaDefaultRoute, b *ProtocolOspfv3AreaTypeNssaDefaultRoute) bool { - if a == nil && b != nil || a != nil && b == nil { + if !matchProtocolRipInterface(a.Interface, b.Interface) { return false - } else if a == nil && b == nil { - return true } - if !matchProtocolOspfv3AreaTypeNssaDefaultRouteDisable(a.Disable, b.Disable) { + if !util.BoolsMatch(a.RejectDefaultRoute, b.RejectDefaultRoute) { return false } - if !matchProtocolOspfv3AreaTypeNssaDefaultRouteAdvertise(a.Advertise, b.Advertise) { + if !matchProtocolRipTimers(a.Timers, b.Timers) { + return false + } + if !util.BoolsMatch(a.AllowRedistDefaultRoute, b.AllowRedistDefaultRoute) { + return false + } + if !matchProtocolRipAuthProfile(a.AuthProfile, b.AuthProfile) { return false } return true } -func matchProtocolOspfv3AreaTypeNssa(a *ProtocolOspfv3AreaTypeNssa, b *ProtocolOspfv3AreaTypeNssa) bool { +func matchProtocol(a *Protocol, b *Protocol) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.BoolsMatch(a.AcceptSummary, b.AcceptSummary) { - return false - } - if !matchProtocolOspfv3AreaTypeNssaDefaultRoute(a.DefaultRoute, b.DefaultRoute) { + if !matchProtocolBgp(a.Bgp, b.Bgp) { return false } - if !matchProtocolOspfv3AreaTypeNssaNssaExtRange(a.NssaExtRange, b.NssaExtRange) { + if !matchProtocolOspf(a.Ospf, b.Ospf) { return false } - return true -} -func matchProtocolOspfv3AreaType(a *ProtocolOspfv3AreaType, b *ProtocolOspfv3AreaType) bool { - if a == nil && b != nil || a != nil && b == nil { + if !matchProtocolOspfv3(a.Ospfv3, b.Ospfv3) { return false - } else if a == nil && b == nil { - return true } - if !matchProtocolOspfv3AreaTypeNormal(a.Normal, b.Normal) { + if !matchProtocolRedistProfile(a.RedistProfile, b.RedistProfile) { return false } - if !matchProtocolOspfv3AreaTypeStub(a.Stub, b.Stub) { + if !matchProtocolRedistProfileIpv6(a.RedistProfileIpv6, b.RedistProfileIpv6) { return false } - if !matchProtocolOspfv3AreaTypeNssa(a.Nssa, b.Nssa) { + if !matchProtocolRip(a.Rip, b.Rip) { return false } return true } -func matchProtocolOspfv3AreaRangeAdvertise(a *ProtocolOspfv3AreaRangeAdvertise, b *ProtocolOspfv3AreaRangeAdvertise) bool { +func matchRoutingTableIpStaticRouteRouteTableUnicast(a *RoutingTableIpStaticRouteRouteTableUnicast, b *RoutingTableIpStaticRouteRouteTableUnicast) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -13118,7 +13165,7 @@ func matchProtocolOspfv3AreaRangeAdvertise(a *ProtocolOspfv3AreaRangeAdvertise, } return true } -func matchProtocolOspfv3AreaRangeSuppress(a *ProtocolOspfv3AreaRangeSuppress, b *ProtocolOspfv3AreaRangeSuppress) bool { +func matchRoutingTableIpStaticRouteRouteTableMulticast(a *RoutingTableIpStaticRouteRouteTableMulticast, b *RoutingTableIpStaticRouteRouteTableMulticast) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -13126,47 +13173,43 @@ func matchProtocolOspfv3AreaRangeSuppress(a *ProtocolOspfv3AreaRangeSuppress, b } return true } -func matchProtocolOspfv3AreaRange(a []ProtocolOspfv3AreaRange, b []ProtocolOspfv3AreaRange) bool { +func matchRoutingTableIpStaticRouteRouteTableBoth(a *RoutingTableIpStaticRouteRouteTableBoth, b *RoutingTableIpStaticRouteRouteTableBoth) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - for _, a := range a { - for _, b := range b { - if !util.StringsEqual(a.Name, b.Name) { - return false - } - if !matchProtocolOspfv3AreaRangeAdvertise(a.Advertise, b.Advertise) { - return false - } - if !matchProtocolOspfv3AreaRangeSuppress(a.Suppress, b.Suppress) { - return false - } - } - } return true } -func matchProtocolOspfv3AreaInterfaceBfd(a *ProtocolOspfv3AreaInterfaceBfd, b *ProtocolOspfv3AreaInterfaceBfd) bool { +func matchRoutingTableIpStaticRouteRouteTableNoInstall(a *RoutingTableIpStaticRouteRouteTableNoInstall, b *RoutingTableIpStaticRouteRouteTableNoInstall) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Profile, b.Profile) { - return false - } return true } -func matchProtocolOspfv3AreaInterfaceLinkTypeP2p(a *ProtocolOspfv3AreaInterfaceLinkTypeP2p, b *ProtocolOspfv3AreaInterfaceLinkTypeP2p) bool { +func matchRoutingTableIpStaticRouteRouteTable(a *RoutingTableIpStaticRouteRouteTable, b *RoutingTableIpStaticRouteRouteTable) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } + if !matchRoutingTableIpStaticRouteRouteTableUnicast(a.Unicast, b.Unicast) { + return false + } + if !matchRoutingTableIpStaticRouteRouteTableMulticast(a.Multicast, b.Multicast) { + return false + } + if !matchRoutingTableIpStaticRouteRouteTableBoth(a.Both, b.Both) { + return false + } + if !matchRoutingTableIpStaticRouteRouteTableNoInstall(a.NoInstall, b.NoInstall) { + return false + } return true } -func matchProtocolOspfv3AreaInterfaceLinkTypeP2mp(a *ProtocolOspfv3AreaInterfaceLinkTypeP2mp, b *ProtocolOspfv3AreaInterfaceLinkTypeP2mp) bool { +func matchRoutingTableIpStaticRouteNexthopReceive(a *RoutingTableIpStaticRouteNexthopReceive, b *RoutingTableIpStaticRouteNexthopReceive) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -13174,7 +13217,7 @@ func matchProtocolOspfv3AreaInterfaceLinkTypeP2mp(a *ProtocolOspfv3AreaInterface } return true } -func matchProtocolOspfv3AreaInterfaceLinkTypeBroadcast(a *ProtocolOspfv3AreaInterfaceLinkTypeBroadcast, b *ProtocolOspfv3AreaInterfaceLinkTypeBroadcast) bool { +func matchRoutingTableIpStaticRouteNexthopDiscard(a *RoutingTableIpStaticRouteNexthopDiscard, b *RoutingTableIpStaticRouteNexthopDiscard) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -13182,39 +13225,41 @@ func matchProtocolOspfv3AreaInterfaceLinkTypeBroadcast(a *ProtocolOspfv3AreaInte } return true } -func matchProtocolOspfv3AreaInterfaceLinkType(a *ProtocolOspfv3AreaInterfaceLinkType, b *ProtocolOspfv3AreaInterfaceLinkType) bool { +func matchRoutingTableIpStaticRouteNexthop(a *RoutingTableIpStaticRouteNexthop, b *RoutingTableIpStaticRouteNexthop) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchProtocolOspfv3AreaInterfaceLinkTypeP2mp(a.P2mp, b.P2mp) { + if !util.StringsMatch(a.IpAddress, b.IpAddress) { return false } - if !matchProtocolOspfv3AreaInterfaceLinkTypeBroadcast(a.Broadcast, b.Broadcast) { + if !util.StringsMatch(a.Fqdn, b.Fqdn) { return false } - if !matchProtocolOspfv3AreaInterfaceLinkTypeP2p(a.P2p, b.P2p) { + if !util.StringsMatch(a.NextVr, b.NextVr) { + return false + } + if !matchRoutingTableIpStaticRouteNexthopReceive(a.Receive, b.Receive) { + return false + } + if !matchRoutingTableIpStaticRouteNexthopDiscard(a.Discard, b.Discard) { return false } return true } -func matchProtocolOspfv3AreaInterfaceNeighbor(a []ProtocolOspfv3AreaInterfaceNeighbor, b []ProtocolOspfv3AreaInterfaceNeighbor) bool { +func matchRoutingTableIpStaticRouteBfd(a *RoutingTableIpStaticRouteBfd, b *RoutingTableIpStaticRouteBfd) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - for _, a := range a { - for _, b := range b { - if !util.StringsEqual(a.Name, b.Name) { - return false - } - } + if !util.StringsMatch(a.Profile, b.Profile) { + return false } return true } -func matchProtocolOspfv3AreaInterface(a []ProtocolOspfv3AreaInterface, b []ProtocolOspfv3AreaInterface) bool { +func matchRoutingTableIpStaticRoutePathMonitorMonitorDestinations(a []RoutingTableIpStaticRoutePathMonitorMonitorDestinations, b []RoutingTableIpStaticRoutePathMonitorMonitorDestinations) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -13222,46 +13267,19 @@ func matchProtocolOspfv3AreaInterface(a []ProtocolOspfv3AreaInterface, b []Proto } for _, a := range a { for _, b := range b { - if !matchProtocolOspfv3AreaInterfaceLinkType(a.LinkType, b.LinkType) { - return false - } - if !matchProtocolOspfv3AreaInterfaceNeighbor(a.Neighbor, b.Neighbor) { - return false - } - if !util.BoolsMatch(a.Passive, b.Passive) { - return false - } - if !util.Ints64Match(a.Priority, b.Priority) { - return false - } - if !util.Ints64Match(a.DeadCounts, b.DeadCounts) { - return false - } - if !util.Ints64Match(a.GrDelay, b.GrDelay) { - return false - } - if !matchProtocolOspfv3AreaInterfaceBfd(a.Bfd, b.Bfd) { - return false - } - if !util.Ints64Match(a.InstanceId, b.InstanceId) { - return false - } - if !util.Ints64Match(a.Metric, b.Metric) { - return false - } - if !util.Ints64Match(a.HelloInterval, b.HelloInterval) { + if !util.BoolsMatch(a.Enable, b.Enable) { return false } - if !util.StringsMatch(a.Authentication, b.Authentication) { + if !util.StringsMatch(a.Source, b.Source) { return false } - if !util.Ints64Match(a.TransitDelay, b.TransitDelay) { + if !util.StringsMatch(a.Destination, b.Destination) { return false } - if !util.BoolsMatch(a.Enable, b.Enable) { + if !util.Ints64Match(a.Interval, b.Interval) { return false } - if !util.Ints64Match(a.RetransmitInterval, b.RetransmitInterval) { + if !util.Ints64Match(a.Count, b.Count) { return false } if !util.StringsEqual(a.Name, b.Name) { @@ -13271,18 +13289,27 @@ func matchProtocolOspfv3AreaInterface(a []ProtocolOspfv3AreaInterface, b []Proto } return true } -func matchProtocolOspfv3AreaVirtualLinkBfd(a *ProtocolOspfv3AreaVirtualLinkBfd, b *ProtocolOspfv3AreaVirtualLinkBfd) bool { +func matchRoutingTableIpStaticRoutePathMonitor(a *RoutingTableIpStaticRoutePathMonitor, b *RoutingTableIpStaticRoutePathMonitor) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Profile, b.Profile) { + if !util.Ints64Match(a.HoldTime, b.HoldTime) { + return false + } + if !matchRoutingTableIpStaticRoutePathMonitorMonitorDestinations(a.MonitorDestinations, b.MonitorDestinations) { + return false + } + if !util.BoolsMatch(a.Enable, b.Enable) { + return false + } + if !util.StringsMatch(a.FailureCondition, b.FailureCondition) { return false } return true } -func matchProtocolOspfv3AreaVirtualLink(a []ProtocolOspfv3AreaVirtualLink, b []ProtocolOspfv3AreaVirtualLink) bool { +func matchRoutingTableIpStaticRoute(a []RoutingTableIpStaticRoute, b []RoutingTableIpStaticRoute) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -13290,269 +13317,286 @@ func matchProtocolOspfv3AreaVirtualLink(a []ProtocolOspfv3AreaVirtualLink, b []P } for _, a := range a { for _, b := range b { - if !util.StringsMatch(a.NeighborId, b.NeighborId) { - return false - } - if !util.Ints64Match(a.InstanceId, b.InstanceId) { - return false - } - if !util.Ints64Match(a.HelloInterval, b.HelloInterval) { + if !util.StringsMatch(a.Interface, b.Interface) { return false } - if !util.Ints64Match(a.DeadCounts, b.DeadCounts) { + if !util.Ints64Match(a.AdminDist, b.AdminDist) { return false } - if !util.Ints64Match(a.RetransmitInterval, b.RetransmitInterval) { + if !matchRoutingTableIpStaticRouteRouteTable(a.RouteTable, b.RouteTable) { return false } - if !util.StringsMatch(a.Authentication, b.Authentication) { + if !matchRoutingTableIpStaticRouteBfd(a.Bfd, b.Bfd) { return false } - if !matchProtocolOspfv3AreaVirtualLinkBfd(a.Bfd, b.Bfd) { + if !matchRoutingTableIpStaticRoutePathMonitor(a.PathMonitor, b.PathMonitor) { return false } if !util.StringsEqual(a.Name, b.Name) { return false } - if !util.StringsMatch(a.TransitAreaId, b.TransitAreaId) { - return false - } - if !util.BoolsMatch(a.Enable, b.Enable) { - return false - } - if !util.Ints64Match(a.TransitDelay, b.TransitDelay) { - return false - } - } - } - return true -} -func matchProtocolOspfv3Area(a []ProtocolOspfv3Area, b []ProtocolOspfv3Area) bool { - if a == nil && b != nil || a != nil && b == nil { - return false - } else if a == nil && b == nil { - return true - } - for _, a := range a { - for _, b := range b { - if !matchProtocolOspfv3AreaType(a.Type, b.Type) { - return false - } - if !matchProtocolOspfv3AreaRange(a.Range, b.Range) { - return false - } - if !matchProtocolOspfv3AreaInterface(a.Interface, b.Interface) { - return false - } - if !matchProtocolOspfv3AreaVirtualLink(a.VirtualLink, b.VirtualLink) { + if !util.StringsMatch(a.Destination, b.Destination) { return false } - if !util.StringsEqual(a.Name, b.Name) { + if !util.Ints64Match(a.Metric, b.Metric) { return false } - if !util.StringsMatch(a.Authentication, b.Authentication) { + if !matchRoutingTableIpStaticRouteNexthop(a.Nexthop, b.Nexthop) { return false } } } return true } -func matchProtocolOspfv3AuthProfileEspAuthenticationSha256(a *ProtocolOspfv3AuthProfileEspAuthenticationSha256, b *ProtocolOspfv3AuthProfileEspAuthenticationSha256) bool { - if a == nil && b != nil || a != nil && b == nil { - return false - } else if a == nil && b == nil { - return true - } - if !util.StringsMatch(a.Key, b.Key) { - return false - } - return true -} -func matchProtocolOspfv3AuthProfileEspAuthenticationSha384(a *ProtocolOspfv3AuthProfileEspAuthenticationSha384, b *ProtocolOspfv3AuthProfileEspAuthenticationSha384) bool { +func matchRoutingTableIp(a *RoutingTableIp, b *RoutingTableIp) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Key, b.Key) { + if !matchRoutingTableIpStaticRoute(a.StaticRoute, b.StaticRoute) { return false } return true } -func matchProtocolOspfv3AuthProfileEspAuthenticationSha512(a *ProtocolOspfv3AuthProfileEspAuthenticationSha512, b *ProtocolOspfv3AuthProfileEspAuthenticationSha512) bool { +func matchRoutingTableIpv6StaticRouteBfd(a *RoutingTableIpv6StaticRouteBfd, b *RoutingTableIpv6StaticRouteBfd) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Key, b.Key) { - return false - } - return true -} -func matchProtocolOspfv3AuthProfileEspAuthenticationNone(a *ProtocolOspfv3AuthProfileEspAuthenticationNone, b *ProtocolOspfv3AuthProfileEspAuthenticationNone) bool { - if a == nil && b != nil || a != nil && b == nil { + if !util.StringsMatch(a.Profile, b.Profile) { return false - } else if a == nil && b == nil { - return true } return true } -func matchProtocolOspfv3AuthProfileEspAuthenticationMd5(a *ProtocolOspfv3AuthProfileEspAuthenticationMd5, b *ProtocolOspfv3AuthProfileEspAuthenticationMd5) bool { +func matchRoutingTableIpv6StaticRouteNexthopReceive(a *RoutingTableIpv6StaticRouteNexthopReceive, b *RoutingTableIpv6StaticRouteNexthopReceive) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Key, b.Key) { - return false - } return true } -func matchProtocolOspfv3AuthProfileEspAuthenticationSha1(a *ProtocolOspfv3AuthProfileEspAuthenticationSha1, b *ProtocolOspfv3AuthProfileEspAuthenticationSha1) bool { +func matchRoutingTableIpv6StaticRouteNexthopDiscard(a *RoutingTableIpv6StaticRouteNexthopDiscard, b *RoutingTableIpv6StaticRouteNexthopDiscard) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Key, b.Key) { - return false - } return true } -func matchProtocolOspfv3AuthProfileEspAuthentication(a *ProtocolOspfv3AuthProfileEspAuthentication, b *ProtocolOspfv3AuthProfileEspAuthentication) bool { +func matchRoutingTableIpv6StaticRouteNexthop(a *RoutingTableIpv6StaticRouteNexthop, b *RoutingTableIpv6StaticRouteNexthop) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchProtocolOspfv3AuthProfileEspAuthenticationNone(a.None, b.None) { - return false - } - if !matchProtocolOspfv3AuthProfileEspAuthenticationMd5(a.Md5, b.Md5) { - return false - } - if !matchProtocolOspfv3AuthProfileEspAuthenticationSha1(a.Sha1, b.Sha1) { + if !matchRoutingTableIpv6StaticRouteNexthopReceive(a.Receive, b.Receive) { return false } - if !matchProtocolOspfv3AuthProfileEspAuthenticationSha256(a.Sha256, b.Sha256) { + if !matchRoutingTableIpv6StaticRouteNexthopDiscard(a.Discard, b.Discard) { return false } - if !matchProtocolOspfv3AuthProfileEspAuthenticationSha384(a.Sha384, b.Sha384) { + if !util.StringsMatch(a.Ipv6Address, b.Ipv6Address) { return false } - if !matchProtocolOspfv3AuthProfileEspAuthenticationSha512(a.Sha512, b.Sha512) { + if !util.StringsMatch(a.NextVr, b.NextVr) { return false } return true } -func matchProtocolOspfv3AuthProfileEspEncryption(a *ProtocolOspfv3AuthProfileEspEncryption, b *ProtocolOspfv3AuthProfileEspEncryption) bool { +func matchRoutingTableIpv6StaticRouteOption(a *RoutingTableIpv6StaticRouteOption, b *RoutingTableIpv6StaticRouteOption) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Algorithm, b.Algorithm) { + return true +} +func matchRoutingTableIpv6StaticRouteRouteTableUnicast(a *RoutingTableIpv6StaticRouteRouteTableUnicast, b *RoutingTableIpv6StaticRouteRouteTableUnicast) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } - if !util.StringsMatch(a.Key, b.Key) { + return true +} +func matchRoutingTableIpv6StaticRouteRouteTableNoInstall(a *RoutingTableIpv6StaticRouteRouteTableNoInstall, b *RoutingTableIpv6StaticRouteRouteTableNoInstall) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } return true } -func matchProtocolOspfv3AuthProfileEsp(a *ProtocolOspfv3AuthProfileEsp, b *ProtocolOspfv3AuthProfileEsp) bool { +func matchRoutingTableIpv6StaticRouteRouteTable(a *RoutingTableIpv6StaticRouteRouteTable, b *RoutingTableIpv6StaticRouteRouteTable) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchProtocolOspfv3AuthProfileEspAuthentication(a.Authentication, b.Authentication) { + if !matchRoutingTableIpv6StaticRouteRouteTableUnicast(a.Unicast, b.Unicast) { return false } - if !matchProtocolOspfv3AuthProfileEspEncryption(a.Encryption, b.Encryption) { + if !matchRoutingTableIpv6StaticRouteRouteTableNoInstall(a.NoInstall, b.NoInstall) { return false } return true } -func matchProtocolOspfv3AuthProfileAhMd5(a *ProtocolOspfv3AuthProfileAhMd5, b *ProtocolOspfv3AuthProfileAhMd5) bool { +func matchRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations(a []RoutingTableIpv6StaticRoutePathMonitorMonitorDestinations, b []RoutingTableIpv6StaticRoutePathMonitorMonitorDestinations) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Key, b.Key) { - return false + for _, a := range a { + for _, b := range b { + if !util.Ints64Match(a.Interval, b.Interval) { + return false + } + if !util.Ints64Match(a.Count, b.Count) { + return false + } + if !util.StringsEqual(a.Name, b.Name) { + return false + } + if !util.BoolsMatch(a.Enable, b.Enable) { + return false + } + if !util.StringsMatch(a.Source, b.Source) { + return false + } + if !util.StringsMatch(a.Destination, b.Destination) { + return false + } + } } return true } -func matchProtocolOspfv3AuthProfileAhSha1(a *ProtocolOspfv3AuthProfileAhSha1, b *ProtocolOspfv3AuthProfileAhSha1) bool { +func matchRoutingTableIpv6StaticRoutePathMonitor(a *RoutingTableIpv6StaticRoutePathMonitor, b *RoutingTableIpv6StaticRoutePathMonitor) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Key, b.Key) { + if !util.StringsMatch(a.FailureCondition, b.FailureCondition) { + return false + } + if !util.Ints64Match(a.HoldTime, b.HoldTime) { + return false + } + if !matchRoutingTableIpv6StaticRoutePathMonitorMonitorDestinations(a.MonitorDestinations, b.MonitorDestinations) { + return false + } + if !util.BoolsMatch(a.Enable, b.Enable) { return false } return true } -func matchProtocolOspfv3AuthProfileAhSha256(a *ProtocolOspfv3AuthProfileAhSha256, b *ProtocolOspfv3AuthProfileAhSha256) bool { +func matchRoutingTableIpv6StaticRoute(a []RoutingTableIpv6StaticRoute, b []RoutingTableIpv6StaticRoute) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Key, b.Key) { - return false + for _, a := range a { + for _, b := range b { + if !matchRoutingTableIpv6StaticRouteNexthop(a.Nexthop, b.Nexthop) { + return false + } + if !matchRoutingTableIpv6StaticRouteOption(a.Option, b.Option) { + return false + } + if !matchRoutingTableIpv6StaticRouteRouteTable(a.RouteTable, b.RouteTable) { + return false + } + if !matchRoutingTableIpv6StaticRoutePathMonitor(a.PathMonitor, b.PathMonitor) { + return false + } + if !util.Ints64Match(a.AdminDist, b.AdminDist) { + return false + } + if !util.Ints64Match(a.Metric, b.Metric) { + return false + } + if !matchRoutingTableIpv6StaticRouteBfd(a.Bfd, b.Bfd) { + return false + } + if !util.StringsEqual(a.Name, b.Name) { + return false + } + if !util.StringsMatch(a.Destination, b.Destination) { + return false + } + if !util.StringsMatch(a.Interface, b.Interface) { + return false + } + } } return true } -func matchProtocolOspfv3AuthProfileAhSha384(a *ProtocolOspfv3AuthProfileAhSha384, b *ProtocolOspfv3AuthProfileAhSha384) bool { +func matchRoutingTableIpv6(a *RoutingTableIpv6, b *RoutingTableIpv6) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Key, b.Key) { + if !matchRoutingTableIpv6StaticRoute(a.StaticRoute, b.StaticRoute) { return false } return true } -func matchProtocolOspfv3AuthProfileAhSha512(a *ProtocolOspfv3AuthProfileAhSha512, b *ProtocolOspfv3AuthProfileAhSha512) bool { +func matchRoutingTable(a *RoutingTable, b *RoutingTable) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Key, b.Key) { + if !matchRoutingTableIp(a.Ip, b.Ip) { + return false + } + if !matchRoutingTableIpv6(a.Ipv6, b.Ipv6) { return false } return true } -func matchProtocolOspfv3AuthProfileAh(a *ProtocolOspfv3AuthProfileAh, b *ProtocolOspfv3AuthProfileAh) bool { +func matchAdminDists(a *AdminDists, b *AdminDists) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchProtocolOspfv3AuthProfileAhMd5(a.Md5, b.Md5) { + if !util.Ints64Match(a.OspfExt, b.OspfExt) { return false } - if !matchProtocolOspfv3AuthProfileAhSha1(a.Sha1, b.Sha1) { + if !util.Ints64Match(a.Ospfv3Ext, b.Ospfv3Ext) { return false } - if !matchProtocolOspfv3AuthProfileAhSha256(a.Sha256, b.Sha256) { + if !util.Ints64Match(a.Ospfv3Int, b.Ospfv3Int) { return false } - if !matchProtocolOspfv3AuthProfileAhSha384(a.Sha384, b.Sha384) { + if !util.Ints64Match(a.Rip, b.Rip) { return false } - if !matchProtocolOspfv3AuthProfileAhSha512(a.Sha512, b.Sha512) { + if !util.Ints64Match(a.StaticIpv6, b.StaticIpv6) { + return false + } + if !util.Ints64Match(a.Ebgp, b.Ebgp) { + return false + } + if !util.Ints64Match(a.Ibgp, b.Ibgp) { + return false + } + if !util.Ints64Match(a.OspfInt, b.OspfInt) { + return false + } + if !util.Ints64Match(a.Static, b.Static) { return false } return true } -func matchProtocolOspfv3AuthProfile(a []ProtocolOspfv3AuthProfile, b []ProtocolOspfv3AuthProfile) bool { +func matchEcmpAlgorithmWeightedRoundRobinInterface(a []EcmpAlgorithmWeightedRoundRobinInterface, b []EcmpAlgorithmWeightedRoundRobinInterface) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -13560,143 +13604,99 @@ func matchProtocolOspfv3AuthProfile(a []ProtocolOspfv3AuthProfile, b []ProtocolO } for _, a := range a { for _, b := range b { - if !util.StringsMatch(a.Spi, b.Spi) { + if !util.Ints64Match(a.Weight, b.Weight) { return false } if !util.StringsEqual(a.Name, b.Name) { return false } - if !matchProtocolOspfv3AuthProfileEsp(a.Esp, b.Esp) { - return false - } - if !matchProtocolOspfv3AuthProfileAh(a.Ah, b.Ah) { - return false - } } } return true } -func matchProtocolOspfv3ExportRules(a []ProtocolOspfv3ExportRules, b []ProtocolOspfv3ExportRules) bool { +func matchEcmpAlgorithmWeightedRoundRobin(a *EcmpAlgorithmWeightedRoundRobin, b *EcmpAlgorithmWeightedRoundRobin) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - for _, a := range a { - for _, b := range b { - if !util.StringsMatch(a.NewPathType, b.NewPathType) { - return false - } - if !util.StringsMatch(a.NewTag, b.NewTag) { - return false - } - if !util.Ints64Match(a.Metric, b.Metric) { - return false - } - if !util.StringsEqual(a.Name, b.Name) { - return false - } - } + if !matchEcmpAlgorithmWeightedRoundRobinInterface(a.Interface, b.Interface) { + return false } return true } -func matchProtocolOspfv3GlobalBfd(a *ProtocolOspfv3GlobalBfd, b *ProtocolOspfv3GlobalBfd) bool { +func matchEcmpAlgorithmBalancedRoundRobin(a *EcmpAlgorithmBalancedRoundRobin, b *EcmpAlgorithmBalancedRoundRobin) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Profile, b.Profile) { - return false - } return true } -func matchProtocolOspfv3GracefulRestart(a *ProtocolOspfv3GracefulRestart, b *ProtocolOspfv3GracefulRestart) bool { +func matchEcmpAlgorithmIpHash(a *EcmpAlgorithmIpHash, b *EcmpAlgorithmIpHash) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.BoolsMatch(a.Enable, b.Enable) { - return false - } - if !util.Ints64Match(a.GracePeriod, b.GracePeriod) { - return false - } - if !util.BoolsMatch(a.HelperEnable, b.HelperEnable) { + if !util.BoolsMatch(a.SrcOnly, b.SrcOnly) { return false } - if !util.Ints64Match(a.MaxNeighborRestartTime, b.MaxNeighborRestartTime) { + if !util.BoolsMatch(a.UsePort, b.UsePort) { return false } - if !util.BoolsMatch(a.StrictLSAChecking, b.StrictLSAChecking) { + if !util.Ints64Match(a.HashSeed, b.HashSeed) { return false } return true } -func matchProtocolOspfv3(a *ProtocolOspfv3, b *ProtocolOspfv3) bool { +func matchEcmpAlgorithmIpModulo(a *EcmpAlgorithmIpModulo, b *EcmpAlgorithmIpModulo) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.RouterId, b.RouterId) { - return false - } - if !matchProtocolOspfv3Timers(a.Timers, b.Timers) { - return false - } - if !util.BoolsMatch(a.AllowRedistDefaultRoute, b.AllowRedistDefaultRoute) { - return false - } - if !util.BoolsMatch(a.Enable, b.Enable) { - return false - } - if !util.BoolsMatch(a.DisableTransitTraffic, b.DisableTransitTraffic) { - return false - } - if !matchProtocolOspfv3ExportRules(a.ExportRules, b.ExportRules) { - return false - } - if !matchProtocolOspfv3GlobalBfd(a.GlobalBfd, b.GlobalBfd) { + return true +} +func matchEcmpAlgorithm(a *EcmpAlgorithm, b *EcmpAlgorithm) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } - if !matchProtocolOspfv3GracefulRestart(a.GracefulRestart, b.GracefulRestart) { + if !matchEcmpAlgorithmBalancedRoundRobin(a.BalancedRoundRobin, b.BalancedRoundRobin) { return false } - if !util.BoolsMatch(a.RejectDefaultRoute, b.RejectDefaultRoute) { + if !matchEcmpAlgorithmIpHash(a.IpHash, b.IpHash) { return false } - if !matchProtocolOspfv3Area(a.Area, b.Area) { + if !matchEcmpAlgorithmIpModulo(a.IpModulo, b.IpModulo) { return false } - if !matchProtocolOspfv3AuthProfile(a.AuthProfile, b.AuthProfile) { + if !matchEcmpAlgorithmWeightedRoundRobin(a.WeightedRoundRobin, b.WeightedRoundRobin) { return false } return true } -func matchProtocol(a *Protocol, b *Protocol) bool { +func matchEcmp(a *Ecmp, b *Ecmp) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchProtocolOspf(a.Ospf, b.Ospf) { - return false - } - if !matchProtocolOspfv3(a.Ospfv3, b.Ospfv3) { + if !util.Ints64Match(a.MaxPath, b.MaxPath) { return false } - if !matchProtocolRedistProfile(a.RedistProfile, b.RedistProfile) { + if !util.BoolsMatch(a.StrictSourcePath, b.StrictSourcePath) { return false } - if !matchProtocolRedistProfileIpv6(a.RedistProfileIpv6, b.RedistProfileIpv6) { + if !util.BoolsMatch(a.SymmetricReturn, b.SymmetricReturn) { return false } - if !matchProtocolRip(a.Rip, b.Rip) { + if !matchEcmpAlgorithm(a.Algorithm, b.Algorithm) { return false } - if !matchProtocolBgp(a.Bgp, b.Bgp) { + if !util.BoolsMatch(a.Enable, b.Enable) { return false } return true diff --git a/network/zone/entry.go b/network/zone/entry.go index 4de6655..6116ed1 100644 --- a/network/zone/entry.go +++ b/network/zone/entry.go @@ -210,12 +210,6 @@ func specifyEntry(o *Entry) (any, error) { if o.Network.NetInspection != nil { nestedNetwork.NetInspection = util.YesNo(o.Network.NetInspection, nil) } - if o.Network.Layer2 != nil { - nestedNetwork.Layer2 = util.StrToMem(o.Network.Layer2) - } - if o.Network.Layer3 != nil { - nestedNetwork.Layer3 = util.StrToMem(o.Network.Layer3) - } if o.Network.Tap != nil { nestedNetwork.Tap = util.StrToMem(o.Network.Tap) } @@ -231,6 +225,12 @@ func specifyEntry(o *Entry) (any, error) { if o.Network.External != nil { nestedNetwork.External = util.StrToMem(o.Network.External) } + if o.Network.Layer2 != nil { + nestedNetwork.Layer2 = util.StrToMem(o.Network.Layer2) + } + if o.Network.Layer3 != nil { + nestedNetwork.Layer3 = util.StrToMem(o.Network.Layer3) + } } entry.Network = nestedNetwork @@ -263,12 +263,12 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { if _, ok := o.Misc["DeviceAcl"]; ok { nestedDeviceAcl.Misc = o.Misc["DeviceAcl"] } - if o.DeviceAcl.ExcludeList != nil { - nestedDeviceAcl.ExcludeList = util.StrToMem(o.DeviceAcl.ExcludeList) - } if o.DeviceAcl.IncludeList != nil { nestedDeviceAcl.IncludeList = util.StrToMem(o.DeviceAcl.IncludeList) } + if o.DeviceAcl.ExcludeList != nil { + nestedDeviceAcl.ExcludeList = util.StrToMem(o.DeviceAcl.ExcludeList) + } } entry.DeviceAcl = nestedDeviceAcl @@ -280,18 +280,18 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { if _, ok := o.Misc["Network"]; ok { nestedNetwork.Misc = o.Misc["Network"] } - if o.Network.ZoneProtectionProfile != nil { - nestedNetwork.ZoneProtectionProfile = o.Network.ZoneProtectionProfile - } - if o.Network.NetInspection != nil { - nestedNetwork.NetInspection = util.YesNo(o.Network.NetInspection, nil) - } if o.Network.EnablePacketBufferProtection != nil { nestedNetwork.EnablePacketBufferProtection = util.YesNo(o.Network.EnablePacketBufferProtection, nil) } if o.Network.LogSetting != nil { nestedNetwork.LogSetting = o.Network.LogSetting } + if o.Network.ZoneProtectionProfile != nil { + nestedNetwork.ZoneProtectionProfile = o.Network.ZoneProtectionProfile + } + if o.Network.NetInspection != nil { + nestedNetwork.NetInspection = util.YesNo(o.Network.NetInspection, nil) + } if o.Network.VirtualWire != nil { nestedNetwork.VirtualWire = util.StrToMem(o.Network.VirtualWire) } @@ -365,17 +365,26 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Network.Misc != nil { entry.Misc["Network"] = o.Network.Misc } + if o.Network.ZoneProtectionProfile != nil { + nestedNetwork.ZoneProtectionProfile = o.Network.ZoneProtectionProfile + } + if o.Network.NetInspection != nil { + nestedNetwork.NetInspection = util.AsBool(o.Network.NetInspection, nil) + } if o.Network.EnablePacketBufferProtection != nil { nestedNetwork.EnablePacketBufferProtection = util.AsBool(o.Network.EnablePacketBufferProtection, nil) } if o.Network.LogSetting != nil { nestedNetwork.LogSetting = o.Network.LogSetting } - if o.Network.ZoneProtectionProfile != nil { - nestedNetwork.ZoneProtectionProfile = o.Network.ZoneProtectionProfile + if o.Network.Tunnel != nil { + nestedNetwork.Tunnel = &NetworkTunnel{} + if o.Network.Tunnel.Misc != nil { + entry.Misc["NetworkTunnel"] = o.Network.Tunnel.Misc + } } - if o.Network.NetInspection != nil { - nestedNetwork.NetInspection = util.AsBool(o.Network.NetInspection, nil) + if o.Network.VirtualWire != nil { + nestedNetwork.VirtualWire = util.MemToStr(o.Network.VirtualWire) } if o.Network.External != nil { nestedNetwork.External = util.MemToStr(o.Network.External) @@ -389,15 +398,6 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Network.Tap != nil { nestedNetwork.Tap = util.MemToStr(o.Network.Tap) } - if o.Network.Tunnel != nil { - nestedNetwork.Tunnel = &NetworkTunnel{} - if o.Network.Tunnel.Misc != nil { - entry.Misc["NetworkTunnel"] = o.Network.Tunnel.Misc - } - } - if o.Network.VirtualWire != nil { - nestedNetwork.VirtualWire = util.MemToStr(o.Network.VirtualWire) - } } entry.Network = nestedNetwork @@ -453,6 +453,9 @@ func (c *entryXmlContainer_11_0_2) Normalize() ([]*Entry, error) { if o.Network.Misc != nil { entry.Misc["Network"] = o.Network.Misc } + if o.Network.EnablePacketBufferProtection != nil { + nestedNetwork.EnablePacketBufferProtection = util.AsBool(o.Network.EnablePacketBufferProtection, nil) + } if o.Network.LogSetting != nil { nestedNetwork.LogSetting = o.Network.LogSetting } @@ -462,18 +465,6 @@ func (c *entryXmlContainer_11_0_2) Normalize() ([]*Entry, error) { if o.Network.NetInspection != nil { nestedNetwork.NetInspection = util.AsBool(o.Network.NetInspection, nil) } - if o.Network.EnablePacketBufferProtection != nil { - nestedNetwork.EnablePacketBufferProtection = util.AsBool(o.Network.EnablePacketBufferProtection, nil) - } - if o.Network.External != nil { - nestedNetwork.External = util.MemToStr(o.Network.External) - } - if o.Network.Layer2 != nil { - nestedNetwork.Layer2 = util.MemToStr(o.Network.Layer2) - } - if o.Network.Layer3 != nil { - nestedNetwork.Layer3 = util.MemToStr(o.Network.Layer3) - } if o.Network.Tap != nil { nestedNetwork.Tap = util.MemToStr(o.Network.Tap) } @@ -486,6 +477,15 @@ func (c *entryXmlContainer_11_0_2) Normalize() ([]*Entry, error) { if o.Network.VirtualWire != nil { nestedNetwork.VirtualWire = util.MemToStr(o.Network.VirtualWire) } + if o.Network.External != nil { + nestedNetwork.External = util.MemToStr(o.Network.External) + } + if o.Network.Layer2 != nil { + nestedNetwork.Layer2 = util.MemToStr(o.Network.Layer2) + } + if o.Network.Layer3 != nil { + nestedNetwork.Layer3 = util.MemToStr(o.Network.Layer3) + } } entry.Network = nestedNetwork @@ -539,20 +539,6 @@ func SpecMatches(a, b *Entry) bool { return true } -func matchDeviceAcl(a *DeviceAcl, b *DeviceAcl) bool { - if a == nil && b != nil || a != nil && b == nil { - return false - } else if a == nil && b == nil { - return true - } - if !util.OrderedListsMatch(a.ExcludeList, b.ExcludeList) { - return false - } - if !util.OrderedListsMatch(a.IncludeList, b.IncludeList) { - return false - } - return true -} func matchNetworkTunnel(a *NetworkTunnel, b *NetworkTunnel) bool { if a == nil && b != nil || a != nil && b == nil { return false @@ -567,9 +553,6 @@ func matchNetwork(a *Network, b *Network) bool { } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.LogSetting, b.LogSetting) { - return false - } if !util.StringsMatch(a.ZoneProtectionProfile, b.ZoneProtectionProfile) { return false } @@ -579,6 +562,15 @@ func matchNetwork(a *Network, b *Network) bool { if !util.BoolsMatch(a.EnablePacketBufferProtection, b.EnablePacketBufferProtection) { return false } + if !util.StringsMatch(a.LogSetting, b.LogSetting) { + return false + } + if !util.OrderedListsMatch(a.Tap, b.Tap) { + return false + } + if !matchNetworkTunnel(a.Tunnel, b.Tunnel) { + return false + } if !util.OrderedListsMatch(a.VirtualWire, b.VirtualWire) { return false } @@ -591,15 +583,23 @@ func matchNetwork(a *Network, b *Network) bool { if !util.OrderedListsMatch(a.Layer3, b.Layer3) { return false } - if !util.OrderedListsMatch(a.Tap, b.Tap) { + return true +} +func matchUserAcl(a *UserAcl, b *UserAcl) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } - if !matchNetworkTunnel(a.Tunnel, b.Tunnel) { + if !util.OrderedListsMatch(a.ExcludeList, b.ExcludeList) { + return false + } + if !util.OrderedListsMatch(a.IncludeList, b.IncludeList) { return false } return true } -func matchUserAcl(a *UserAcl, b *UserAcl) bool { +func matchDeviceAcl(a *DeviceAcl, b *DeviceAcl) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { diff --git a/objects/extdynlist/entry.go b/objects/extdynlist/entry.go index f02de8b..c3ba39a 100644 --- a/objects/extdynlist/entry.go +++ b/objects/extdynlist/entry.go @@ -558,6 +558,18 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["TypeDomainRecurring"]; ok { nestedType.Domain.Recurring.Misc = o.Misc["TypeDomainRecurring"] } + if o.Type.Domain.Recurring.Weekly != nil { + nestedType.Domain.Recurring.Weekly = &TypeDomainRecurringWeeklyXml{} + if _, ok := o.Misc["TypeDomainRecurringWeekly"]; ok { + nestedType.Domain.Recurring.Weekly.Misc = o.Misc["TypeDomainRecurringWeekly"] + } + if o.Type.Domain.Recurring.Weekly.At != nil { + nestedType.Domain.Recurring.Weekly.At = o.Type.Domain.Recurring.Weekly.At + } + if o.Type.Domain.Recurring.Weekly.DayOfWeek != nil { + nestedType.Domain.Recurring.Weekly.DayOfWeek = o.Type.Domain.Recurring.Weekly.DayOfWeek + } + } if o.Type.Domain.Recurring.Daily != nil { nestedType.Domain.Recurring.Daily = &TypeDomainRecurringDailyXml{} if _, ok := o.Misc["TypeDomainRecurringDaily"]; ok { @@ -591,18 +603,6 @@ func specifyEntry(o *Entry) (any, error) { nestedType.Domain.Recurring.Monthly.DayOfMonth = o.Type.Domain.Recurring.Monthly.DayOfMonth } } - if o.Type.Domain.Recurring.Weekly != nil { - nestedType.Domain.Recurring.Weekly = &TypeDomainRecurringWeeklyXml{} - if _, ok := o.Misc["TypeDomainRecurringWeekly"]; ok { - nestedType.Domain.Recurring.Weekly.Misc = o.Misc["TypeDomainRecurringWeekly"] - } - if o.Type.Domain.Recurring.Weekly.At != nil { - nestedType.Domain.Recurring.Weekly.At = o.Type.Domain.Recurring.Weekly.At - } - if o.Type.Domain.Recurring.Weekly.DayOfWeek != nil { - nestedType.Domain.Recurring.Weekly.DayOfWeek = o.Type.Domain.Recurring.Weekly.DayOfWeek - } - } } if o.Type.Domain.Url != nil { nestedType.Domain.Url = o.Type.Domain.Url @@ -613,18 +613,6 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["TypeImei"]; ok { nestedType.Imei.Misc = o.Misc["TypeImei"] } - if o.Type.Imei.Auth != nil { - nestedType.Imei.Auth = &TypeImeiAuthXml{} - if _, ok := o.Misc["TypeImeiAuth"]; ok { - nestedType.Imei.Auth.Misc = o.Misc["TypeImeiAuth"] - } - if o.Type.Imei.Auth.Password != nil { - nestedType.Imei.Auth.Password = o.Type.Imei.Auth.Password - } - if o.Type.Imei.Auth.Username != nil { - nestedType.Imei.Auth.Username = o.Type.Imei.Auth.Username - } - } if o.Type.Imei.CertificateProfile != nil { nestedType.Imei.CertificateProfile = o.Type.Imei.CertificateProfile } @@ -639,15 +627,6 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["TypeImeiRecurring"]; ok { nestedType.Imei.Recurring.Misc = o.Misc["TypeImeiRecurring"] } - if o.Type.Imei.Recurring.Daily != nil { - nestedType.Imei.Recurring.Daily = &TypeImeiRecurringDailyXml{} - if _, ok := o.Misc["TypeImeiRecurringDaily"]; ok { - nestedType.Imei.Recurring.Daily.Misc = o.Misc["TypeImeiRecurringDaily"] - } - if o.Type.Imei.Recurring.Daily.At != nil { - nestedType.Imei.Recurring.Daily.At = o.Type.Imei.Recurring.Daily.At - } - } if o.Type.Imei.Recurring.FiveMinute != nil { nestedType.Imei.Recurring.FiveMinute = &TypeImeiRecurringFiveMinuteXml{} if _, ok := o.Misc["TypeImeiRecurringFiveMinute"]; ok { @@ -684,28 +663,37 @@ func specifyEntry(o *Entry) (any, error) { nestedType.Imei.Recurring.Weekly.At = o.Type.Imei.Recurring.Weekly.At } } + if o.Type.Imei.Recurring.Daily != nil { + nestedType.Imei.Recurring.Daily = &TypeImeiRecurringDailyXml{} + if _, ok := o.Misc["TypeImeiRecurringDaily"]; ok { + nestedType.Imei.Recurring.Daily.Misc = o.Misc["TypeImeiRecurringDaily"] + } + if o.Type.Imei.Recurring.Daily.At != nil { + nestedType.Imei.Recurring.Daily.At = o.Type.Imei.Recurring.Daily.At + } + } } if o.Type.Imei.Url != nil { nestedType.Imei.Url = o.Type.Imei.Url } + if o.Type.Imei.Auth != nil { + nestedType.Imei.Auth = &TypeImeiAuthXml{} + if _, ok := o.Misc["TypeImeiAuth"]; ok { + nestedType.Imei.Auth.Misc = o.Misc["TypeImeiAuth"] + } + if o.Type.Imei.Auth.Password != nil { + nestedType.Imei.Auth.Password = o.Type.Imei.Auth.Password + } + if o.Type.Imei.Auth.Username != nil { + nestedType.Imei.Auth.Username = o.Type.Imei.Auth.Username + } + } } if o.Type.Imsi != nil { nestedType.Imsi = &TypeImsiXml{} if _, ok := o.Misc["TypeImsi"]; ok { nestedType.Imsi.Misc = o.Misc["TypeImsi"] } - if o.Type.Imsi.Auth != nil { - nestedType.Imsi.Auth = &TypeImsiAuthXml{} - if _, ok := o.Misc["TypeImsiAuth"]; ok { - nestedType.Imsi.Auth.Misc = o.Misc["TypeImsiAuth"] - } - if o.Type.Imsi.Auth.Password != nil { - nestedType.Imsi.Auth.Password = o.Type.Imsi.Auth.Password - } - if o.Type.Imsi.Auth.Username != nil { - nestedType.Imsi.Auth.Username = o.Type.Imsi.Auth.Username - } - } if o.Type.Imsi.CertificateProfile != nil { nestedType.Imsi.CertificateProfile = o.Type.Imsi.CertificateProfile } @@ -769,26 +757,41 @@ func specifyEntry(o *Entry) (any, error) { if o.Type.Imsi.Url != nil { nestedType.Imsi.Url = o.Type.Imsi.Url } + if o.Type.Imsi.Auth != nil { + nestedType.Imsi.Auth = &TypeImsiAuthXml{} + if _, ok := o.Misc["TypeImsiAuth"]; ok { + nestedType.Imsi.Auth.Misc = o.Misc["TypeImsiAuth"] + } + if o.Type.Imsi.Auth.Password != nil { + nestedType.Imsi.Auth.Password = o.Type.Imsi.Auth.Password + } + if o.Type.Imsi.Auth.Username != nil { + nestedType.Imsi.Auth.Username = o.Type.Imsi.Auth.Username + } + } } if o.Type.Ip != nil { nestedType.Ip = &TypeIpXml{} if _, ok := o.Misc["TypeIp"]; ok { nestedType.Ip.Misc = o.Misc["TypeIp"] } - if o.Type.Ip.CertificateProfile != nil { - nestedType.Ip.CertificateProfile = o.Type.Ip.CertificateProfile - } - if o.Type.Ip.Description != nil { - nestedType.Ip.Description = o.Type.Ip.Description - } - if o.Type.Ip.ExceptionList != nil { - nestedType.Ip.ExceptionList = util.StrToMem(o.Type.Ip.ExceptionList) - } if o.Type.Ip.Recurring != nil { nestedType.Ip.Recurring = &TypeIpRecurringXml{} if _, ok := o.Misc["TypeIpRecurring"]; ok { nestedType.Ip.Recurring.Misc = o.Misc["TypeIpRecurring"] } + if o.Type.Ip.Recurring.Monthly != nil { + nestedType.Ip.Recurring.Monthly = &TypeIpRecurringMonthlyXml{} + if _, ok := o.Misc["TypeIpRecurringMonthly"]; ok { + nestedType.Ip.Recurring.Monthly.Misc = o.Misc["TypeIpRecurringMonthly"] + } + if o.Type.Ip.Recurring.Monthly.At != nil { + nestedType.Ip.Recurring.Monthly.At = o.Type.Ip.Recurring.Monthly.At + } + if o.Type.Ip.Recurring.Monthly.DayOfMonth != nil { + nestedType.Ip.Recurring.Monthly.DayOfMonth = o.Type.Ip.Recurring.Monthly.DayOfMonth + } + } if o.Type.Ip.Recurring.Weekly != nil { nestedType.Ip.Recurring.Weekly = &TypeIpRecurringWeeklyXml{} if _, ok := o.Misc["TypeIpRecurringWeekly"]; ok { @@ -822,18 +825,6 @@ func specifyEntry(o *Entry) (any, error) { nestedType.Ip.Recurring.Hourly.Misc = o.Misc["TypeIpRecurringHourly"] } } - if o.Type.Ip.Recurring.Monthly != nil { - nestedType.Ip.Recurring.Monthly = &TypeIpRecurringMonthlyXml{} - if _, ok := o.Misc["TypeIpRecurringMonthly"]; ok { - nestedType.Ip.Recurring.Monthly.Misc = o.Misc["TypeIpRecurringMonthly"] - } - if o.Type.Ip.Recurring.Monthly.At != nil { - nestedType.Ip.Recurring.Monthly.At = o.Type.Ip.Recurring.Monthly.At - } - if o.Type.Ip.Recurring.Monthly.DayOfMonth != nil { - nestedType.Ip.Recurring.Monthly.DayOfMonth = o.Type.Ip.Recurring.Monthly.DayOfMonth - } - } } if o.Type.Ip.Url != nil { nestedType.Ip.Url = o.Type.Ip.Url @@ -850,6 +841,15 @@ func specifyEntry(o *Entry) (any, error) { nestedType.Ip.Auth.Username = o.Type.Ip.Auth.Username } } + if o.Type.Ip.CertificateProfile != nil { + nestedType.Ip.CertificateProfile = o.Type.Ip.CertificateProfile + } + if o.Type.Ip.Description != nil { + nestedType.Ip.Description = o.Type.Ip.Description + } + if o.Type.Ip.ExceptionList != nil { + nestedType.Ip.ExceptionList = util.StrToMem(o.Type.Ip.ExceptionList) + } } if o.Type.PredefinedIp != nil { nestedType.PredefinedIp = &TypePredefinedIpXml{} @@ -886,24 +886,6 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["TypeUrl"]; ok { nestedType.Url.Misc = o.Misc["TypeUrl"] } - if o.Type.Url.Auth != nil { - nestedType.Url.Auth = &TypeUrlAuthXml{} - if _, ok := o.Misc["TypeUrlAuth"]; ok { - nestedType.Url.Auth.Misc = o.Misc["TypeUrlAuth"] - } - if o.Type.Url.Auth.Username != nil { - nestedType.Url.Auth.Username = o.Type.Url.Auth.Username - } - if o.Type.Url.Auth.Password != nil { - nestedType.Url.Auth.Password = o.Type.Url.Auth.Password - } - } - if o.Type.Url.CertificateProfile != nil { - nestedType.Url.CertificateProfile = o.Type.Url.CertificateProfile - } - if o.Type.Url.Description != nil { - nestedType.Url.Description = o.Type.Url.Description - } if o.Type.Url.ExceptionList != nil { nestedType.Url.ExceptionList = util.StrToMem(o.Type.Url.ExceptionList) } @@ -912,6 +894,15 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["TypeUrlRecurring"]; ok { nestedType.Url.Recurring.Misc = o.Misc["TypeUrlRecurring"] } + if o.Type.Url.Recurring.Daily != nil { + nestedType.Url.Recurring.Daily = &TypeUrlRecurringDailyXml{} + if _, ok := o.Misc["TypeUrlRecurringDaily"]; ok { + nestedType.Url.Recurring.Daily.Misc = o.Misc["TypeUrlRecurringDaily"] + } + if o.Type.Url.Recurring.Daily.At != nil { + nestedType.Url.Recurring.Daily.At = o.Type.Url.Recurring.Daily.At + } + } if o.Type.Url.Recurring.FiveMinute != nil { nestedType.Url.Recurring.FiveMinute = &TypeUrlRecurringFiveMinuteXml{} if _, ok := o.Misc["TypeUrlRecurringFiveMinute"]; ok { @@ -941,26 +932,35 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["TypeUrlRecurringWeekly"]; ok { nestedType.Url.Recurring.Weekly.Misc = o.Misc["TypeUrlRecurringWeekly"] } - if o.Type.Url.Recurring.Weekly.DayOfWeek != nil { - nestedType.Url.Recurring.Weekly.DayOfWeek = o.Type.Url.Recurring.Weekly.DayOfWeek - } if o.Type.Url.Recurring.Weekly.At != nil { nestedType.Url.Recurring.Weekly.At = o.Type.Url.Recurring.Weekly.At } - } - if o.Type.Url.Recurring.Daily != nil { - nestedType.Url.Recurring.Daily = &TypeUrlRecurringDailyXml{} - if _, ok := o.Misc["TypeUrlRecurringDaily"]; ok { - nestedType.Url.Recurring.Daily.Misc = o.Misc["TypeUrlRecurringDaily"] - } - if o.Type.Url.Recurring.Daily.At != nil { - nestedType.Url.Recurring.Daily.At = o.Type.Url.Recurring.Daily.At + if o.Type.Url.Recurring.Weekly.DayOfWeek != nil { + nestedType.Url.Recurring.Weekly.DayOfWeek = o.Type.Url.Recurring.Weekly.DayOfWeek } } } if o.Type.Url.Url != nil { nestedType.Url.Url = o.Type.Url.Url } + if o.Type.Url.Auth != nil { + nestedType.Url.Auth = &TypeUrlAuthXml{} + if _, ok := o.Misc["TypeUrlAuth"]; ok { + nestedType.Url.Auth.Misc = o.Misc["TypeUrlAuth"] + } + if o.Type.Url.Auth.Username != nil { + nestedType.Url.Auth.Username = o.Type.Url.Auth.Username + } + if o.Type.Url.Auth.Password != nil { + nestedType.Url.Auth.Password = o.Type.Url.Auth.Password + } + } + if o.Type.Url.CertificateProfile != nil { + nestedType.Url.CertificateProfile = o.Type.Url.CertificateProfile + } + if o.Type.Url.Description != nil { + nestedType.Url.Description = o.Type.Url.Description + } } } entry.Type = nestedType @@ -984,200 +984,56 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Type.Misc != nil { entry.Misc["Type"] = o.Type.Misc } - if o.Type.Domain != nil { - nestedType.Domain = &TypeDomain{} - if o.Type.Domain.Misc != nil { - entry.Misc["TypeDomain"] = o.Type.Domain.Misc + if o.Type.Imsi != nil { + nestedType.Imsi = &TypeImsi{} + if o.Type.Imsi.Misc != nil { + entry.Misc["TypeImsi"] = o.Type.Imsi.Misc } - if o.Type.Domain.ExpandDomain != nil { - nestedType.Domain.ExpandDomain = util.AsBool(o.Type.Domain.ExpandDomain, nil) + if o.Type.Imsi.Auth != nil { + nestedType.Imsi.Auth = &TypeImsiAuth{} + if o.Type.Imsi.Auth.Misc != nil { + entry.Misc["TypeImsiAuth"] = o.Type.Imsi.Auth.Misc + } + if o.Type.Imsi.Auth.Password != nil { + nestedType.Imsi.Auth.Password = o.Type.Imsi.Auth.Password + } + if o.Type.Imsi.Auth.Username != nil { + nestedType.Imsi.Auth.Username = o.Type.Imsi.Auth.Username + } } - if o.Type.Domain.Recurring != nil { - nestedType.Domain.Recurring = &TypeDomainRecurring{} - if o.Type.Domain.Recurring.Misc != nil { - entry.Misc["TypeDomainRecurring"] = o.Type.Domain.Recurring.Misc + if o.Type.Imsi.CertificateProfile != nil { + nestedType.Imsi.CertificateProfile = o.Type.Imsi.CertificateProfile + } + if o.Type.Imsi.Description != nil { + nestedType.Imsi.Description = o.Type.Imsi.Description + } + if o.Type.Imsi.ExceptionList != nil { + nestedType.Imsi.ExceptionList = util.MemToStr(o.Type.Imsi.ExceptionList) + } + if o.Type.Imsi.Recurring != nil { + nestedType.Imsi.Recurring = &TypeImsiRecurring{} + if o.Type.Imsi.Recurring.Misc != nil { + entry.Misc["TypeImsiRecurring"] = o.Type.Imsi.Recurring.Misc } - if o.Type.Domain.Recurring.Daily != nil { - nestedType.Domain.Recurring.Daily = &TypeDomainRecurringDaily{} - if o.Type.Domain.Recurring.Daily.Misc != nil { - entry.Misc["TypeDomainRecurringDaily"] = o.Type.Domain.Recurring.Daily.Misc + if o.Type.Imsi.Recurring.Daily != nil { + nestedType.Imsi.Recurring.Daily = &TypeImsiRecurringDaily{} + if o.Type.Imsi.Recurring.Daily.Misc != nil { + entry.Misc["TypeImsiRecurringDaily"] = o.Type.Imsi.Recurring.Daily.Misc } - if o.Type.Domain.Recurring.Daily.At != nil { - nestedType.Domain.Recurring.Daily.At = o.Type.Domain.Recurring.Daily.At + if o.Type.Imsi.Recurring.Daily.At != nil { + nestedType.Imsi.Recurring.Daily.At = o.Type.Imsi.Recurring.Daily.At } } - if o.Type.Domain.Recurring.FiveMinute != nil { - nestedType.Domain.Recurring.FiveMinute = &TypeDomainRecurringFiveMinute{} - if o.Type.Domain.Recurring.FiveMinute.Misc != nil { - entry.Misc["TypeDomainRecurringFiveMinute"] = o.Type.Domain.Recurring.FiveMinute.Misc + if o.Type.Imsi.Recurring.FiveMinute != nil { + nestedType.Imsi.Recurring.FiveMinute = &TypeImsiRecurringFiveMinute{} + if o.Type.Imsi.Recurring.FiveMinute.Misc != nil { + entry.Misc["TypeImsiRecurringFiveMinute"] = o.Type.Imsi.Recurring.FiveMinute.Misc } } - if o.Type.Domain.Recurring.Hourly != nil { - nestedType.Domain.Recurring.Hourly = &TypeDomainRecurringHourly{} - if o.Type.Domain.Recurring.Hourly.Misc != nil { - entry.Misc["TypeDomainRecurringHourly"] = o.Type.Domain.Recurring.Hourly.Misc - } - } - if o.Type.Domain.Recurring.Monthly != nil { - nestedType.Domain.Recurring.Monthly = &TypeDomainRecurringMonthly{} - if o.Type.Domain.Recurring.Monthly.Misc != nil { - entry.Misc["TypeDomainRecurringMonthly"] = o.Type.Domain.Recurring.Monthly.Misc - } - if o.Type.Domain.Recurring.Monthly.At != nil { - nestedType.Domain.Recurring.Monthly.At = o.Type.Domain.Recurring.Monthly.At - } - if o.Type.Domain.Recurring.Monthly.DayOfMonth != nil { - nestedType.Domain.Recurring.Monthly.DayOfMonth = o.Type.Domain.Recurring.Monthly.DayOfMonth - } - } - if o.Type.Domain.Recurring.Weekly != nil { - nestedType.Domain.Recurring.Weekly = &TypeDomainRecurringWeekly{} - if o.Type.Domain.Recurring.Weekly.Misc != nil { - entry.Misc["TypeDomainRecurringWeekly"] = o.Type.Domain.Recurring.Weekly.Misc - } - if o.Type.Domain.Recurring.Weekly.At != nil { - nestedType.Domain.Recurring.Weekly.At = o.Type.Domain.Recurring.Weekly.At - } - if o.Type.Domain.Recurring.Weekly.DayOfWeek != nil { - nestedType.Domain.Recurring.Weekly.DayOfWeek = o.Type.Domain.Recurring.Weekly.DayOfWeek - } - } - } - if o.Type.Domain.Url != nil { - nestedType.Domain.Url = o.Type.Domain.Url - } - if o.Type.Domain.Auth != nil { - nestedType.Domain.Auth = &TypeDomainAuth{} - if o.Type.Domain.Auth.Misc != nil { - entry.Misc["TypeDomainAuth"] = o.Type.Domain.Auth.Misc - } - if o.Type.Domain.Auth.Password != nil { - nestedType.Domain.Auth.Password = o.Type.Domain.Auth.Password - } - if o.Type.Domain.Auth.Username != nil { - nestedType.Domain.Auth.Username = o.Type.Domain.Auth.Username - } - } - if o.Type.Domain.CertificateProfile != nil { - nestedType.Domain.CertificateProfile = o.Type.Domain.CertificateProfile - } - if o.Type.Domain.Description != nil { - nestedType.Domain.Description = o.Type.Domain.Description - } - if o.Type.Domain.ExceptionList != nil { - nestedType.Domain.ExceptionList = util.MemToStr(o.Type.Domain.ExceptionList) - } - } - if o.Type.Imei != nil { - nestedType.Imei = &TypeImei{} - if o.Type.Imei.Misc != nil { - entry.Misc["TypeImei"] = o.Type.Imei.Misc - } - if o.Type.Imei.Description != nil { - nestedType.Imei.Description = o.Type.Imei.Description - } - if o.Type.Imei.ExceptionList != nil { - nestedType.Imei.ExceptionList = util.MemToStr(o.Type.Imei.ExceptionList) - } - if o.Type.Imei.Recurring != nil { - nestedType.Imei.Recurring = &TypeImeiRecurring{} - if o.Type.Imei.Recurring.Misc != nil { - entry.Misc["TypeImeiRecurring"] = o.Type.Imei.Recurring.Misc - } - if o.Type.Imei.Recurring.Daily != nil { - nestedType.Imei.Recurring.Daily = &TypeImeiRecurringDaily{} - if o.Type.Imei.Recurring.Daily.Misc != nil { - entry.Misc["TypeImeiRecurringDaily"] = o.Type.Imei.Recurring.Daily.Misc - } - if o.Type.Imei.Recurring.Daily.At != nil { - nestedType.Imei.Recurring.Daily.At = o.Type.Imei.Recurring.Daily.At - } - } - if o.Type.Imei.Recurring.FiveMinute != nil { - nestedType.Imei.Recurring.FiveMinute = &TypeImeiRecurringFiveMinute{} - if o.Type.Imei.Recurring.FiveMinute.Misc != nil { - entry.Misc["TypeImeiRecurringFiveMinute"] = o.Type.Imei.Recurring.FiveMinute.Misc - } - } - if o.Type.Imei.Recurring.Hourly != nil { - nestedType.Imei.Recurring.Hourly = &TypeImeiRecurringHourly{} - if o.Type.Imei.Recurring.Hourly.Misc != nil { - entry.Misc["TypeImeiRecurringHourly"] = o.Type.Imei.Recurring.Hourly.Misc - } - } - if o.Type.Imei.Recurring.Monthly != nil { - nestedType.Imei.Recurring.Monthly = &TypeImeiRecurringMonthly{} - if o.Type.Imei.Recurring.Monthly.Misc != nil { - entry.Misc["TypeImeiRecurringMonthly"] = o.Type.Imei.Recurring.Monthly.Misc - } - if o.Type.Imei.Recurring.Monthly.DayOfMonth != nil { - nestedType.Imei.Recurring.Monthly.DayOfMonth = o.Type.Imei.Recurring.Monthly.DayOfMonth - } - if o.Type.Imei.Recurring.Monthly.At != nil { - nestedType.Imei.Recurring.Monthly.At = o.Type.Imei.Recurring.Monthly.At - } - } - if o.Type.Imei.Recurring.Weekly != nil { - nestedType.Imei.Recurring.Weekly = &TypeImeiRecurringWeekly{} - if o.Type.Imei.Recurring.Weekly.Misc != nil { - entry.Misc["TypeImeiRecurringWeekly"] = o.Type.Imei.Recurring.Weekly.Misc - } - if o.Type.Imei.Recurring.Weekly.At != nil { - nestedType.Imei.Recurring.Weekly.At = o.Type.Imei.Recurring.Weekly.At - } - if o.Type.Imei.Recurring.Weekly.DayOfWeek != nil { - nestedType.Imei.Recurring.Weekly.DayOfWeek = o.Type.Imei.Recurring.Weekly.DayOfWeek - } - } - } - if o.Type.Imei.Url != nil { - nestedType.Imei.Url = o.Type.Imei.Url - } - if o.Type.Imei.Auth != nil { - nestedType.Imei.Auth = &TypeImeiAuth{} - if o.Type.Imei.Auth.Misc != nil { - entry.Misc["TypeImeiAuth"] = o.Type.Imei.Auth.Misc - } - if o.Type.Imei.Auth.Password != nil { - nestedType.Imei.Auth.Password = o.Type.Imei.Auth.Password - } - if o.Type.Imei.Auth.Username != nil { - nestedType.Imei.Auth.Username = o.Type.Imei.Auth.Username - } - } - if o.Type.Imei.CertificateProfile != nil { - nestedType.Imei.CertificateProfile = o.Type.Imei.CertificateProfile - } - } - if o.Type.Imsi != nil { - nestedType.Imsi = &TypeImsi{} - if o.Type.Imsi.Misc != nil { - entry.Misc["TypeImsi"] = o.Type.Imsi.Misc - } - if o.Type.Imsi.Recurring != nil { - nestedType.Imsi.Recurring = &TypeImsiRecurring{} - if o.Type.Imsi.Recurring.Misc != nil { - entry.Misc["TypeImsiRecurring"] = o.Type.Imsi.Recurring.Misc - } - if o.Type.Imsi.Recurring.Daily != nil { - nestedType.Imsi.Recurring.Daily = &TypeImsiRecurringDaily{} - if o.Type.Imsi.Recurring.Daily.Misc != nil { - entry.Misc["TypeImsiRecurringDaily"] = o.Type.Imsi.Recurring.Daily.Misc - } - if o.Type.Imsi.Recurring.Daily.At != nil { - nestedType.Imsi.Recurring.Daily.At = o.Type.Imsi.Recurring.Daily.At - } - } - if o.Type.Imsi.Recurring.FiveMinute != nil { - nestedType.Imsi.Recurring.FiveMinute = &TypeImsiRecurringFiveMinute{} - if o.Type.Imsi.Recurring.FiveMinute.Misc != nil { - entry.Misc["TypeImsiRecurringFiveMinute"] = o.Type.Imsi.Recurring.FiveMinute.Misc - } - } - if o.Type.Imsi.Recurring.Hourly != nil { - nestedType.Imsi.Recurring.Hourly = &TypeImsiRecurringHourly{} - if o.Type.Imsi.Recurring.Hourly.Misc != nil { - entry.Misc["TypeImsiRecurringHourly"] = o.Type.Imsi.Recurring.Hourly.Misc + if o.Type.Imsi.Recurring.Hourly != nil { + nestedType.Imsi.Recurring.Hourly = &TypeImsiRecurringHourly{} + if o.Type.Imsi.Recurring.Hourly.Misc != nil { + entry.Misc["TypeImsiRecurringHourly"] = o.Type.Imsi.Recurring.Hourly.Misc } } if o.Type.Imsi.Recurring.Monthly != nil { @@ -1208,45 +1064,12 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Type.Imsi.Url != nil { nestedType.Imsi.Url = o.Type.Imsi.Url } - if o.Type.Imsi.Auth != nil { - nestedType.Imsi.Auth = &TypeImsiAuth{} - if o.Type.Imsi.Auth.Misc != nil { - entry.Misc["TypeImsiAuth"] = o.Type.Imsi.Auth.Misc - } - if o.Type.Imsi.Auth.Password != nil { - nestedType.Imsi.Auth.Password = o.Type.Imsi.Auth.Password - } - if o.Type.Imsi.Auth.Username != nil { - nestedType.Imsi.Auth.Username = o.Type.Imsi.Auth.Username - } - } - if o.Type.Imsi.CertificateProfile != nil { - nestedType.Imsi.CertificateProfile = o.Type.Imsi.CertificateProfile - } - if o.Type.Imsi.Description != nil { - nestedType.Imsi.Description = o.Type.Imsi.Description - } - if o.Type.Imsi.ExceptionList != nil { - nestedType.Imsi.ExceptionList = util.MemToStr(o.Type.Imsi.ExceptionList) - } } if o.Type.Ip != nil { nestedType.Ip = &TypeIp{} if o.Type.Ip.Misc != nil { entry.Misc["TypeIp"] = o.Type.Ip.Misc } - if o.Type.Ip.Auth != nil { - nestedType.Ip.Auth = &TypeIpAuth{} - if o.Type.Ip.Auth.Misc != nil { - entry.Misc["TypeIpAuth"] = o.Type.Ip.Auth.Misc - } - if o.Type.Ip.Auth.Password != nil { - nestedType.Ip.Auth.Password = o.Type.Ip.Auth.Password - } - if o.Type.Ip.Auth.Username != nil { - nestedType.Ip.Auth.Username = o.Type.Ip.Auth.Username - } - } if o.Type.Ip.CertificateProfile != nil { nestedType.Ip.CertificateProfile = o.Type.Ip.CertificateProfile } @@ -1261,24 +1084,6 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Type.Ip.Recurring.Misc != nil { entry.Misc["TypeIpRecurring"] = o.Type.Ip.Recurring.Misc } - if o.Type.Ip.Recurring.Hourly != nil { - nestedType.Ip.Recurring.Hourly = &TypeIpRecurringHourly{} - if o.Type.Ip.Recurring.Hourly.Misc != nil { - entry.Misc["TypeIpRecurringHourly"] = o.Type.Ip.Recurring.Hourly.Misc - } - } - if o.Type.Ip.Recurring.Monthly != nil { - nestedType.Ip.Recurring.Monthly = &TypeIpRecurringMonthly{} - if o.Type.Ip.Recurring.Monthly.Misc != nil { - entry.Misc["TypeIpRecurringMonthly"] = o.Type.Ip.Recurring.Monthly.Misc - } - if o.Type.Ip.Recurring.Monthly.At != nil { - nestedType.Ip.Recurring.Monthly.At = o.Type.Ip.Recurring.Monthly.At - } - if o.Type.Ip.Recurring.Monthly.DayOfMonth != nil { - nestedType.Ip.Recurring.Monthly.DayOfMonth = o.Type.Ip.Recurring.Monthly.DayOfMonth - } - } if o.Type.Ip.Recurring.Weekly != nil { nestedType.Ip.Recurring.Weekly = &TypeIpRecurringWeekly{} if o.Type.Ip.Recurring.Weekly.Misc != nil { @@ -1306,25 +1111,55 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { entry.Misc["TypeIpRecurringFiveMinute"] = o.Type.Ip.Recurring.FiveMinute.Misc } } + if o.Type.Ip.Recurring.Hourly != nil { + nestedType.Ip.Recurring.Hourly = &TypeIpRecurringHourly{} + if o.Type.Ip.Recurring.Hourly.Misc != nil { + entry.Misc["TypeIpRecurringHourly"] = o.Type.Ip.Recurring.Hourly.Misc + } + } + if o.Type.Ip.Recurring.Monthly != nil { + nestedType.Ip.Recurring.Monthly = &TypeIpRecurringMonthly{} + if o.Type.Ip.Recurring.Monthly.Misc != nil { + entry.Misc["TypeIpRecurringMonthly"] = o.Type.Ip.Recurring.Monthly.Misc + } + if o.Type.Ip.Recurring.Monthly.At != nil { + nestedType.Ip.Recurring.Monthly.At = o.Type.Ip.Recurring.Monthly.At + } + if o.Type.Ip.Recurring.Monthly.DayOfMonth != nil { + nestedType.Ip.Recurring.Monthly.DayOfMonth = o.Type.Ip.Recurring.Monthly.DayOfMonth + } + } } if o.Type.Ip.Url != nil { nestedType.Ip.Url = o.Type.Ip.Url } + if o.Type.Ip.Auth != nil { + nestedType.Ip.Auth = &TypeIpAuth{} + if o.Type.Ip.Auth.Misc != nil { + entry.Misc["TypeIpAuth"] = o.Type.Ip.Auth.Misc + } + if o.Type.Ip.Auth.Username != nil { + nestedType.Ip.Auth.Username = o.Type.Ip.Auth.Username + } + if o.Type.Ip.Auth.Password != nil { + nestedType.Ip.Auth.Password = o.Type.Ip.Auth.Password + } + } } if o.Type.PredefinedIp != nil { nestedType.PredefinedIp = &TypePredefinedIp{} if o.Type.PredefinedIp.Misc != nil { entry.Misc["TypePredefinedIp"] = o.Type.PredefinedIp.Misc } + if o.Type.PredefinedIp.ExceptionList != nil { + nestedType.PredefinedIp.ExceptionList = util.MemToStr(o.Type.PredefinedIp.ExceptionList) + } if o.Type.PredefinedIp.Url != nil { nestedType.PredefinedIp.Url = o.Type.PredefinedIp.Url } if o.Type.PredefinedIp.Description != nil { nestedType.PredefinedIp.Description = o.Type.PredefinedIp.Description } - if o.Type.PredefinedIp.ExceptionList != nil { - nestedType.PredefinedIp.ExceptionList = util.MemToStr(o.Type.PredefinedIp.ExceptionList) - } } if o.Type.PredefinedUrl != nil { nestedType.PredefinedUrl = &TypePredefinedUrl{} @@ -1351,21 +1186,6 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Type.Url.Recurring.Misc != nil { entry.Misc["TypeUrlRecurring"] = o.Type.Url.Recurring.Misc } - if o.Type.Url.Recurring.Daily != nil { - nestedType.Url.Recurring.Daily = &TypeUrlRecurringDaily{} - if o.Type.Url.Recurring.Daily.Misc != nil { - entry.Misc["TypeUrlRecurringDaily"] = o.Type.Url.Recurring.Daily.Misc - } - if o.Type.Url.Recurring.Daily.At != nil { - nestedType.Url.Recurring.Daily.At = o.Type.Url.Recurring.Daily.At - } - } - if o.Type.Url.Recurring.FiveMinute != nil { - nestedType.Url.Recurring.FiveMinute = &TypeUrlRecurringFiveMinute{} - if o.Type.Url.Recurring.FiveMinute.Misc != nil { - entry.Misc["TypeUrlRecurringFiveMinute"] = o.Type.Url.Recurring.FiveMinute.Misc - } - } if o.Type.Url.Recurring.Hourly != nil { nestedType.Url.Recurring.Hourly = &TypeUrlRecurringHourly{} if o.Type.Url.Recurring.Hourly.Misc != nil { @@ -1377,23 +1197,38 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Type.Url.Recurring.Monthly.Misc != nil { entry.Misc["TypeUrlRecurringMonthly"] = o.Type.Url.Recurring.Monthly.Misc } - if o.Type.Url.Recurring.Monthly.At != nil { - nestedType.Url.Recurring.Monthly.At = o.Type.Url.Recurring.Monthly.At - } if o.Type.Url.Recurring.Monthly.DayOfMonth != nil { nestedType.Url.Recurring.Monthly.DayOfMonth = o.Type.Url.Recurring.Monthly.DayOfMonth } + if o.Type.Url.Recurring.Monthly.At != nil { + nestedType.Url.Recurring.Monthly.At = o.Type.Url.Recurring.Monthly.At + } } if o.Type.Url.Recurring.Weekly != nil { nestedType.Url.Recurring.Weekly = &TypeUrlRecurringWeekly{} if o.Type.Url.Recurring.Weekly.Misc != nil { entry.Misc["TypeUrlRecurringWeekly"] = o.Type.Url.Recurring.Weekly.Misc } + if o.Type.Url.Recurring.Weekly.DayOfWeek != nil { + nestedType.Url.Recurring.Weekly.DayOfWeek = o.Type.Url.Recurring.Weekly.DayOfWeek + } if o.Type.Url.Recurring.Weekly.At != nil { nestedType.Url.Recurring.Weekly.At = o.Type.Url.Recurring.Weekly.At } - if o.Type.Url.Recurring.Weekly.DayOfWeek != nil { - nestedType.Url.Recurring.Weekly.DayOfWeek = o.Type.Url.Recurring.Weekly.DayOfWeek + } + if o.Type.Url.Recurring.Daily != nil { + nestedType.Url.Recurring.Daily = &TypeUrlRecurringDaily{} + if o.Type.Url.Recurring.Daily.Misc != nil { + entry.Misc["TypeUrlRecurringDaily"] = o.Type.Url.Recurring.Daily.Misc + } + if o.Type.Url.Recurring.Daily.At != nil { + nestedType.Url.Recurring.Daily.At = o.Type.Url.Recurring.Daily.At + } + } + if o.Type.Url.Recurring.FiveMinute != nil { + nestedType.Url.Recurring.FiveMinute = &TypeUrlRecurringFiveMinute{} + if o.Type.Url.Recurring.FiveMinute.Misc != nil { + entry.Misc["TypeUrlRecurringFiveMinute"] = o.Type.Url.Recurring.FiveMinute.Misc } } } @@ -1422,6 +1257,171 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { nestedType.Url.ExceptionList = util.MemToStr(o.Type.Url.ExceptionList) } } + if o.Type.Domain != nil { + nestedType.Domain = &TypeDomain{} + if o.Type.Domain.Misc != nil { + entry.Misc["TypeDomain"] = o.Type.Domain.Misc + } + if o.Type.Domain.Url != nil { + nestedType.Domain.Url = o.Type.Domain.Url + } + if o.Type.Domain.Auth != nil { + nestedType.Domain.Auth = &TypeDomainAuth{} + if o.Type.Domain.Auth.Misc != nil { + entry.Misc["TypeDomainAuth"] = o.Type.Domain.Auth.Misc + } + if o.Type.Domain.Auth.Password != nil { + nestedType.Domain.Auth.Password = o.Type.Domain.Auth.Password + } + if o.Type.Domain.Auth.Username != nil { + nestedType.Domain.Auth.Username = o.Type.Domain.Auth.Username + } + } + if o.Type.Domain.CertificateProfile != nil { + nestedType.Domain.CertificateProfile = o.Type.Domain.CertificateProfile + } + if o.Type.Domain.Description != nil { + nestedType.Domain.Description = o.Type.Domain.Description + } + if o.Type.Domain.ExceptionList != nil { + nestedType.Domain.ExceptionList = util.MemToStr(o.Type.Domain.ExceptionList) + } + if o.Type.Domain.ExpandDomain != nil { + nestedType.Domain.ExpandDomain = util.AsBool(o.Type.Domain.ExpandDomain, nil) + } + if o.Type.Domain.Recurring != nil { + nestedType.Domain.Recurring = &TypeDomainRecurring{} + if o.Type.Domain.Recurring.Misc != nil { + entry.Misc["TypeDomainRecurring"] = o.Type.Domain.Recurring.Misc + } + if o.Type.Domain.Recurring.FiveMinute != nil { + nestedType.Domain.Recurring.FiveMinute = &TypeDomainRecurringFiveMinute{} + if o.Type.Domain.Recurring.FiveMinute.Misc != nil { + entry.Misc["TypeDomainRecurringFiveMinute"] = o.Type.Domain.Recurring.FiveMinute.Misc + } + } + if o.Type.Domain.Recurring.Hourly != nil { + nestedType.Domain.Recurring.Hourly = &TypeDomainRecurringHourly{} + if o.Type.Domain.Recurring.Hourly.Misc != nil { + entry.Misc["TypeDomainRecurringHourly"] = o.Type.Domain.Recurring.Hourly.Misc + } + } + if o.Type.Domain.Recurring.Monthly != nil { + nestedType.Domain.Recurring.Monthly = &TypeDomainRecurringMonthly{} + if o.Type.Domain.Recurring.Monthly.Misc != nil { + entry.Misc["TypeDomainRecurringMonthly"] = o.Type.Domain.Recurring.Monthly.Misc + } + if o.Type.Domain.Recurring.Monthly.At != nil { + nestedType.Domain.Recurring.Monthly.At = o.Type.Domain.Recurring.Monthly.At + } + if o.Type.Domain.Recurring.Monthly.DayOfMonth != nil { + nestedType.Domain.Recurring.Monthly.DayOfMonth = o.Type.Domain.Recurring.Monthly.DayOfMonth + } + } + if o.Type.Domain.Recurring.Weekly != nil { + nestedType.Domain.Recurring.Weekly = &TypeDomainRecurringWeekly{} + if o.Type.Domain.Recurring.Weekly.Misc != nil { + entry.Misc["TypeDomainRecurringWeekly"] = o.Type.Domain.Recurring.Weekly.Misc + } + if o.Type.Domain.Recurring.Weekly.At != nil { + nestedType.Domain.Recurring.Weekly.At = o.Type.Domain.Recurring.Weekly.At + } + if o.Type.Domain.Recurring.Weekly.DayOfWeek != nil { + nestedType.Domain.Recurring.Weekly.DayOfWeek = o.Type.Domain.Recurring.Weekly.DayOfWeek + } + } + if o.Type.Domain.Recurring.Daily != nil { + nestedType.Domain.Recurring.Daily = &TypeDomainRecurringDaily{} + if o.Type.Domain.Recurring.Daily.Misc != nil { + entry.Misc["TypeDomainRecurringDaily"] = o.Type.Domain.Recurring.Daily.Misc + } + if o.Type.Domain.Recurring.Daily.At != nil { + nestedType.Domain.Recurring.Daily.At = o.Type.Domain.Recurring.Daily.At + } + } + } + } + if o.Type.Imei != nil { + nestedType.Imei = &TypeImei{} + if o.Type.Imei.Misc != nil { + entry.Misc["TypeImei"] = o.Type.Imei.Misc + } + if o.Type.Imei.Auth != nil { + nestedType.Imei.Auth = &TypeImeiAuth{} + if o.Type.Imei.Auth.Misc != nil { + entry.Misc["TypeImeiAuth"] = o.Type.Imei.Auth.Misc + } + if o.Type.Imei.Auth.Password != nil { + nestedType.Imei.Auth.Password = o.Type.Imei.Auth.Password + } + if o.Type.Imei.Auth.Username != nil { + nestedType.Imei.Auth.Username = o.Type.Imei.Auth.Username + } + } + if o.Type.Imei.CertificateProfile != nil { + nestedType.Imei.CertificateProfile = o.Type.Imei.CertificateProfile + } + if o.Type.Imei.Description != nil { + nestedType.Imei.Description = o.Type.Imei.Description + } + if o.Type.Imei.ExceptionList != nil { + nestedType.Imei.ExceptionList = util.MemToStr(o.Type.Imei.ExceptionList) + } + if o.Type.Imei.Recurring != nil { + nestedType.Imei.Recurring = &TypeImeiRecurring{} + if o.Type.Imei.Recurring.Misc != nil { + entry.Misc["TypeImeiRecurring"] = o.Type.Imei.Recurring.Misc + } + if o.Type.Imei.Recurring.Monthly != nil { + nestedType.Imei.Recurring.Monthly = &TypeImeiRecurringMonthly{} + if o.Type.Imei.Recurring.Monthly.Misc != nil { + entry.Misc["TypeImeiRecurringMonthly"] = o.Type.Imei.Recurring.Monthly.Misc + } + if o.Type.Imei.Recurring.Monthly.At != nil { + nestedType.Imei.Recurring.Monthly.At = o.Type.Imei.Recurring.Monthly.At + } + if o.Type.Imei.Recurring.Monthly.DayOfMonth != nil { + nestedType.Imei.Recurring.Monthly.DayOfMonth = o.Type.Imei.Recurring.Monthly.DayOfMonth + } + } + if o.Type.Imei.Recurring.Weekly != nil { + nestedType.Imei.Recurring.Weekly = &TypeImeiRecurringWeekly{} + if o.Type.Imei.Recurring.Weekly.Misc != nil { + entry.Misc["TypeImeiRecurringWeekly"] = o.Type.Imei.Recurring.Weekly.Misc + } + if o.Type.Imei.Recurring.Weekly.At != nil { + nestedType.Imei.Recurring.Weekly.At = o.Type.Imei.Recurring.Weekly.At + } + if o.Type.Imei.Recurring.Weekly.DayOfWeek != nil { + nestedType.Imei.Recurring.Weekly.DayOfWeek = o.Type.Imei.Recurring.Weekly.DayOfWeek + } + } + if o.Type.Imei.Recurring.Daily != nil { + nestedType.Imei.Recurring.Daily = &TypeImeiRecurringDaily{} + if o.Type.Imei.Recurring.Daily.Misc != nil { + entry.Misc["TypeImeiRecurringDaily"] = o.Type.Imei.Recurring.Daily.Misc + } + if o.Type.Imei.Recurring.Daily.At != nil { + nestedType.Imei.Recurring.Daily.At = o.Type.Imei.Recurring.Daily.At + } + } + if o.Type.Imei.Recurring.FiveMinute != nil { + nestedType.Imei.Recurring.FiveMinute = &TypeImeiRecurringFiveMinute{} + if o.Type.Imei.Recurring.FiveMinute.Misc != nil { + entry.Misc["TypeImeiRecurringFiveMinute"] = o.Type.Imei.Recurring.FiveMinute.Misc + } + } + if o.Type.Imei.Recurring.Hourly != nil { + nestedType.Imei.Recurring.Hourly = &TypeImeiRecurringHourly{} + if o.Type.Imei.Recurring.Hourly.Misc != nil { + entry.Misc["TypeImeiRecurringHourly"] = o.Type.Imei.Recurring.Hourly.Misc + } + } + } + if o.Type.Imei.Url != nil { + nestedType.Imei.Url = o.Type.Imei.Url + } + } } entry.Type = nestedType @@ -1451,79 +1451,7 @@ func SpecMatches(a, b *Entry) bool { return true } -func matchTypePredefinedUrl(a *TypePredefinedUrl, b *TypePredefinedUrl) bool { - if a == nil && b != nil || a != nil && b == nil { - return false - } else if a == nil && b == nil { - return true - } - if !util.StringsMatch(a.Description, b.Description) { - return false - } - if !util.OrderedListsMatch(a.ExceptionList, b.ExceptionList) { - return false - } - if !util.StringsMatch(a.Url, b.Url) { - return false - } - return true -} -func matchTypeUrlAuth(a *TypeUrlAuth, b *TypeUrlAuth) bool { - if a == nil && b != nil || a != nil && b == nil { - return false - } else if a == nil && b == nil { - return true - } - if !util.StringsMatch(a.Password, b.Password) { - return false - } - if !util.StringsMatch(a.Username, b.Username) { - return false - } - return true -} -func matchTypeUrlRecurringDaily(a *TypeUrlRecurringDaily, b *TypeUrlRecurringDaily) bool { - if a == nil && b != nil || a != nil && b == nil { - return false - } else if a == nil && b == nil { - return true - } - if !util.StringsMatch(a.At, b.At) { - return false - } - return true -} -func matchTypeUrlRecurringFiveMinute(a *TypeUrlRecurringFiveMinute, b *TypeUrlRecurringFiveMinute) bool { - if a == nil && b != nil || a != nil && b == nil { - return false - } else if a == nil && b == nil { - return true - } - return true -} -func matchTypeUrlRecurringHourly(a *TypeUrlRecurringHourly, b *TypeUrlRecurringHourly) bool { - if a == nil && b != nil || a != nil && b == nil { - return false - } else if a == nil && b == nil { - return true - } - return true -} -func matchTypeUrlRecurringMonthly(a *TypeUrlRecurringMonthly, b *TypeUrlRecurringMonthly) bool { - if a == nil && b != nil || a != nil && b == nil { - return false - } else if a == nil && b == nil { - return true - } - if !util.StringsMatch(a.At, b.At) { - return false - } - if !util.Ints64Match(a.DayOfMonth, b.DayOfMonth) { - return false - } - return true -} -func matchTypeUrlRecurringWeekly(a *TypeUrlRecurringWeekly, b *TypeUrlRecurringWeekly) bool { +func matchTypeDomainRecurringDaily(a *TypeDomainRecurringDaily, b *TypeDomainRecurringDaily) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -1532,58 +1460,22 @@ func matchTypeUrlRecurringWeekly(a *TypeUrlRecurringWeekly, b *TypeUrlRecurringW if !util.StringsMatch(a.At, b.At) { return false } - if !util.StringsMatch(a.DayOfWeek, b.DayOfWeek) { - return false - } return true } -func matchTypeUrlRecurring(a *TypeUrlRecurring, b *TypeUrlRecurring) bool { +func matchTypeDomainRecurringFiveMinute(a *TypeDomainRecurringFiveMinute, b *TypeDomainRecurringFiveMinute) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchTypeUrlRecurringFiveMinute(a.FiveMinute, b.FiveMinute) { - return false - } - if !matchTypeUrlRecurringHourly(a.Hourly, b.Hourly) { - return false - } - if !matchTypeUrlRecurringMonthly(a.Monthly, b.Monthly) { - return false - } - if !matchTypeUrlRecurringWeekly(a.Weekly, b.Weekly) { - return false - } - if !matchTypeUrlRecurringDaily(a.Daily, b.Daily) { - return false - } return true } -func matchTypeUrl(a *TypeUrl, b *TypeUrl) bool { +func matchTypeDomainRecurringHourly(a *TypeDomainRecurringHourly, b *TypeDomainRecurringHourly) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Url, b.Url) { - return false - } - if !matchTypeUrlAuth(a.Auth, b.Auth) { - return false - } - if !util.StringsMatch(a.CertificateProfile, b.CertificateProfile) { - return false - } - if !util.StringsMatch(a.Description, b.Description) { - return false - } - if !util.OrderedListsMatch(a.ExceptionList, b.ExceptionList) { - return false - } - if !matchTypeUrlRecurring(a.Recurring, b.Recurring) { - return false - } return true } func matchTypeDomainRecurringMonthly(a *TypeDomainRecurringMonthly, b *TypeDomainRecurringMonthly) bool { @@ -1600,45 +1492,18 @@ func matchTypeDomainRecurringMonthly(a *TypeDomainRecurringMonthly, b *TypeDomai } return true } -func matchTypeDomainRecurringWeekly(a *TypeDomainRecurringWeekly, b *TypeDomainRecurringWeekly) bool { - if a == nil && b != nil || a != nil && b == nil { - return false - } else if a == nil && b == nil { - return true - } - if !util.StringsMatch(a.DayOfWeek, b.DayOfWeek) { - return false - } - if !util.StringsMatch(a.At, b.At) { - return false - } - return true -} -func matchTypeDomainRecurringDaily(a *TypeDomainRecurringDaily, b *TypeDomainRecurringDaily) bool { - if a == nil && b != nil || a != nil && b == nil { - return false - } else if a == nil && b == nil { - return true - } - if !util.StringsMatch(a.At, b.At) { - return false - } - return true -} -func matchTypeDomainRecurringFiveMinute(a *TypeDomainRecurringFiveMinute, b *TypeDomainRecurringFiveMinute) bool { - if a == nil && b != nil || a != nil && b == nil { - return false - } else if a == nil && b == nil { - return true - } - return true -} -func matchTypeDomainRecurringHourly(a *TypeDomainRecurringHourly, b *TypeDomainRecurringHourly) bool { +func matchTypeDomainRecurringWeekly(a *TypeDomainRecurringWeekly, b *TypeDomainRecurringWeekly) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } + if !util.StringsMatch(a.At, b.At) { + return false + } + if !util.StringsMatch(a.DayOfWeek, b.DayOfWeek) { + return false + } return true } func matchTypeDomainRecurring(a *TypeDomainRecurring, b *TypeDomainRecurring) bool { @@ -1647,6 +1512,9 @@ func matchTypeDomainRecurring(a *TypeDomainRecurring, b *TypeDomainRecurring) bo } else if a == nil && b == nil { return true } + if !matchTypeDomainRecurringHourly(a.Hourly, b.Hourly) { + return false + } if !matchTypeDomainRecurringMonthly(a.Monthly, b.Monthly) { return false } @@ -1659,9 +1527,6 @@ func matchTypeDomainRecurring(a *TypeDomainRecurring, b *TypeDomainRecurring) bo if !matchTypeDomainRecurringFiveMinute(a.FiveMinute, b.FiveMinute) { return false } - if !matchTypeDomainRecurringHourly(a.Hourly, b.Hourly) { - return false - } return true } func matchTypeDomainAuth(a *TypeDomainAuth, b *TypeDomainAuth) bool { @@ -1684,6 +1549,12 @@ func matchTypeDomain(a *TypeDomain, b *TypeDomain) bool { } else if a == nil && b == nil { return true } + if !util.StringsMatch(a.Description, b.Description) { + return false + } + if !util.OrderedListsMatch(a.ExceptionList, b.ExceptionList) { + return false + } if !util.BoolsMatch(a.ExpandDomain, b.ExpandDomain) { return false } @@ -1699,12 +1570,6 @@ func matchTypeDomain(a *TypeDomain, b *TypeDomain) bool { if !util.StringsMatch(a.CertificateProfile, b.CertificateProfile) { return false } - if !util.StringsMatch(a.Description, b.Description) { - return false - } - if !util.OrderedListsMatch(a.ExceptionList, b.ExceptionList) { - return false - } return true } func matchTypeImeiAuth(a *TypeImeiAuth, b *TypeImeiAuth) bool { @@ -1713,10 +1578,10 @@ func matchTypeImeiAuth(a *TypeImeiAuth, b *TypeImeiAuth) bool { } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Username, b.Username) { + if !util.StringsMatch(a.Password, b.Password) { return false } - if !util.StringsMatch(a.Password, b.Password) { + if !util.StringsMatch(a.Username, b.Username) { return false } return true @@ -1782,19 +1647,19 @@ func matchTypeImeiRecurring(a *TypeImeiRecurring, b *TypeImeiRecurring) bool { } else if a == nil && b == nil { return true } - if !matchTypeImeiRecurringHourly(a.Hourly, b.Hourly) { + if !matchTypeImeiRecurringDaily(a.Daily, b.Daily) { return false } - if !matchTypeImeiRecurringMonthly(a.Monthly, b.Monthly) { + if !matchTypeImeiRecurringFiveMinute(a.FiveMinute, b.FiveMinute) { return false } - if !matchTypeImeiRecurringWeekly(a.Weekly, b.Weekly) { + if !matchTypeImeiRecurringHourly(a.Hourly, b.Hourly) { return false } - if !matchTypeImeiRecurringDaily(a.Daily, b.Daily) { + if !matchTypeImeiRecurringMonthly(a.Monthly, b.Monthly) { return false } - if !matchTypeImeiRecurringFiveMinute(a.FiveMinute, b.FiveMinute) { + if !matchTypeImeiRecurringWeekly(a.Weekly, b.Weekly) { return false } return true @@ -1825,20 +1690,6 @@ func matchTypeImei(a *TypeImei, b *TypeImei) bool { } return true } -func matchTypeImsiAuth(a *TypeImsiAuth, b *TypeImsiAuth) bool { - if a == nil && b != nil || a != nil && b == nil { - return false - } else if a == nil && b == nil { - return true - } - if !util.StringsMatch(a.Password, b.Password) { - return false - } - if !util.StringsMatch(a.Username, b.Username) { - return false - } - return true -} func matchTypeImsiRecurringDaily(a *TypeImsiRecurringDaily, b *TypeImsiRecurringDaily) bool { if a == nil && b != nil || a != nil && b == nil { return false @@ -1917,12 +1768,29 @@ func matchTypeImsiRecurring(a *TypeImsiRecurring, b *TypeImsiRecurring) bool { } return true } +func matchTypeImsiAuth(a *TypeImsiAuth, b *TypeImsiAuth) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + if !util.StringsMatch(a.Password, b.Password) { + return false + } + if !util.StringsMatch(a.Username, b.Username) { + return false + } + return true +} func matchTypeImsi(a *TypeImsi, b *TypeImsi) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } + if !util.StringsMatch(a.Url, b.Url) { + return false + } if !matchTypeImsiAuth(a.Auth, b.Auth) { return false } @@ -1938,22 +1806,24 @@ func matchTypeImsi(a *TypeImsi, b *TypeImsi) bool { if !matchTypeImsiRecurring(a.Recurring, b.Recurring) { return false } - if !util.StringsMatch(a.Url, b.Url) { - return false - } return true } -func matchTypeIpAuth(a *TypeIpAuth, b *TypeIpAuth) bool { +func matchTypeIpRecurringDaily(a *TypeIpRecurringDaily, b *TypeIpRecurringDaily) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.Username, b.Username) { + if !util.StringsMatch(a.At, b.At) { return false } - if !util.StringsMatch(a.Password, b.Password) { + return true +} +func matchTypeIpRecurringFiveMinute(a *TypeIpRecurringFiveMinute, b *TypeIpRecurringFiveMinute) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } return true } @@ -1993,67 +1863,96 @@ func matchTypeIpRecurringWeekly(a *TypeIpRecurringWeekly, b *TypeIpRecurringWeek } return true } -func matchTypeIpRecurringDaily(a *TypeIpRecurringDaily, b *TypeIpRecurringDaily) bool { +func matchTypeIpRecurring(a *TypeIpRecurring, b *TypeIpRecurring) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.At, b.At) { + if !matchTypeIpRecurringDaily(a.Daily, b.Daily) { + return false + } + if !matchTypeIpRecurringFiveMinute(a.FiveMinute, b.FiveMinute) { + return false + } + if !matchTypeIpRecurringHourly(a.Hourly, b.Hourly) { + return false + } + if !matchTypeIpRecurringMonthly(a.Monthly, b.Monthly) { + return false + } + if !matchTypeIpRecurringWeekly(a.Weekly, b.Weekly) { return false } return true } -func matchTypeIpRecurringFiveMinute(a *TypeIpRecurringFiveMinute, b *TypeIpRecurringFiveMinute) bool { +func matchTypeIpAuth(a *TypeIpAuth, b *TypeIpAuth) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } + if !util.StringsMatch(a.Password, b.Password) { + return false + } + if !util.StringsMatch(a.Username, b.Username) { + return false + } return true } -func matchTypeIpRecurring(a *TypeIpRecurring, b *TypeIpRecurring) bool { +func matchTypeIp(a *TypeIp, b *TypeIp) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchTypeIpRecurringWeekly(a.Weekly, b.Weekly) { + if !matchTypeIpAuth(a.Auth, b.Auth) { return false } - if !matchTypeIpRecurringDaily(a.Daily, b.Daily) { + if !util.StringsMatch(a.CertificateProfile, b.CertificateProfile) { return false } - if !matchTypeIpRecurringFiveMinute(a.FiveMinute, b.FiveMinute) { + if !util.StringsMatch(a.Description, b.Description) { return false } - if !matchTypeIpRecurringHourly(a.Hourly, b.Hourly) { + if !util.OrderedListsMatch(a.ExceptionList, b.ExceptionList) { return false } - if !matchTypeIpRecurringMonthly(a.Monthly, b.Monthly) { + if !matchTypeIpRecurring(a.Recurring, b.Recurring) { + return false + } + if !util.StringsMatch(a.Url, b.Url) { return false } return true } -func matchTypeIp(a *TypeIp, b *TypeIp) bool { +func matchTypePredefinedIp(a *TypePredefinedIp, b *TypePredefinedIp) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchTypeIpAuth(a.Auth, b.Auth) { + if !util.OrderedListsMatch(a.ExceptionList, b.ExceptionList) { return false } - if !util.StringsMatch(a.CertificateProfile, b.CertificateProfile) { + if !util.StringsMatch(a.Url, b.Url) { return false } if !util.StringsMatch(a.Description, b.Description) { return false } - if !util.OrderedListsMatch(a.ExceptionList, b.ExceptionList) { + return true +} +func matchTypePredefinedUrl(a *TypePredefinedUrl, b *TypePredefinedUrl) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + if !util.StringsMatch(a.Description, b.Description) { return false } - if !matchTypeIpRecurring(a.Recurring, b.Recurring) { + if !util.OrderedListsMatch(a.ExceptionList, b.ExceptionList) { return false } if !util.StringsMatch(a.Url, b.Url) { @@ -2061,7 +1960,99 @@ func matchTypeIp(a *TypeIp, b *TypeIp) bool { } return true } -func matchTypePredefinedIp(a *TypePredefinedIp, b *TypePredefinedIp) bool { +func matchTypeUrlRecurringDaily(a *TypeUrlRecurringDaily, b *TypeUrlRecurringDaily) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + if !util.StringsMatch(a.At, b.At) { + return false + } + return true +} +func matchTypeUrlRecurringFiveMinute(a *TypeUrlRecurringFiveMinute, b *TypeUrlRecurringFiveMinute) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + return true +} +func matchTypeUrlRecurringHourly(a *TypeUrlRecurringHourly, b *TypeUrlRecurringHourly) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + return true +} +func matchTypeUrlRecurringMonthly(a *TypeUrlRecurringMonthly, b *TypeUrlRecurringMonthly) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + if !util.StringsMatch(a.At, b.At) { + return false + } + if !util.Ints64Match(a.DayOfMonth, b.DayOfMonth) { + return false + } + return true +} +func matchTypeUrlRecurringWeekly(a *TypeUrlRecurringWeekly, b *TypeUrlRecurringWeekly) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + if !util.StringsMatch(a.At, b.At) { + return false + } + if !util.StringsMatch(a.DayOfWeek, b.DayOfWeek) { + return false + } + return true +} +func matchTypeUrlRecurring(a *TypeUrlRecurring, b *TypeUrlRecurring) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + if !matchTypeUrlRecurringDaily(a.Daily, b.Daily) { + return false + } + if !matchTypeUrlRecurringFiveMinute(a.FiveMinute, b.FiveMinute) { + return false + } + if !matchTypeUrlRecurringHourly(a.Hourly, b.Hourly) { + return false + } + if !matchTypeUrlRecurringMonthly(a.Monthly, b.Monthly) { + return false + } + if !matchTypeUrlRecurringWeekly(a.Weekly, b.Weekly) { + return false + } + return true +} +func matchTypeUrlAuth(a *TypeUrlAuth, b *TypeUrlAuth) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + if !util.StringsMatch(a.Password, b.Password) { + return false + } + if !util.StringsMatch(a.Username, b.Username) { + return false + } + return true +} +func matchTypeUrl(a *TypeUrl, b *TypeUrl) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -2073,9 +2064,18 @@ func matchTypePredefinedIp(a *TypePredefinedIp, b *TypePredefinedIp) bool { if !util.OrderedListsMatch(a.ExceptionList, b.ExceptionList) { return false } + if !matchTypeUrlRecurring(a.Recurring, b.Recurring) { + return false + } if !util.StringsMatch(a.Url, b.Url) { return false } + if !matchTypeUrlAuth(a.Auth, b.Auth) { + return false + } + if !util.StringsMatch(a.CertificateProfile, b.CertificateProfile) { + return false + } return true } func matchType(a *Type, b *Type) bool { @@ -2084,6 +2084,12 @@ func matchType(a *Type, b *Type) bool { } else if a == nil && b == nil { return true } + if !matchTypePredefinedUrl(a.PredefinedUrl, b.PredefinedUrl) { + return false + } + if !matchTypeUrl(a.Url, b.Url) { + return false + } if !matchTypeDomain(a.Domain, b.Domain) { return false } @@ -2099,12 +2105,6 @@ func matchType(a *Type, b *Type) bool { if !matchTypePredefinedIp(a.PredefinedIp, b.PredefinedIp) { return false } - if !matchTypePredefinedUrl(a.PredefinedUrl, b.PredefinedUrl) { - return false - } - if !matchTypeUrl(a.Url, b.Url) { - return false - } return true } diff --git a/objects/profiles/antivirus/entry.go b/objects/profiles/antivirus/entry.go index 004b30f..71514e8 100644 --- a/objects/profiles/antivirus/entry.go +++ b/objects/profiles/antivirus/entry.go @@ -243,15 +243,15 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["MlavException"]; ok { nestedMlavException.Misc = o.Misc["MlavException"] } - if oMlavException.Filename != nil { - nestedMlavException.Filename = oMlavException.Filename - } if oMlavException.Description != nil { nestedMlavException.Description = oMlavException.Description } if oMlavException.Name != "" { nestedMlavException.Name = oMlavException.Name } + if oMlavException.Filename != nil { + nestedMlavException.Filename = oMlavException.Filename + } nestedMlavExceptionCol = append(nestedMlavExceptionCol, nestedMlavException) } entry.MlavException = nestedMlavExceptionCol @@ -315,6 +315,9 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oDecoder.Misc != nil { entry.Misc["Decoder"] = oDecoder.Misc } + if oDecoder.Name != "" { + nestedDecoder.Name = oDecoder.Name + } if oDecoder.Action != nil { nestedDecoder.Action = oDecoder.Action } @@ -324,9 +327,6 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oDecoder.MlavAction != nil { nestedDecoder.MlavAction = oDecoder.MlavAction } - if oDecoder.Name != "" { - nestedDecoder.Name = oDecoder.Name - } nestedDecoderCol = append(nestedDecoderCol, nestedDecoder) } entry.Decoder = nestedDecoderCol @@ -361,15 +361,15 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oMlavException.Misc != nil { entry.Misc["MlavException"] = oMlavException.Misc } + if oMlavException.Name != "" { + nestedMlavException.Name = oMlavException.Name + } if oMlavException.Filename != nil { nestedMlavException.Filename = oMlavException.Filename } if oMlavException.Description != nil { nestedMlavException.Description = oMlavException.Description } - if oMlavException.Name != "" { - nestedMlavException.Name = oMlavException.Name - } nestedMlavExceptionCol = append(nestedMlavExceptionCol, nestedMlavException) } entry.MlavException = nestedMlavExceptionCol @@ -449,17 +449,17 @@ func matchApplication(a []Application, b []Application) bool { } for _, a := range a { for _, b := range b { - if !util.StringsEqual(a.Name, b.Name) { + if !util.StringsMatch(a.Action, b.Action) { return false } - if !util.StringsMatch(a.Action, b.Action) { + if !util.StringsEqual(a.Name, b.Name) { return false } } } return true } -func matchMlavEngineFilebasedEnabled(a []MlavEngineFilebasedEnabled, b []MlavEngineFilebasedEnabled) bool { +func matchDecoder(a []Decoder, b []Decoder) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -467,7 +467,13 @@ func matchMlavEngineFilebasedEnabled(a []MlavEngineFilebasedEnabled, b []MlavEng } for _, a := range a { for _, b := range b { - if !util.StringsMatch(a.MlavPolicyAction, b.MlavPolicyAction) { + if !util.StringsMatch(a.Action, b.Action) { + return false + } + if !util.StringsMatch(a.WildfireAction, b.WildfireAction) { + return false + } + if !util.StringsMatch(a.MlavAction, b.MlavAction) { return false } if !util.StringsEqual(a.Name, b.Name) { @@ -477,7 +483,7 @@ func matchMlavEngineFilebasedEnabled(a []MlavEngineFilebasedEnabled, b []MlavEng } return true } -func matchDecoder(a []Decoder, b []Decoder) bool { +func matchMlavEngineFilebasedEnabled(a []MlavEngineFilebasedEnabled, b []MlavEngineFilebasedEnabled) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -485,18 +491,12 @@ func matchDecoder(a []Decoder, b []Decoder) bool { } for _, a := range a { for _, b := range b { - if !util.StringsMatch(a.WildfireAction, b.WildfireAction) { - return false - } - if !util.StringsMatch(a.MlavAction, b.MlavAction) { + if !util.StringsMatch(a.MlavPolicyAction, b.MlavPolicyAction) { return false } if !util.StringsEqual(a.Name, b.Name) { return false } - if !util.StringsMatch(a.Action, b.Action) { - return false - } } } return true diff --git a/objects/profiles/fileblocking/entry.go b/objects/profiles/fileblocking/entry.go index 53985e6..07f5b33 100644 --- a/objects/profiles/fileblocking/entry.go +++ b/objects/profiles/fileblocking/entry.go @@ -138,9 +138,6 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oRules.Misc != nil { entry.Misc["Rules"] = oRules.Misc } - if oRules.Name != "" { - nestedRules.Name = oRules.Name - } if oRules.Application != nil { nestedRules.Application = util.MemToStr(oRules.Application) } @@ -153,6 +150,9 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oRules.Action != nil { nestedRules.Action = oRules.Action } + if oRules.Name != "" { + nestedRules.Name = oRules.Name + } nestedRulesCol = append(nestedRulesCol, nestedRules) } entry.Rules = nestedRulesCol @@ -195,19 +195,19 @@ func matchRules(a []Rules, b []Rules) bool { } for _, a := range a { for _, b := range b { - if !util.OrderedListsMatch(a.Application, b.Application) { + if !util.StringsMatch(a.Direction, b.Direction) { return false } - if !util.OrderedListsMatch(a.FileType, b.FileType) { + if !util.StringsMatch(a.Action, b.Action) { return false } - if !util.StringsMatch(a.Direction, b.Direction) { + if !util.StringsEqual(a.Name, b.Name) { return false } - if !util.StringsMatch(a.Action, b.Action) { + if !util.OrderedListsMatch(a.Application, b.Application) { return false } - if !util.StringsEqual(a.Name, b.Name) { + if !util.OrderedListsMatch(a.FileType, b.FileType) { return false } } diff --git a/objects/profiles/ikecrypto/entry.go b/objects/profiles/ikecrypto/entry.go index 47415b2..da8b938 100644 --- a/objects/profiles/ikecrypto/entry.go +++ b/objects/profiles/ikecrypto/entry.go @@ -146,9 +146,6 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Lifetime.Misc != nil { entry.Misc["Lifetime"] = o.Lifetime.Misc } - if o.Lifetime.Days != nil { - nestedLifetime.Days = o.Lifetime.Days - } if o.Lifetime.Hours != nil { nestedLifetime.Hours = o.Lifetime.Hours } @@ -158,6 +155,9 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Lifetime.Seconds != nil { nestedLifetime.Seconds = o.Lifetime.Seconds } + if o.Lifetime.Days != nil { + nestedLifetime.Days = o.Lifetime.Days + } } entry.Lifetime = nestedLifetime diff --git a/objects/profiles/ipseccrypto/entry.go b/objects/profiles/ipseccrypto/entry.go index af786f7..e82cc9f 100644 --- a/objects/profiles/ipseccrypto/entry.go +++ b/objects/profiles/ipseccrypto/entry.go @@ -129,18 +129,18 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["Lifesize"]; ok { nestedLifesize.Misc = o.Misc["Lifesize"] } - if o.Lifesize.Mb != nil { - nestedLifesize.Mb = o.Lifesize.Mb - } - if o.Lifesize.Tb != nil { - nestedLifesize.Tb = o.Lifesize.Tb - } if o.Lifesize.Gb != nil { nestedLifesize.Gb = o.Lifesize.Gb } if o.Lifesize.Kb != nil { nestedLifesize.Kb = o.Lifesize.Kb } + if o.Lifesize.Mb != nil { + nestedLifesize.Mb = o.Lifesize.Mb + } + if o.Lifesize.Tb != nil { + nestedLifesize.Tb = o.Lifesize.Tb + } } entry.Lifesize = nestedLifesize @@ -150,18 +150,18 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["Lifetime"]; ok { nestedLifetime.Misc = o.Misc["Lifetime"] } - if o.Lifetime.Days != nil { - nestedLifetime.Days = o.Lifetime.Days - } - if o.Lifetime.Hours != nil { - nestedLifetime.Hours = o.Lifetime.Hours - } if o.Lifetime.Minutes != nil { nestedLifetime.Minutes = o.Lifetime.Minutes } if o.Lifetime.Seconds != nil { nestedLifetime.Seconds = o.Lifetime.Seconds } + if o.Lifetime.Days != nil { + nestedLifetime.Days = o.Lifetime.Days + } + if o.Lifetime.Hours != nil { + nestedLifetime.Hours = o.Lifetime.Hours + } } entry.Lifetime = nestedLifetime @@ -232,18 +232,18 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Lifetime.Misc != nil { entry.Misc["Lifetime"] = o.Lifetime.Misc } - if o.Lifetime.Days != nil { - nestedLifetime.Days = o.Lifetime.Days - } - if o.Lifetime.Hours != nil { - nestedLifetime.Hours = o.Lifetime.Hours - } if o.Lifetime.Minutes != nil { nestedLifetime.Minutes = o.Lifetime.Minutes } if o.Lifetime.Seconds != nil { nestedLifetime.Seconds = o.Lifetime.Seconds } + if o.Lifetime.Days != nil { + nestedLifetime.Days = o.Lifetime.Days + } + if o.Lifetime.Hours != nil { + nestedLifetime.Hours = o.Lifetime.Hours + } } entry.Lifetime = nestedLifetime @@ -309,47 +309,47 @@ func SpecMatches(a, b *Entry) bool { return true } -func matchLifesize(a *Lifesize, b *Lifesize) bool { +func matchLifetime(a *Lifetime, b *Lifetime) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.Ints64Match(a.Mb, b.Mb) { + if !util.Ints64Match(a.Days, b.Days) { return false } - if !util.Ints64Match(a.Tb, b.Tb) { + if !util.Ints64Match(a.Hours, b.Hours) { return false } - if !util.Ints64Match(a.Gb, b.Gb) { + if !util.Ints64Match(a.Minutes, b.Minutes) { return false } - if !util.Ints64Match(a.Kb, b.Kb) { + if !util.Ints64Match(a.Seconds, b.Seconds) { return false } return true } -func matchLifetime(a *Lifetime, b *Lifetime) bool { +func matchLifesize(a *Lifesize, b *Lifesize) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.Ints64Match(a.Days, b.Days) { + if !util.Ints64Match(a.Gb, b.Gb) { return false } - if !util.Ints64Match(a.Hours, b.Hours) { + if !util.Ints64Match(a.Kb, b.Kb) { return false } - if !util.Ints64Match(a.Minutes, b.Minutes) { + if !util.Ints64Match(a.Mb, b.Mb) { return false } - if !util.Ints64Match(a.Seconds, b.Seconds) { + if !util.Ints64Match(a.Tb, b.Tb) { return false } return true } -func matchAh(a *Ah, b *Ah) bool { +func matchEsp(a *Esp, b *Esp) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -358,9 +358,12 @@ func matchAh(a *Ah, b *Ah) bool { if !util.OrderedListsMatch(a.Authentication, b.Authentication) { return false } + if !util.OrderedListsMatch(a.Encryption, b.Encryption) { + return false + } return true } -func matchEsp(a *Esp, b *Esp) bool { +func matchAh(a *Ah, b *Ah) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -369,9 +372,6 @@ func matchEsp(a *Esp, b *Esp) bool { if !util.OrderedListsMatch(a.Authentication, b.Authentication) { return false } - if !util.OrderedListsMatch(a.Encryption, b.Encryption) { - return false - } return true } diff --git a/objects/profiles/logforwarding/entry.go b/objects/profiles/logforwarding/entry.go index deaf6bc..e9e123d 100644 --- a/objects/profiles/logforwarding/entry.go +++ b/objects/profiles/logforwarding/entry.go @@ -189,6 +189,30 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["MatchList"]; ok { nestedMatchList.Misc = o.Misc["MatchList"] } + if oMatchList.LogType != nil { + nestedMatchList.LogType = oMatchList.LogType + } + if oMatchList.Filter != nil { + nestedMatchList.Filter = oMatchList.Filter + } + if oMatchList.Quarantine != nil { + nestedMatchList.Quarantine = util.YesNo(oMatchList.Quarantine, nil) + } + if oMatchList.SendHttp != nil { + nestedMatchList.SendHttp = util.StrToMem(oMatchList.SendHttp) + } + if oMatchList.ActionDesc != nil { + nestedMatchList.ActionDesc = oMatchList.ActionDesc + } + if oMatchList.SendSnmptrap != nil { + nestedMatchList.SendSnmptrap = util.StrToMem(oMatchList.SendSnmptrap) + } + if oMatchList.SendEmail != nil { + nestedMatchList.SendEmail = util.StrToMem(oMatchList.SendEmail) + } + if oMatchList.SendSyslog != nil { + nestedMatchList.SendSyslog = util.StrToMem(oMatchList.SendSyslog) + } if oMatchList.Actions != nil { nestedMatchList.Actions = []MatchListActionsXml{} for _, oMatchListActions := range oMatchList.Actions { @@ -229,12 +253,6 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["MatchListActionsTypeTaggingRegistration"]; ok { nestedMatchListActions.Type.Tagging.Registration.Misc = o.Misc["MatchListActionsTypeTaggingRegistration"] } - if oMatchListActions.Type.Tagging.Registration.Panorama != nil { - nestedMatchListActions.Type.Tagging.Registration.Panorama = &MatchListActionsTypeTaggingRegistrationPanoramaXml{} - if _, ok := o.Misc["MatchListActionsTypeTaggingRegistrationPanorama"]; ok { - nestedMatchListActions.Type.Tagging.Registration.Panorama.Misc = o.Misc["MatchListActionsTypeTaggingRegistrationPanorama"] - } - } if oMatchListActions.Type.Tagging.Registration.Remote != nil { nestedMatchListActions.Type.Tagging.Registration.Remote = &MatchListActionsTypeTaggingRegistrationRemoteXml{} if _, ok := o.Misc["MatchListActionsTypeTaggingRegistrationRemote"]; ok { @@ -250,6 +268,12 @@ func specifyEntry(o *Entry) (any, error) { nestedMatchListActions.Type.Tagging.Registration.Localhost.Misc = o.Misc["MatchListActionsTypeTaggingRegistrationLocalhost"] } } + if oMatchListActions.Type.Tagging.Registration.Panorama != nil { + nestedMatchListActions.Type.Tagging.Registration.Panorama = &MatchListActionsTypeTaggingRegistrationPanoramaXml{} + if _, ok := o.Misc["MatchListActionsTypeTaggingRegistrationPanorama"]; ok { + nestedMatchListActions.Type.Tagging.Registration.Panorama.Misc = o.Misc["MatchListActionsTypeTaggingRegistrationPanorama"] + } + } } if oMatchListActions.Type.Tagging.Tags != nil { nestedMatchListActions.Type.Tagging.Tags = util.StrToMem(oMatchListActions.Type.Tagging.Tags) @@ -265,33 +289,9 @@ func specifyEntry(o *Entry) (any, error) { if oMatchList.Name != "" { nestedMatchList.Name = oMatchList.Name } - if oMatchList.LogType != nil { - nestedMatchList.LogType = oMatchList.LogType - } if oMatchList.SendToPanorama != nil { nestedMatchList.SendToPanorama = util.YesNo(oMatchList.SendToPanorama, nil) } - if oMatchList.Quarantine != nil { - nestedMatchList.Quarantine = util.YesNo(oMatchList.Quarantine, nil) - } - if oMatchList.SendSnmptrap != nil { - nestedMatchList.SendSnmptrap = util.StrToMem(oMatchList.SendSnmptrap) - } - if oMatchList.SendEmail != nil { - nestedMatchList.SendEmail = util.StrToMem(oMatchList.SendEmail) - } - if oMatchList.SendSyslog != nil { - nestedMatchList.SendSyslog = util.StrToMem(oMatchList.SendSyslog) - } - if oMatchList.ActionDesc != nil { - nestedMatchList.ActionDesc = oMatchList.ActionDesc - } - if oMatchList.Filter != nil { - nestedMatchList.Filter = oMatchList.Filter - } - if oMatchList.SendHttp != nil { - nestedMatchList.SendHttp = util.StrToMem(oMatchList.SendHttp) - } nestedMatchListCol = append(nestedMatchListCol, nestedMatchList) } entry.MatchList = nestedMatchListCol @@ -320,33 +320,21 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oMatchList.Misc != nil { entry.Misc["MatchList"] = oMatchList.Misc } - if oMatchList.ActionDesc != nil { - nestedMatchList.ActionDesc = oMatchList.ActionDesc - } - if oMatchList.Filter != nil { - nestedMatchList.Filter = oMatchList.Filter - } if oMatchList.SendHttp != nil { nestedMatchList.SendHttp = util.MemToStr(oMatchList.SendHttp) } + if oMatchList.ActionDesc != nil { + nestedMatchList.ActionDesc = oMatchList.ActionDesc + } if oMatchList.LogType != nil { nestedMatchList.LogType = oMatchList.LogType } - if oMatchList.SendToPanorama != nil { - nestedMatchList.SendToPanorama = util.AsBool(oMatchList.SendToPanorama, nil) + if oMatchList.Filter != nil { + nestedMatchList.Filter = oMatchList.Filter } if oMatchList.Quarantine != nil { nestedMatchList.Quarantine = util.AsBool(oMatchList.Quarantine, nil) } - if oMatchList.SendSnmptrap != nil { - nestedMatchList.SendSnmptrap = util.MemToStr(oMatchList.SendSnmptrap) - } - if oMatchList.SendEmail != nil { - nestedMatchList.SendEmail = util.MemToStr(oMatchList.SendEmail) - } - if oMatchList.SendSyslog != nil { - nestedMatchList.SendSyslog = util.MemToStr(oMatchList.SendSyslog) - } if oMatchList.Actions != nil { nestedMatchList.Actions = []MatchListActions{} for _, oMatchListActions := range oMatchList.Actions { @@ -373,9 +361,6 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oMatchListActions.Type.Tagging.Misc != nil { entry.Misc["MatchListActionsTypeTagging"] = oMatchListActions.Type.Tagging.Misc } - if oMatchListActions.Type.Tagging.Tags != nil { - nestedMatchListActions.Type.Tagging.Tags = util.MemToStr(oMatchListActions.Type.Tagging.Tags) - } if oMatchListActions.Type.Tagging.Target != nil { nestedMatchListActions.Type.Tagging.Target = oMatchListActions.Type.Tagging.Target } @@ -390,6 +375,12 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oMatchListActions.Type.Tagging.Registration.Misc != nil { entry.Misc["MatchListActionsTypeTaggingRegistration"] = oMatchListActions.Type.Tagging.Registration.Misc } + if oMatchListActions.Type.Tagging.Registration.Localhost != nil { + nestedMatchListActions.Type.Tagging.Registration.Localhost = &MatchListActionsTypeTaggingRegistrationLocalhost{} + if oMatchListActions.Type.Tagging.Registration.Localhost.Misc != nil { + entry.Misc["MatchListActionsTypeTaggingRegistrationLocalhost"] = oMatchListActions.Type.Tagging.Registration.Localhost.Misc + } + } if oMatchListActions.Type.Tagging.Registration.Panorama != nil { nestedMatchListActions.Type.Tagging.Registration.Panorama = &MatchListActionsTypeTaggingRegistrationPanorama{} if oMatchListActions.Type.Tagging.Registration.Panorama.Misc != nil { @@ -405,12 +396,9 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { nestedMatchListActions.Type.Tagging.Registration.Remote.HttpProfile = oMatchListActions.Type.Tagging.Registration.Remote.HttpProfile } } - if oMatchListActions.Type.Tagging.Registration.Localhost != nil { - nestedMatchListActions.Type.Tagging.Registration.Localhost = &MatchListActionsTypeTaggingRegistrationLocalhost{} - if oMatchListActions.Type.Tagging.Registration.Localhost.Misc != nil { - entry.Misc["MatchListActionsTypeTaggingRegistrationLocalhost"] = oMatchListActions.Type.Tagging.Registration.Localhost.Misc - } - } + } + if oMatchListActions.Type.Tagging.Tags != nil { + nestedMatchListActions.Type.Tagging.Tags = util.MemToStr(oMatchListActions.Type.Tagging.Tags) } } } @@ -423,6 +411,18 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oMatchList.Name != "" { nestedMatchList.Name = oMatchList.Name } + if oMatchList.SendToPanorama != nil { + nestedMatchList.SendToPanorama = util.AsBool(oMatchList.SendToPanorama, nil) + } + if oMatchList.SendSnmptrap != nil { + nestedMatchList.SendSnmptrap = util.MemToStr(oMatchList.SendSnmptrap) + } + if oMatchList.SendEmail != nil { + nestedMatchList.SendEmail = util.MemToStr(oMatchList.SendEmail) + } + if oMatchList.SendSyslog != nil { + nestedMatchList.SendSyslog = util.MemToStr(oMatchList.SendSyslog) + } nestedMatchListCol = append(nestedMatchListCol, nestedMatchList) } entry.MatchList = nestedMatchListCol @@ -460,12 +460,15 @@ func SpecMatches(a, b *Entry) bool { return true } -func matchMatchListActionsTypeTaggingRegistrationLocalhost(a *MatchListActionsTypeTaggingRegistrationLocalhost, b *MatchListActionsTypeTaggingRegistrationLocalhost) bool { +func matchMatchListActionsTypeIntegration(a *MatchListActionsTypeIntegration, b *MatchListActionsTypeIntegration) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } + if !util.StringsMatch(a.Action, b.Action) { + return false + } return true } func matchMatchListActionsTypeTaggingRegistrationPanorama(a *MatchListActionsTypeTaggingRegistrationPanorama, b *MatchListActionsTypeTaggingRegistrationPanorama) bool { @@ -487,19 +490,27 @@ func matchMatchListActionsTypeTaggingRegistrationRemote(a *MatchListActionsTypeT } return true } +func matchMatchListActionsTypeTaggingRegistrationLocalhost(a *MatchListActionsTypeTaggingRegistrationLocalhost, b *MatchListActionsTypeTaggingRegistrationLocalhost) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + return true +} func matchMatchListActionsTypeTaggingRegistration(a *MatchListActionsTypeTaggingRegistration, b *MatchListActionsTypeTaggingRegistration) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchMatchListActionsTypeTaggingRegistrationRemote(a.Remote, b.Remote) { + if !matchMatchListActionsTypeTaggingRegistrationPanorama(a.Panorama, b.Panorama) { return false } - if !matchMatchListActionsTypeTaggingRegistrationLocalhost(a.Localhost, b.Localhost) { + if !matchMatchListActionsTypeTaggingRegistrationRemote(a.Remote, b.Remote) { return false } - if !matchMatchListActionsTypeTaggingRegistrationPanorama(a.Panorama, b.Panorama) { + if !matchMatchListActionsTypeTaggingRegistrationLocalhost(a.Localhost, b.Localhost) { return false } return true @@ -510,30 +521,19 @@ func matchMatchListActionsTypeTagging(a *MatchListActionsTypeTagging, b *MatchLi } else if a == nil && b == nil { return true } - if !util.Ints64Match(a.Timeout, b.Timeout) { - return false - } - if !matchMatchListActionsTypeTaggingRegistration(a.Registration, b.Registration) { - return false - } - if !util.OrderedListsMatch(a.Tags, b.Tags) { - return false - } if !util.StringsMatch(a.Target, b.Target) { return false } if !util.StringsMatch(a.Action, b.Action) { return false } - return true -} -func matchMatchListActionsTypeIntegration(a *MatchListActionsTypeIntegration, b *MatchListActionsTypeIntegration) bool { - if a == nil && b != nil || a != nil && b == nil { + if !util.Ints64Match(a.Timeout, b.Timeout) { return false - } else if a == nil && b == nil { - return true } - if !util.StringsMatch(a.Action, b.Action) { + if !matchMatchListActionsTypeTaggingRegistration(a.Registration, b.Registration) { + return false + } + if !util.OrderedListsMatch(a.Tags, b.Tags) { return false } return true @@ -578,12 +578,6 @@ func matchMatchList(a []MatchList, b []MatchList) bool { } for _, a := range a { for _, b := range b { - if !util.BoolsMatch(a.SendToPanorama, b.SendToPanorama) { - return false - } - if !util.BoolsMatch(a.Quarantine, b.Quarantine) { - return false - } if !util.OrderedListsMatch(a.SendSnmptrap, b.SendSnmptrap) { return false } @@ -599,12 +593,18 @@ func matchMatchList(a []MatchList, b []MatchList) bool { if !util.StringsEqual(a.Name, b.Name) { return false } + if !util.BoolsMatch(a.SendToPanorama, b.SendToPanorama) { + return false + } if !util.StringsMatch(a.LogType, b.LogType) { return false } if !util.StringsMatch(a.Filter, b.Filter) { return false } + if !util.BoolsMatch(a.Quarantine, b.Quarantine) { + return false + } if !util.OrderedListsMatch(a.SendHttp, b.SendHttp) { return false } diff --git a/objects/profiles/urlfiltering/entry.go b/objects/profiles/urlfiltering/entry.go index e83186d..e33bfdb 100644 --- a/objects/profiles/urlfiltering/entry.go +++ b/objects/profiles/urlfiltering/entry.go @@ -261,9 +261,6 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["CredentialEnforcement"]; ok { nestedCredentialEnforcement.Misc = o.Misc["CredentialEnforcement"] } - if o.CredentialEnforcement.Allow != nil { - nestedCredentialEnforcement.Allow = util.StrToMem(o.CredentialEnforcement.Allow) - } if o.CredentialEnforcement.Block != nil { nestedCredentialEnforcement.Block = util.StrToMem(o.CredentialEnforcement.Block) } @@ -278,6 +275,12 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["CredentialEnforcementMode"]; ok { nestedCredentialEnforcement.Mode.Misc = o.Misc["CredentialEnforcementMode"] } + if o.CredentialEnforcement.Mode.IpUser != nil { + nestedCredentialEnforcement.Mode.IpUser = &CredentialEnforcementModeIpUserXml{} + if _, ok := o.Misc["CredentialEnforcementModeIpUser"]; ok { + nestedCredentialEnforcement.Mode.IpUser.Misc = o.Misc["CredentialEnforcementModeIpUser"] + } + } if o.CredentialEnforcement.Mode.Disabled != nil { nestedCredentialEnforcement.Mode.Disabled = &CredentialEnforcementModeDisabledXml{} if _, ok := o.Misc["CredentialEnforcementModeDisabled"]; ok { @@ -293,16 +296,13 @@ func specifyEntry(o *Entry) (any, error) { if o.CredentialEnforcement.Mode.GroupMapping != nil { nestedCredentialEnforcement.Mode.GroupMapping = o.CredentialEnforcement.Mode.GroupMapping } - if o.CredentialEnforcement.Mode.IpUser != nil { - nestedCredentialEnforcement.Mode.IpUser = &CredentialEnforcementModeIpUserXml{} - if _, ok := o.Misc["CredentialEnforcementModeIpUser"]; ok { - nestedCredentialEnforcement.Mode.IpUser.Misc = o.Misc["CredentialEnforcementModeIpUser"] - } - } } if o.CredentialEnforcement.Alert != nil { nestedCredentialEnforcement.Alert = util.StrToMem(o.CredentialEnforcement.Alert) } + if o.CredentialEnforcement.Allow != nil { + nestedCredentialEnforcement.Allow = util.StrToMem(o.CredentialEnforcement.Allow) + } } entry.CredentialEnforcement = nestedCredentialEnforcement @@ -317,6 +317,9 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["HttpHeaderInsertion"]; ok { nestedHttpHeaderInsertion.Misc = o.Misc["HttpHeaderInsertion"] } + if oHttpHeaderInsertion.DisableOverride != nil { + nestedHttpHeaderInsertion.DisableOverride = oHttpHeaderInsertion.DisableOverride + } if oHttpHeaderInsertion.Type != nil { nestedHttpHeaderInsertion.Type = []HttpHeaderInsertionTypeXml{} for _, oHttpHeaderInsertionType := range oHttpHeaderInsertion.Type { @@ -324,9 +327,6 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["HttpHeaderInsertionType"]; ok { nestedHttpHeaderInsertionType.Misc = o.Misc["HttpHeaderInsertionType"] } - if oHttpHeaderInsertionType.Name != "" { - nestedHttpHeaderInsertionType.Name = oHttpHeaderInsertionType.Name - } if oHttpHeaderInsertionType.Headers != nil { nestedHttpHeaderInsertionType.Headers = []HttpHeaderInsertionTypeHeadersXml{} for _, oHttpHeaderInsertionTypeHeaders := range oHttpHeaderInsertionType.Headers { @@ -334,6 +334,9 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["HttpHeaderInsertionTypeHeaders"]; ok { nestedHttpHeaderInsertionTypeHeaders.Misc = o.Misc["HttpHeaderInsertionTypeHeaders"] } + if oHttpHeaderInsertionTypeHeaders.Header != nil { + nestedHttpHeaderInsertionTypeHeaders.Header = oHttpHeaderInsertionTypeHeaders.Header + } if oHttpHeaderInsertionTypeHeaders.Value != nil { nestedHttpHeaderInsertionTypeHeaders.Value = oHttpHeaderInsertionTypeHeaders.Value } @@ -343,24 +346,21 @@ func specifyEntry(o *Entry) (any, error) { if oHttpHeaderInsertionTypeHeaders.Name != "" { nestedHttpHeaderInsertionTypeHeaders.Name = oHttpHeaderInsertionTypeHeaders.Name } - if oHttpHeaderInsertionTypeHeaders.Header != nil { - nestedHttpHeaderInsertionTypeHeaders.Header = oHttpHeaderInsertionTypeHeaders.Header - } nestedHttpHeaderInsertionType.Headers = append(nestedHttpHeaderInsertionType.Headers, nestedHttpHeaderInsertionTypeHeaders) } } if oHttpHeaderInsertionType.Domains != nil { nestedHttpHeaderInsertionType.Domains = util.StrToMem(oHttpHeaderInsertionType.Domains) } + if oHttpHeaderInsertionType.Name != "" { + nestedHttpHeaderInsertionType.Name = oHttpHeaderInsertionType.Name + } nestedHttpHeaderInsertion.Type = append(nestedHttpHeaderInsertion.Type, nestedHttpHeaderInsertionType) } } if oHttpHeaderInsertion.Name != "" { nestedHttpHeaderInsertion.Name = oHttpHeaderInsertion.Name } - if oHttpHeaderInsertion.DisableOverride != nil { - nestedHttpHeaderInsertion.DisableOverride = oHttpHeaderInsertion.DisableOverride - } nestedHttpHeaderInsertionCol = append(nestedHttpHeaderInsertionCol, nestedHttpHeaderInsertion) } entry.HttpHeaderInsertion = nestedHttpHeaderInsertionCol @@ -409,6 +409,12 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.CredentialEnforcement.Mode.Misc != nil { entry.Misc["CredentialEnforcementMode"] = o.CredentialEnforcement.Mode.Misc } + if o.CredentialEnforcement.Mode.Disabled != nil { + nestedCredentialEnforcement.Mode.Disabled = &CredentialEnforcementModeDisabled{} + if o.CredentialEnforcement.Mode.Disabled.Misc != nil { + entry.Misc["CredentialEnforcementModeDisabled"] = o.CredentialEnforcement.Mode.Disabled.Misc + } + } if o.CredentialEnforcement.Mode.DomainCredentials != nil { nestedCredentialEnforcement.Mode.DomainCredentials = &CredentialEnforcementModeDomainCredentials{} if o.CredentialEnforcement.Mode.DomainCredentials.Misc != nil { @@ -424,12 +430,6 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { entry.Misc["CredentialEnforcementModeIpUser"] = o.CredentialEnforcement.Mode.IpUser.Misc } } - if o.CredentialEnforcement.Mode.Disabled != nil { - nestedCredentialEnforcement.Mode.Disabled = &CredentialEnforcementModeDisabled{} - if o.CredentialEnforcement.Mode.Disabled.Misc != nil { - entry.Misc["CredentialEnforcementModeDisabled"] = o.CredentialEnforcement.Mode.Disabled.Misc - } - } } if o.CredentialEnforcement.Alert != nil { nestedCredentialEnforcement.Alert = util.MemToStr(o.CredentialEnforcement.Alert) @@ -464,12 +464,6 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oHttpHeaderInsertionType.Misc != nil { entry.Misc["HttpHeaderInsertionType"] = oHttpHeaderInsertionType.Misc } - if oHttpHeaderInsertionType.Domains != nil { - nestedHttpHeaderInsertionType.Domains = util.MemToStr(oHttpHeaderInsertionType.Domains) - } - if oHttpHeaderInsertionType.Name != "" { - nestedHttpHeaderInsertionType.Name = oHttpHeaderInsertionType.Name - } if oHttpHeaderInsertionType.Headers != nil { nestedHttpHeaderInsertionType.Headers = []HttpHeaderInsertionTypeHeaders{} for _, oHttpHeaderInsertionTypeHeaders := range oHttpHeaderInsertionType.Headers { @@ -477,6 +471,9 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oHttpHeaderInsertionTypeHeaders.Misc != nil { entry.Misc["HttpHeaderInsertionTypeHeaders"] = oHttpHeaderInsertionTypeHeaders.Misc } + if oHttpHeaderInsertionTypeHeaders.Value != nil { + nestedHttpHeaderInsertionTypeHeaders.Value = oHttpHeaderInsertionTypeHeaders.Value + } if oHttpHeaderInsertionTypeHeaders.Log != nil { nestedHttpHeaderInsertionTypeHeaders.Log = util.AsBool(oHttpHeaderInsertionTypeHeaders.Log, nil) } @@ -486,12 +483,15 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oHttpHeaderInsertionTypeHeaders.Header != nil { nestedHttpHeaderInsertionTypeHeaders.Header = oHttpHeaderInsertionTypeHeaders.Header } - if oHttpHeaderInsertionTypeHeaders.Value != nil { - nestedHttpHeaderInsertionTypeHeaders.Value = oHttpHeaderInsertionTypeHeaders.Value - } nestedHttpHeaderInsertionType.Headers = append(nestedHttpHeaderInsertionType.Headers, nestedHttpHeaderInsertionTypeHeaders) } } + if oHttpHeaderInsertionType.Domains != nil { + nestedHttpHeaderInsertionType.Domains = util.MemToStr(oHttpHeaderInsertionType.Domains) + } + if oHttpHeaderInsertionType.Name != "" { + nestedHttpHeaderInsertionType.Name = oHttpHeaderInsertionType.Name + } nestedHttpHeaderInsertion.Type = append(nestedHttpHeaderInsertion.Type, nestedHttpHeaderInsertionType) } } @@ -594,16 +594,16 @@ func matchHttpHeaderInsertionTypeHeaders(a []HttpHeaderInsertionTypeHeaders, b [ } for _, a := range a { for _, b := range b { - if !util.BoolsMatch(a.Log, b.Log) { + if !util.StringsMatch(a.Header, b.Header) { return false } - if !util.StringsEqual(a.Name, b.Name) { + if !util.StringsMatch(a.Value, b.Value) { return false } - if !util.StringsMatch(a.Header, b.Header) { + if !util.BoolsMatch(a.Log, b.Log) { return false } - if !util.StringsMatch(a.Value, b.Value) { + if !util.StringsEqual(a.Name, b.Name) { return false } } @@ -652,7 +652,7 @@ func matchHttpHeaderInsertion(a []HttpHeaderInsertion, b []HttpHeaderInsertion) } return true } -func matchCredentialEnforcementModeIpUser(a *CredentialEnforcementModeIpUser, b *CredentialEnforcementModeIpUser) bool { +func matchCredentialEnforcementModeDisabled(a *CredentialEnforcementModeDisabled, b *CredentialEnforcementModeDisabled) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -660,7 +660,7 @@ func matchCredentialEnforcementModeIpUser(a *CredentialEnforcementModeIpUser, b } return true } -func matchCredentialEnforcementModeDisabled(a *CredentialEnforcementModeDisabled, b *CredentialEnforcementModeDisabled) bool { +func matchCredentialEnforcementModeDomainCredentials(a *CredentialEnforcementModeDomainCredentials, b *CredentialEnforcementModeDomainCredentials) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -668,7 +668,7 @@ func matchCredentialEnforcementModeDisabled(a *CredentialEnforcementModeDisabled } return true } -func matchCredentialEnforcementModeDomainCredentials(a *CredentialEnforcementModeDomainCredentials, b *CredentialEnforcementModeDomainCredentials) bool { +func matchCredentialEnforcementModeIpUser(a *CredentialEnforcementModeIpUser, b *CredentialEnforcementModeIpUser) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -682,6 +682,9 @@ func matchCredentialEnforcementMode(a *CredentialEnforcementMode, b *CredentialE } else if a == nil && b == nil { return true } + if !matchCredentialEnforcementModeIpUser(a.IpUser, b.IpUser) { + return false + } if !matchCredentialEnforcementModeDisabled(a.Disabled, b.Disabled) { return false } @@ -691,9 +694,6 @@ func matchCredentialEnforcementMode(a *CredentialEnforcementMode, b *CredentialE if !util.StringsMatch(a.GroupMapping, b.GroupMapping) { return false } - if !matchCredentialEnforcementModeIpUser(a.IpUser, b.IpUser) { - return false - } return true } func matchCredentialEnforcement(a *CredentialEnforcement, b *CredentialEnforcement) bool { @@ -702,22 +702,22 @@ func matchCredentialEnforcement(a *CredentialEnforcement, b *CredentialEnforceme } else if a == nil && b == nil { return true } - if !util.OrderedListsMatch(a.Alert, b.Alert) { + if !util.OrderedListsMatch(a.Continue, b.Continue) { return false } - if !util.OrderedListsMatch(a.Allow, b.Allow) { + if !util.StringsMatch(a.LogSeverity, b.LogSeverity) { return false } - if !util.OrderedListsMatch(a.Block, b.Block) { + if !matchCredentialEnforcementMode(a.Mode, b.Mode) { return false } - if !util.OrderedListsMatch(a.Continue, b.Continue) { + if !util.OrderedListsMatch(a.Alert, b.Alert) { return false } - if !util.StringsMatch(a.LogSeverity, b.LogSeverity) { + if !util.OrderedListsMatch(a.Allow, b.Allow) { return false } - if !matchCredentialEnforcementMode(a.Mode, b.Mode) { + if !util.OrderedListsMatch(a.Block, b.Block) { return false } return true diff --git a/objects/profiles/vulnerability/entry.go b/objects/profiles/vulnerability/entry.go index 0ca0812..a4a552b 100644 --- a/objects/profiles/vulnerability/entry.go +++ b/objects/profiles/vulnerability/entry.go @@ -327,12 +327,12 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["MicaEngineVulnerabilityEnabled"]; ok { nestedMicaEngineVulnerabilityEnabled.Misc = o.Misc["MicaEngineVulnerabilityEnabled"] } - if oMicaEngineVulnerabilityEnabled.Name != "" { - nestedMicaEngineVulnerabilityEnabled.Name = oMicaEngineVulnerabilityEnabled.Name - } if oMicaEngineVulnerabilityEnabled.InlinePolicyAction != nil { nestedMicaEngineVulnerabilityEnabled.InlinePolicyAction = oMicaEngineVulnerabilityEnabled.InlinePolicyAction } + if oMicaEngineVulnerabilityEnabled.Name != "" { + nestedMicaEngineVulnerabilityEnabled.Name = oMicaEngineVulnerabilityEnabled.Name + } nestedMicaEngineVulnerabilityEnabledCol = append(nestedMicaEngineVulnerabilityEnabledCol, nestedMicaEngineVulnerabilityEnabled) } entry.MicaEngineVulnerabilityEnabled = nestedMicaEngineVulnerabilityEnabledCol @@ -346,26 +346,44 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["Rules"]; ok { nestedRules.Misc = o.Misc["Rules"] } - if oRules.Severity != nil { - nestedRules.Severity = util.StrToMem(oRules.Severity) - } - if oRules.Name != "" { - nestedRules.Name = oRules.Name - } - if oRules.Host != nil { - nestedRules.Host = oRules.Host + if oRules.ThreatName != nil { + nestedRules.ThreatName = oRules.ThreatName } - if oRules.PacketCapture != nil { - nestedRules.PacketCapture = oRules.PacketCapture + if oRules.Category != nil { + nestedRules.Category = oRules.Category } - if oRules.VendorId != nil { - nestedRules.VendorId = util.StrToMem(oRules.VendorId) + if oRules.Severity != nil { + nestedRules.Severity = util.StrToMem(oRules.Severity) } if oRules.Action != nil { nestedRules.Action = &RulesActionXml{} if _, ok := o.Misc["RulesAction"]; ok { nestedRules.Action.Misc = o.Misc["RulesAction"] } + if oRules.Action.Alert != nil { + nestedRules.Action.Alert = &RulesActionAlertXml{} + if _, ok := o.Misc["RulesActionAlert"]; ok { + nestedRules.Action.Alert.Misc = o.Misc["RulesActionAlert"] + } + } + if oRules.Action.Drop != nil { + nestedRules.Action.Drop = &RulesActionDropXml{} + if _, ok := o.Misc["RulesActionDrop"]; ok { + nestedRules.Action.Drop.Misc = o.Misc["RulesActionDrop"] + } + } + if oRules.Action.ResetClient != nil { + nestedRules.Action.ResetClient = &RulesActionResetClientXml{} + if _, ok := o.Misc["RulesActionResetClient"]; ok { + nestedRules.Action.ResetClient.Misc = o.Misc["RulesActionResetClient"] + } + } + if oRules.Action.ResetServer != nil { + nestedRules.Action.ResetServer = &RulesActionResetServerXml{} + if _, ok := o.Misc["RulesActionResetServer"]; ok { + nestedRules.Action.ResetServer.Misc = o.Misc["RulesActionResetServer"] + } + } if oRules.Action.ResetBoth != nil { nestedRules.Action.ResetBoth = &RulesActionResetBothXml{} if _, ok := o.Misc["RulesActionResetBoth"]; ok { @@ -396,40 +414,22 @@ func specifyEntry(o *Entry) (any, error) { nestedRules.Action.Allow.Misc = o.Misc["RulesActionAllow"] } } - if oRules.Action.Alert != nil { - nestedRules.Action.Alert = &RulesActionAlertXml{} - if _, ok := o.Misc["RulesActionAlert"]; ok { - nestedRules.Action.Alert.Misc = o.Misc["RulesActionAlert"] - } - } - if oRules.Action.Drop != nil { - nestedRules.Action.Drop = &RulesActionDropXml{} - if _, ok := o.Misc["RulesActionDrop"]; ok { - nestedRules.Action.Drop.Misc = o.Misc["RulesActionDrop"] - } - } - if oRules.Action.ResetClient != nil { - nestedRules.Action.ResetClient = &RulesActionResetClientXml{} - if _, ok := o.Misc["RulesActionResetClient"]; ok { - nestedRules.Action.ResetClient.Misc = o.Misc["RulesActionResetClient"] - } - } - if oRules.Action.ResetServer != nil { - nestedRules.Action.ResetServer = &RulesActionResetServerXml{} - if _, ok := o.Misc["RulesActionResetServer"]; ok { - nestedRules.Action.ResetServer.Misc = o.Misc["RulesActionResetServer"] - } - } } - if oRules.ThreatName != nil { - nestedRules.ThreatName = oRules.ThreatName + if oRules.Host != nil { + nestedRules.Host = oRules.Host } - if oRules.Category != nil { - nestedRules.Category = oRules.Category + if oRules.PacketCapture != nil { + nestedRules.PacketCapture = oRules.PacketCapture } if oRules.Cve != nil { nestedRules.Cve = util.StrToMem(oRules.Cve) } + if oRules.VendorId != nil { + nestedRules.VendorId = util.StrToMem(oRules.VendorId) + } + if oRules.Name != "" { + nestedRules.Name = oRules.Name + } nestedRulesCol = append(nestedRulesCol, nestedRules) } entry.Rules = nestedRulesCol @@ -443,22 +443,6 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["ThreatException"]; ok { nestedThreatException.Misc = o.Misc["ThreatException"] } - if oThreatException.ExemptIp != nil { - nestedThreatException.ExemptIp = []ThreatExceptionExemptIpXml{} - for _, oThreatExceptionExemptIp := range oThreatException.ExemptIp { - nestedThreatExceptionExemptIp := ThreatExceptionExemptIpXml{} - if _, ok := o.Misc["ThreatExceptionExemptIp"]; ok { - nestedThreatExceptionExemptIp.Misc = o.Misc["ThreatExceptionExemptIp"] - } - if oThreatExceptionExemptIp.Name != "" { - nestedThreatExceptionExemptIp.Name = oThreatExceptionExemptIp.Name - } - nestedThreatException.ExemptIp = append(nestedThreatException.ExemptIp, nestedThreatExceptionExemptIp) - } - } - if oThreatException.Name != "" { - nestedThreatException.Name = oThreatException.Name - } if oThreatException.PacketCapture != nil { nestedThreatException.PacketCapture = oThreatException.PacketCapture } @@ -467,6 +451,24 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["ThreatExceptionAction"]; ok { nestedThreatException.Action.Misc = o.Misc["ThreatExceptionAction"] } + if oThreatException.Action.Drop != nil { + nestedThreatException.Action.Drop = &ThreatExceptionActionDropXml{} + if _, ok := o.Misc["ThreatExceptionActionDrop"]; ok { + nestedThreatException.Action.Drop.Misc = o.Misc["ThreatExceptionActionDrop"] + } + } + if oThreatException.Action.ResetClient != nil { + nestedThreatException.Action.ResetClient = &ThreatExceptionActionResetClientXml{} + if _, ok := o.Misc["ThreatExceptionActionResetClient"]; ok { + nestedThreatException.Action.ResetClient.Misc = o.Misc["ThreatExceptionActionResetClient"] + } + } + if oThreatException.Action.ResetServer != nil { + nestedThreatException.Action.ResetServer = &ThreatExceptionActionResetServerXml{} + if _, ok := o.Misc["ThreatExceptionActionResetServer"]; ok { + nestedThreatException.Action.ResetServer.Misc = o.Misc["ThreatExceptionActionResetServer"] + } + } if oThreatException.Action.ResetBoth != nil { nestedThreatException.Action.ResetBoth = &ThreatExceptionActionResetBothXml{} if _, ok := o.Misc["ThreatExceptionActionResetBoth"]; ok { @@ -503,39 +505,37 @@ func specifyEntry(o *Entry) (any, error) { nestedThreatException.Action.Alert.Misc = o.Misc["ThreatExceptionActionAlert"] } } - if oThreatException.Action.Drop != nil { - nestedThreatException.Action.Drop = &ThreatExceptionActionDropXml{} - if _, ok := o.Misc["ThreatExceptionActionDrop"]; ok { - nestedThreatException.Action.Drop.Misc = o.Misc["ThreatExceptionActionDrop"] - } - } - if oThreatException.Action.ResetClient != nil { - nestedThreatException.Action.ResetClient = &ThreatExceptionActionResetClientXml{} - if _, ok := o.Misc["ThreatExceptionActionResetClient"]; ok { - nestedThreatException.Action.ResetClient.Misc = o.Misc["ThreatExceptionActionResetClient"] - } - } - if oThreatException.Action.ResetServer != nil { - nestedThreatException.Action.ResetServer = &ThreatExceptionActionResetServerXml{} - if _, ok := o.Misc["ThreatExceptionActionResetServer"]; ok { - nestedThreatException.Action.ResetServer.Misc = o.Misc["ThreatExceptionActionResetServer"] - } - } } if oThreatException.TimeAttribute != nil { nestedThreatException.TimeAttribute = &ThreatExceptionTimeAttributeXml{} if _, ok := o.Misc["ThreatExceptionTimeAttribute"]; ok { nestedThreatException.TimeAttribute.Misc = o.Misc["ThreatExceptionTimeAttribute"] } - if oThreatException.TimeAttribute.Interval != nil { - nestedThreatException.TimeAttribute.Interval = oThreatException.TimeAttribute.Interval - } if oThreatException.TimeAttribute.Threshold != nil { nestedThreatException.TimeAttribute.Threshold = oThreatException.TimeAttribute.Threshold } if oThreatException.TimeAttribute.TrackBy != nil { nestedThreatException.TimeAttribute.TrackBy = oThreatException.TimeAttribute.TrackBy } + if oThreatException.TimeAttribute.Interval != nil { + nestedThreatException.TimeAttribute.Interval = oThreatException.TimeAttribute.Interval + } + } + if oThreatException.ExemptIp != nil { + nestedThreatException.ExemptIp = []ThreatExceptionExemptIpXml{} + for _, oThreatExceptionExemptIp := range oThreatException.ExemptIp { + nestedThreatExceptionExemptIp := ThreatExceptionExemptIpXml{} + if _, ok := o.Misc["ThreatExceptionExemptIp"]; ok { + nestedThreatExceptionExemptIp.Misc = o.Misc["ThreatExceptionExemptIp"] + } + if oThreatExceptionExemptIp.Name != "" { + nestedThreatExceptionExemptIp.Name = oThreatExceptionExemptIp.Name + } + nestedThreatException.ExemptIp = append(nestedThreatException.ExemptIp, nestedThreatExceptionExemptIp) + } + } + if oThreatException.Name != "" { + nestedThreatException.Name = oThreatException.Name } nestedThreatExceptionCol = append(nestedThreatExceptionCol, nestedThreatException) } @@ -586,20 +586,20 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oRules.Misc != nil { entry.Misc["Rules"] = oRules.Misc } - if oRules.Name != "" { - nestedRules.Name = oRules.Name - } if oRules.Host != nil { nestedRules.Host = oRules.Host } if oRules.PacketCapture != nil { nestedRules.PacketCapture = oRules.PacketCapture } + if oRules.Cve != nil { + nestedRules.Cve = util.MemToStr(oRules.Cve) + } if oRules.VendorId != nil { nestedRules.VendorId = util.MemToStr(oRules.VendorId) } - if oRules.Severity != nil { - nestedRules.Severity = util.MemToStr(oRules.Severity) + if oRules.Name != "" { + nestedRules.Name = oRules.Name } if oRules.ThreatName != nil { nestedRules.ThreatName = oRules.ThreatName @@ -607,20 +607,14 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oRules.Category != nil { nestedRules.Category = oRules.Category } - if oRules.Cve != nil { - nestedRules.Cve = util.MemToStr(oRules.Cve) + if oRules.Severity != nil { + nestedRules.Severity = util.MemToStr(oRules.Severity) } if oRules.Action != nil { nestedRules.Action = &RulesAction{} if oRules.Action.Misc != nil { entry.Misc["RulesAction"] = oRules.Action.Misc } - if oRules.Action.ResetClient != nil { - nestedRules.Action.ResetClient = &RulesActionResetClient{} - if oRules.Action.ResetClient.Misc != nil { - entry.Misc["RulesActionResetClient"] = oRules.Action.ResetClient.Misc - } - } if oRules.Action.ResetServer != nil { nestedRules.Action.ResetServer = &RulesActionResetServer{} if oRules.Action.ResetServer.Misc != nil { @@ -669,6 +663,12 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { entry.Misc["RulesActionDrop"] = oRules.Action.Drop.Misc } } + if oRules.Action.ResetClient != nil { + nestedRules.Action.ResetClient = &RulesActionResetClient{} + if oRules.Action.ResetClient.Misc != nil { + entry.Misc["RulesActionResetClient"] = oRules.Action.ResetClient.Misc + } + } } nestedRulesCol = append(nestedRulesCol, nestedRules) } @@ -683,6 +683,37 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oThreatException.Misc != nil { entry.Misc["ThreatException"] = oThreatException.Misc } + if oThreatException.TimeAttribute != nil { + nestedThreatException.TimeAttribute = &ThreatExceptionTimeAttribute{} + if oThreatException.TimeAttribute.Misc != nil { + entry.Misc["ThreatExceptionTimeAttribute"] = oThreatException.TimeAttribute.Misc + } + if oThreatException.TimeAttribute.Interval != nil { + nestedThreatException.TimeAttribute.Interval = oThreatException.TimeAttribute.Interval + } + if oThreatException.TimeAttribute.Threshold != nil { + nestedThreatException.TimeAttribute.Threshold = oThreatException.TimeAttribute.Threshold + } + if oThreatException.TimeAttribute.TrackBy != nil { + nestedThreatException.TimeAttribute.TrackBy = oThreatException.TimeAttribute.TrackBy + } + } + if oThreatException.ExemptIp != nil { + nestedThreatException.ExemptIp = []ThreatExceptionExemptIp{} + for _, oThreatExceptionExemptIp := range oThreatException.ExemptIp { + nestedThreatExceptionExemptIp := ThreatExceptionExemptIp{} + if oThreatExceptionExemptIp.Misc != nil { + entry.Misc["ThreatExceptionExemptIp"] = oThreatExceptionExemptIp.Misc + } + if oThreatExceptionExemptIp.Name != "" { + nestedThreatExceptionExemptIp.Name = oThreatExceptionExemptIp.Name + } + nestedThreatException.ExemptIp = append(nestedThreatException.ExemptIp, nestedThreatExceptionExemptIp) + } + } + if oThreatException.Name != "" { + nestedThreatException.Name = oThreatException.Name + } if oThreatException.PacketCapture != nil { nestedThreatException.PacketCapture = oThreatException.PacketCapture } @@ -691,30 +722,6 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oThreatException.Action.Misc != nil { entry.Misc["ThreatExceptionAction"] = oThreatException.Action.Misc } - if oThreatException.Action.Alert != nil { - nestedThreatException.Action.Alert = &ThreatExceptionActionAlert{} - if oThreatException.Action.Alert.Misc != nil { - entry.Misc["ThreatExceptionActionAlert"] = oThreatException.Action.Alert.Misc - } - } - if oThreatException.Action.Drop != nil { - nestedThreatException.Action.Drop = &ThreatExceptionActionDrop{} - if oThreatException.Action.Drop.Misc != nil { - entry.Misc["ThreatExceptionActionDrop"] = oThreatException.Action.Drop.Misc - } - } - if oThreatException.Action.ResetClient != nil { - nestedThreatException.Action.ResetClient = &ThreatExceptionActionResetClient{} - if oThreatException.Action.ResetClient.Misc != nil { - entry.Misc["ThreatExceptionActionResetClient"] = oThreatException.Action.ResetClient.Misc - } - } - if oThreatException.Action.ResetServer != nil { - nestedThreatException.Action.ResetServer = &ThreatExceptionActionResetServer{} - if oThreatException.Action.ResetServer.Misc != nil { - entry.Misc["ThreatExceptionActionResetServer"] = oThreatException.Action.ResetServer.Misc - } - } if oThreatException.Action.ResetBoth != nil { nestedThreatException.Action.ResetBoth = &ThreatExceptionActionResetBoth{} if oThreatException.Action.ResetBoth.Misc != nil { @@ -745,38 +752,31 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { entry.Misc["ThreatExceptionActionAllow"] = oThreatException.Action.Allow.Misc } } - } - if oThreatException.TimeAttribute != nil { - nestedThreatException.TimeAttribute = &ThreatExceptionTimeAttribute{} - if oThreatException.TimeAttribute.Misc != nil { - entry.Misc["ThreatExceptionTimeAttribute"] = oThreatException.TimeAttribute.Misc - } - if oThreatException.TimeAttribute.Interval != nil { - nestedThreatException.TimeAttribute.Interval = oThreatException.TimeAttribute.Interval - } - if oThreatException.TimeAttribute.Threshold != nil { - nestedThreatException.TimeAttribute.Threshold = oThreatException.TimeAttribute.Threshold + if oThreatException.Action.Alert != nil { + nestedThreatException.Action.Alert = &ThreatExceptionActionAlert{} + if oThreatException.Action.Alert.Misc != nil { + entry.Misc["ThreatExceptionActionAlert"] = oThreatException.Action.Alert.Misc + } } - if oThreatException.TimeAttribute.TrackBy != nil { - nestedThreatException.TimeAttribute.TrackBy = oThreatException.TimeAttribute.TrackBy + if oThreatException.Action.Drop != nil { + nestedThreatException.Action.Drop = &ThreatExceptionActionDrop{} + if oThreatException.Action.Drop.Misc != nil { + entry.Misc["ThreatExceptionActionDrop"] = oThreatException.Action.Drop.Misc + } } - } - if oThreatException.ExemptIp != nil { - nestedThreatException.ExemptIp = []ThreatExceptionExemptIp{} - for _, oThreatExceptionExemptIp := range oThreatException.ExemptIp { - nestedThreatExceptionExemptIp := ThreatExceptionExemptIp{} - if oThreatExceptionExemptIp.Misc != nil { - entry.Misc["ThreatExceptionExemptIp"] = oThreatExceptionExemptIp.Misc + if oThreatException.Action.ResetClient != nil { + nestedThreatException.Action.ResetClient = &ThreatExceptionActionResetClient{} + if oThreatException.Action.ResetClient.Misc != nil { + entry.Misc["ThreatExceptionActionResetClient"] = oThreatException.Action.ResetClient.Misc } - if oThreatExceptionExemptIp.Name != "" { - nestedThreatExceptionExemptIp.Name = oThreatExceptionExemptIp.Name + } + if oThreatException.Action.ResetServer != nil { + nestedThreatException.Action.ResetServer = &ThreatExceptionActionResetServer{} + if oThreatException.Action.ResetServer.Misc != nil { + entry.Misc["ThreatExceptionActionResetServer"] = oThreatException.Action.ResetServer.Misc } - nestedThreatException.ExemptIp = append(nestedThreatException.ExemptIp, nestedThreatExceptionExemptIp) } } - if oThreatException.Name != "" { - nestedThreatException.Name = oThreatException.Name - } nestedThreatExceptionCol = append(nestedThreatExceptionCol, nestedThreatException) } entry.ThreatException = nestedThreatExceptionCol @@ -826,7 +826,7 @@ func SpecMatches(a, b *Entry) bool { return true } -func matchThreatExceptionActionResetServer(a *ThreatExceptionActionResetServer, b *ThreatExceptionActionResetServer) bool { +func matchRulesActionResetServer(a *RulesActionResetServer, b *RulesActionResetServer) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -834,7 +834,7 @@ func matchThreatExceptionActionResetServer(a *ThreatExceptionActionResetServer, } return true } -func matchThreatExceptionActionResetBoth(a *ThreatExceptionActionResetBoth, b *ThreatExceptionActionResetBoth) bool { +func matchRulesActionResetBoth(a *RulesActionResetBoth, b *RulesActionResetBoth) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -842,7 +842,7 @@ func matchThreatExceptionActionResetBoth(a *ThreatExceptionActionResetBoth, b *T } return true } -func matchThreatExceptionActionBlockIp(a *ThreatExceptionActionBlockIp, b *ThreatExceptionActionBlockIp) bool { +func matchRulesActionBlockIp(a *RulesActionBlockIp, b *RulesActionBlockIp) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -856,7 +856,7 @@ func matchThreatExceptionActionBlockIp(a *ThreatExceptionActionBlockIp, b *Threa } return true } -func matchThreatExceptionActionDefault(a *ThreatExceptionActionDefault, b *ThreatExceptionActionDefault) bool { +func matchRulesActionDefault(a *RulesActionDefault, b *RulesActionDefault) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -864,7 +864,7 @@ func matchThreatExceptionActionDefault(a *ThreatExceptionActionDefault, b *Threa } return true } -func matchThreatExceptionActionAllow(a *ThreatExceptionActionAllow, b *ThreatExceptionActionAllow) bool { +func matchRulesActionAllow(a *RulesActionAllow, b *RulesActionAllow) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -872,7 +872,7 @@ func matchThreatExceptionActionAllow(a *ThreatExceptionActionAllow, b *ThreatExc } return true } -func matchThreatExceptionActionAlert(a *ThreatExceptionActionAlert, b *ThreatExceptionActionAlert) bool { +func matchRulesActionAlert(a *RulesActionAlert, b *RulesActionAlert) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -880,7 +880,7 @@ func matchThreatExceptionActionAlert(a *ThreatExceptionActionAlert, b *ThreatExc } return true } -func matchThreatExceptionActionDrop(a *ThreatExceptionActionDrop, b *ThreatExceptionActionDrop) bool { +func matchRulesActionDrop(a *RulesActionDrop, b *RulesActionDrop) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -888,7 +888,7 @@ func matchThreatExceptionActionDrop(a *ThreatExceptionActionDrop, b *ThreatExcep } return true } -func matchThreatExceptionActionResetClient(a *ThreatExceptionActionResetClient, b *ThreatExceptionActionResetClient) bool { +func matchRulesActionResetClient(a *RulesActionResetClient, b *RulesActionResetClient) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -896,56 +896,39 @@ func matchThreatExceptionActionResetClient(a *ThreatExceptionActionResetClient, } return true } -func matchThreatExceptionAction(a *ThreatExceptionAction, b *ThreatExceptionAction) bool { +func matchRulesAction(a *RulesAction, b *RulesAction) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchThreatExceptionActionAlert(a.Alert, b.Alert) { - return false - } - if !matchThreatExceptionActionDrop(a.Drop, b.Drop) { - return false - } - if !matchThreatExceptionActionResetClient(a.ResetClient, b.ResetClient) { - return false - } - if !matchThreatExceptionActionResetServer(a.ResetServer, b.ResetServer) { - return false - } - if !matchThreatExceptionActionResetBoth(a.ResetBoth, b.ResetBoth) { + if !matchRulesActionDefault(a.Default, b.Default) { return false } - if !matchThreatExceptionActionBlockIp(a.BlockIp, b.BlockIp) { + if !matchRulesActionAllow(a.Allow, b.Allow) { return false } - if !matchThreatExceptionActionDefault(a.Default, b.Default) { + if !matchRulesActionAlert(a.Alert, b.Alert) { return false } - if !matchThreatExceptionActionAllow(a.Allow, b.Allow) { + if !matchRulesActionDrop(a.Drop, b.Drop) { return false } - return true -} -func matchThreatExceptionTimeAttribute(a *ThreatExceptionTimeAttribute, b *ThreatExceptionTimeAttribute) bool { - if a == nil && b != nil || a != nil && b == nil { + if !matchRulesActionResetClient(a.ResetClient, b.ResetClient) { return false - } else if a == nil && b == nil { - return true } - if !util.Ints64Match(a.Interval, b.Interval) { + if !matchRulesActionResetServer(a.ResetServer, b.ResetServer) { return false } - if !util.Ints64Match(a.Threshold, b.Threshold) { + if !matchRulesActionResetBoth(a.ResetBoth, b.ResetBoth) { return false } - if !util.StringsMatch(a.TrackBy, b.TrackBy) { + if !matchRulesActionBlockIp(a.BlockIp, b.BlockIp) { return false } return true } -func matchThreatExceptionExemptIp(a []ThreatExceptionExemptIp, b []ThreatExceptionExemptIp) bool { +func matchRules(a []Rules, b []Rules) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -953,49 +936,28 @@ func matchThreatExceptionExemptIp(a []ThreatExceptionExemptIp, b []ThreatExcepti } for _, a := range a { for _, b := range b { - if !util.StringsEqual(a.Name, b.Name) { + if !util.StringsMatch(a.ThreatName, b.ThreatName) { return false } - } - } - return true -} -func matchThreatException(a []ThreatException, b []ThreatException) bool { - if a == nil && b != nil || a != nil && b == nil { - return false - } else if a == nil && b == nil { - return true - } - for _, a := range a { - for _, b := range b { - if !util.StringsMatch(a.PacketCapture, b.PacketCapture) { + if !util.StringsMatch(a.Category, b.Category) { return false } - if !matchThreatExceptionAction(a.Action, b.Action) { + if !util.OrderedListsMatch(a.Severity, b.Severity) { return false } - if !matchThreatExceptionTimeAttribute(a.TimeAttribute, b.TimeAttribute) { + if !matchRulesAction(a.Action, b.Action) { return false } - if !matchThreatExceptionExemptIp(a.ExemptIp, b.ExemptIp) { + if !util.StringsMatch(a.Host, b.Host) { return false } - if !util.StringsEqual(a.Name, b.Name) { + if !util.StringsMatch(a.PacketCapture, b.PacketCapture) { return false } - } - } - return true -} -func matchMicaEngineVulnerabilityEnabled(a []MicaEngineVulnerabilityEnabled, b []MicaEngineVulnerabilityEnabled) bool { - if a == nil && b != nil || a != nil && b == nil { - return false - } else if a == nil && b == nil { - return true - } - for _, a := range a { - for _, b := range b { - if !util.StringsMatch(a.InlinePolicyAction, b.InlinePolicyAction) { + if !util.OrderedListsMatch(a.Cve, b.Cve) { + return false + } + if !util.OrderedListsMatch(a.VendorId, b.VendorId) { return false } if !util.StringsEqual(a.Name, b.Name) { @@ -1005,7 +967,7 @@ func matchMicaEngineVulnerabilityEnabled(a []MicaEngineVulnerabilityEnabled, b [ } return true } -func matchRulesActionResetBoth(a *RulesActionResetBoth, b *RulesActionResetBoth) bool { +func matchThreatExceptionActionResetClient(a *ThreatExceptionActionResetClient, b *ThreatExceptionActionResetClient) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -1013,21 +975,15 @@ func matchRulesActionResetBoth(a *RulesActionResetBoth, b *RulesActionResetBoth) } return true } -func matchRulesActionBlockIp(a *RulesActionBlockIp, b *RulesActionBlockIp) bool { +func matchThreatExceptionActionResetServer(a *ThreatExceptionActionResetServer, b *ThreatExceptionActionResetServer) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.TrackBy, b.TrackBy) { - return false - } - if !util.Ints64Match(a.Duration, b.Duration) { - return false - } return true } -func matchRulesActionDefault(a *RulesActionDefault, b *RulesActionDefault) bool { +func matchThreatExceptionActionResetBoth(a *ThreatExceptionActionResetBoth, b *ThreatExceptionActionResetBoth) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -1035,15 +991,21 @@ func matchRulesActionDefault(a *RulesActionDefault, b *RulesActionDefault) bool } return true } -func matchRulesActionAllow(a *RulesActionAllow, b *RulesActionAllow) bool { +func matchThreatExceptionActionBlockIp(a *ThreatExceptionActionBlockIp, b *ThreatExceptionActionBlockIp) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } + if !util.StringsMatch(a.TrackBy, b.TrackBy) { + return false + } + if !util.Ints64Match(a.Duration, b.Duration) { + return false + } return true } -func matchRulesActionAlert(a *RulesActionAlert, b *RulesActionAlert) bool { +func matchThreatExceptionActionDefault(a *ThreatExceptionActionDefault, b *ThreatExceptionActionDefault) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -1051,7 +1013,7 @@ func matchRulesActionAlert(a *RulesActionAlert, b *RulesActionAlert) bool { } return true } -func matchRulesActionDrop(a *RulesActionDrop, b *RulesActionDrop) bool { +func matchThreatExceptionActionAllow(a *ThreatExceptionActionAllow, b *ThreatExceptionActionAllow) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -1059,7 +1021,7 @@ func matchRulesActionDrop(a *RulesActionDrop, b *RulesActionDrop) bool { } return true } -func matchRulesActionResetClient(a *RulesActionResetClient, b *RulesActionResetClient) bool { +func matchThreatExceptionActionAlert(a *ThreatExceptionActionAlert, b *ThreatExceptionActionAlert) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -1067,7 +1029,7 @@ func matchRulesActionResetClient(a *RulesActionResetClient, b *RulesActionResetC } return true } -func matchRulesActionResetServer(a *RulesActionResetServer, b *RulesActionResetServer) bool { +func matchThreatExceptionActionDrop(a *ThreatExceptionActionDrop, b *ThreatExceptionActionDrop) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -1075,39 +1037,56 @@ func matchRulesActionResetServer(a *RulesActionResetServer, b *RulesActionResetS } return true } -func matchRulesAction(a *RulesAction, b *RulesAction) bool { +func matchThreatExceptionAction(a *ThreatExceptionAction, b *ThreatExceptionAction) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchRulesActionResetServer(a.ResetServer, b.ResetServer) { + if !matchThreatExceptionActionResetClient(a.ResetClient, b.ResetClient) { return false } - if !matchRulesActionResetBoth(a.ResetBoth, b.ResetBoth) { + if !matchThreatExceptionActionResetServer(a.ResetServer, b.ResetServer) { return false } - if !matchRulesActionBlockIp(a.BlockIp, b.BlockIp) { + if !matchThreatExceptionActionResetBoth(a.ResetBoth, b.ResetBoth) { return false } - if !matchRulesActionDefault(a.Default, b.Default) { + if !matchThreatExceptionActionBlockIp(a.BlockIp, b.BlockIp) { return false } - if !matchRulesActionAllow(a.Allow, b.Allow) { + if !matchThreatExceptionActionDefault(a.Default, b.Default) { return false } - if !matchRulesActionAlert(a.Alert, b.Alert) { + if !matchThreatExceptionActionAllow(a.Allow, b.Allow) { return false } - if !matchRulesActionDrop(a.Drop, b.Drop) { + if !matchThreatExceptionActionAlert(a.Alert, b.Alert) { return false } - if !matchRulesActionResetClient(a.ResetClient, b.ResetClient) { + if !matchThreatExceptionActionDrop(a.Drop, b.Drop) { return false } return true } -func matchRules(a []Rules, b []Rules) bool { +func matchThreatExceptionTimeAttribute(a *ThreatExceptionTimeAttribute, b *ThreatExceptionTimeAttribute) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + if !util.Ints64Match(a.Interval, b.Interval) { + return false + } + if !util.Ints64Match(a.Threshold, b.Threshold) { + return false + } + if !util.StringsMatch(a.TrackBy, b.TrackBy) { + return false + } + return true +} +func matchThreatExceptionExemptIp(a []ThreatExceptionExemptIp, b []ThreatExceptionExemptIp) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -1115,31 +1094,52 @@ func matchRules(a []Rules, b []Rules) bool { } for _, a := range a { for _, b := range b { - if !util.StringsMatch(a.Host, b.Host) { + if !util.StringsEqual(a.Name, b.Name) { return false } - if !util.StringsMatch(a.PacketCapture, b.PacketCapture) { + } + } + return true +} +func matchThreatException(a []ThreatException, b []ThreatException) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + for _, a := range a { + for _, b := range b { + if !matchThreatExceptionAction(a.Action, b.Action) { return false } - if !util.OrderedListsMatch(a.VendorId, b.VendorId) { + if !matchThreatExceptionTimeAttribute(a.TimeAttribute, b.TimeAttribute) { return false } - if !util.OrderedListsMatch(a.Severity, b.Severity) { + if !matchThreatExceptionExemptIp(a.ExemptIp, b.ExemptIp) { return false } if !util.StringsEqual(a.Name, b.Name) { return false } - if !util.StringsMatch(a.ThreatName, b.ThreatName) { - return false - } - if !util.StringsMatch(a.Category, b.Category) { + if !util.StringsMatch(a.PacketCapture, b.PacketCapture) { return false } - if !util.OrderedListsMatch(a.Cve, b.Cve) { + } + } + return true +} +func matchMicaEngineVulnerabilityEnabled(a []MicaEngineVulnerabilityEnabled, b []MicaEngineVulnerabilityEnabled) bool { + if a == nil && b != nil || a != nil && b == nil { + return false + } else if a == nil && b == nil { + return true + } + for _, a := range a { + for _, b := range b { + if !util.StringsMatch(a.InlinePolicyAction, b.InlinePolicyAction) { return false } - if !matchRulesAction(a.Action, b.Action) { + if !util.StringsEqual(a.Name, b.Name) { return false } } diff --git a/objects/profiles/wildfireanalysis/entry.go b/objects/profiles/wildfireanalysis/entry.go index 54170a8..78a7dc8 100644 --- a/objects/profiles/wildfireanalysis/entry.go +++ b/objects/profiles/wildfireanalysis/entry.go @@ -96,12 +96,6 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["Rules"]; ok { nestedRules.Misc = o.Misc["Rules"] } - if oRules.Direction != nil { - nestedRules.Direction = oRules.Direction - } - if oRules.Analysis != nil { - nestedRules.Analysis = oRules.Analysis - } if oRules.Name != "" { nestedRules.Name = oRules.Name } @@ -111,6 +105,12 @@ func specifyEntry(o *Entry) (any, error) { if oRules.FileType != nil { nestedRules.FileType = util.StrToMem(oRules.FileType) } + if oRules.Direction != nil { + nestedRules.Direction = oRules.Direction + } + if oRules.Analysis != nil { + nestedRules.Analysis = oRules.Analysis + } nestedRulesCol = append(nestedRulesCol, nestedRules) } entry.Rules = nestedRulesCol @@ -138,9 +138,6 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oRules.Misc != nil { entry.Misc["Rules"] = oRules.Misc } - if oRules.Name != "" { - nestedRules.Name = oRules.Name - } if oRules.Application != nil { nestedRules.Application = util.MemToStr(oRules.Application) } @@ -153,6 +150,9 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oRules.Analysis != nil { nestedRules.Analysis = oRules.Analysis } + if oRules.Name != "" { + nestedRules.Name = oRules.Name + } nestedRulesCol = append(nestedRulesCol, nestedRules) } entry.Rules = nestedRulesCol @@ -195,19 +195,19 @@ func matchRules(a []Rules, b []Rules) bool { } for _, a := range a { for _, b := range b { - if !util.OrderedListsMatch(a.Application, b.Application) { + if !util.StringsMatch(a.Direction, b.Direction) { return false } - if !util.OrderedListsMatch(a.FileType, b.FileType) { + if !util.StringsMatch(a.Analysis, b.Analysis) { return false } - if !util.StringsMatch(a.Direction, b.Direction) { + if !util.StringsEqual(a.Name, b.Name) { return false } - if !util.StringsMatch(a.Analysis, b.Analysis) { + if !util.OrderedListsMatch(a.Application, b.Application) { return false } - if !util.StringsEqual(a.Name, b.Name) { + if !util.OrderedListsMatch(a.FileType, b.FileType) { return false } } diff --git a/objects/service/entry.go b/objects/service/entry.go index f882fa0..80a520e 100644 --- a/objects/service/entry.go +++ b/objects/service/entry.go @@ -294,30 +294,24 @@ func SpecMatches(a, b *Entry) bool { return true } -func matchProtocolTcpOverride(a *ProtocolTcpOverride, b *ProtocolTcpOverride) bool { +func matchProtocolUdpOverride(a *ProtocolUdpOverride, b *ProtocolUdpOverride) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.Ints64Match(a.HalfcloseTimeout, b.HalfcloseTimeout) { - return false - } if !util.Ints64Match(a.Timeout, b.Timeout) { return false } - if !util.Ints64Match(a.TimewaitTimeout, b.TimewaitTimeout) { - return false - } return true } -func matchProtocolTcp(a *ProtocolTcp, b *ProtocolTcp) bool { +func matchProtocolUdp(a *ProtocolUdp, b *ProtocolUdp) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchProtocolTcpOverride(a.Override, b.Override) { + if !matchProtocolUdpOverride(a.Override, b.Override) { return false } if !util.StringsMatch(a.Port, b.Port) { @@ -328,32 +322,38 @@ func matchProtocolTcp(a *ProtocolTcp, b *ProtocolTcp) bool { } return true } -func matchProtocolUdpOverride(a *ProtocolUdpOverride, b *ProtocolUdpOverride) bool { +func matchProtocolTcpOverride(a *ProtocolTcpOverride, b *ProtocolTcpOverride) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } + if !util.Ints64Match(a.HalfcloseTimeout, b.HalfcloseTimeout) { + return false + } if !util.Ints64Match(a.Timeout, b.Timeout) { return false } + if !util.Ints64Match(a.TimewaitTimeout, b.TimewaitTimeout) { + return false + } return true } -func matchProtocolUdp(a *ProtocolUdp, b *ProtocolUdp) bool { +func matchProtocolTcp(a *ProtocolTcp, b *ProtocolTcp) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchProtocolUdpOverride(a.Override, b.Override) { - return false - } if !util.StringsMatch(a.Port, b.Port) { return false } if !util.StringsMatch(a.SourcePort, b.SourcePort) { return false } + if !matchProtocolTcpOverride(a.Override, b.Override) { + return false + } return true } func matchProtocol(a *Protocol, b *Protocol) bool { @@ -362,10 +362,10 @@ func matchProtocol(a *Protocol, b *Protocol) bool { } else if a == nil && b == nil { return true } - if !matchProtocolTcp(a.Tcp, b.Tcp) { + if !matchProtocolUdp(a.Udp, b.Udp) { return false } - if !matchProtocolUdp(a.Udp, b.Udp) { + if !matchProtocolTcp(a.Tcp, b.Tcp) { return false } return true diff --git a/panorama/devicegroup/entry.go b/panorama/devicegroup/entry.go index 3742cd7..6358824 100644 --- a/panorama/devicegroup/entry.go +++ b/panorama/devicegroup/entry.go @@ -98,12 +98,12 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["Devices"]; ok { nestedDevices.Misc = o.Misc["Devices"] } - if oDevices.Vsys != nil { - nestedDevices.Vsys = util.StrToMem(oDevices.Vsys) - } if oDevices.Name != "" { nestedDevices.Name = oDevices.Name } + if oDevices.Vsys != nil { + nestedDevices.Vsys = util.StrToMem(oDevices.Vsys) + } nestedDevicesCol = append(nestedDevicesCol, nestedDevices) } entry.Devices = nestedDevicesCol @@ -133,12 +133,12 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oDevices.Misc != nil { entry.Misc["Devices"] = oDevices.Misc } - if oDevices.Vsys != nil { - nestedDevices.Vsys = util.MemToStr(oDevices.Vsys) - } if oDevices.Name != "" { nestedDevices.Name = oDevices.Name } + if oDevices.Vsys != nil { + nestedDevices.Vsys = util.MemToStr(oDevices.Vsys) + } nestedDevicesCol = append(nestedDevicesCol, nestedDevices) } entry.Devices = nestedDevicesCol diff --git a/panorama/template_variable/entry.go b/panorama/template_variable/entry.go index 2466c52..8be91a5 100644 --- a/panorama/template_variable/entry.go +++ b/panorama/template_variable/entry.go @@ -96,39 +96,39 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["Type"]; ok { nestedType.Misc = o.Misc["Type"] } - if o.Type.EgressMax != nil { - nestedType.EgressMax = o.Type.EgressMax - } - if o.Type.IpNetmask != nil { - nestedType.IpNetmask = o.Type.IpNetmask - } if o.Type.Fqdn != nil { nestedType.Fqdn = o.Type.Fqdn } - if o.Type.GroupId != nil { - nestedType.GroupId = o.Type.GroupId - } if o.Type.DevicePriority != nil { nestedType.DevicePriority = o.Type.DevicePriority } if o.Type.DeviceId != nil { nestedType.DeviceId = o.Type.DeviceId } - if o.Type.Interface != nil { - nestedType.Interface = o.Type.Interface - } if o.Type.QosProfile != nil { nestedType.QosProfile = o.Type.QosProfile } + if o.Type.EgressMax != nil { + nestedType.EgressMax = o.Type.EgressMax + } + if o.Type.LinkTag != nil { + nestedType.LinkTag = o.Type.LinkTag + } + if o.Type.IpNetmask != nil { + nestedType.IpNetmask = o.Type.IpNetmask + } if o.Type.IpRange != nil { nestedType.IpRange = o.Type.IpRange } + if o.Type.GroupId != nil { + nestedType.GroupId = o.Type.GroupId + } + if o.Type.Interface != nil { + nestedType.Interface = o.Type.Interface + } if o.Type.AsNumber != nil { nestedType.AsNumber = o.Type.AsNumber } - if o.Type.LinkTag != nil { - nestedType.LinkTag = o.Type.LinkTag - } } entry.Type = nestedType @@ -151,39 +151,39 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Type.Misc != nil { entry.Misc["Type"] = o.Type.Misc } - if o.Type.AsNumber != nil { - nestedType.AsNumber = o.Type.AsNumber + if o.Type.EgressMax != nil { + nestedType.EgressMax = o.Type.EgressMax } if o.Type.LinkTag != nil { nestedType.LinkTag = o.Type.LinkTag } + if o.Type.IpNetmask != nil { + nestedType.IpNetmask = o.Type.IpNetmask + } if o.Type.IpRange != nil { nestedType.IpRange = o.Type.IpRange } - if o.Type.Fqdn != nil { - nestedType.Fqdn = o.Type.Fqdn - } if o.Type.GroupId != nil { nestedType.GroupId = o.Type.GroupId } + if o.Type.Interface != nil { + nestedType.Interface = o.Type.Interface + } + if o.Type.AsNumber != nil { + nestedType.AsNumber = o.Type.AsNumber + } + if o.Type.Fqdn != nil { + nestedType.Fqdn = o.Type.Fqdn + } if o.Type.DevicePriority != nil { nestedType.DevicePriority = o.Type.DevicePriority } if o.Type.DeviceId != nil { nestedType.DeviceId = o.Type.DeviceId } - if o.Type.Interface != nil { - nestedType.Interface = o.Type.Interface - } if o.Type.QosProfile != nil { nestedType.QosProfile = o.Type.QosProfile } - if o.Type.EgressMax != nil { - nestedType.EgressMax = o.Type.EgressMax - } - if o.Type.IpNetmask != nil { - nestedType.IpNetmask = o.Type.IpNetmask - } } entry.Type = nestedType @@ -219,37 +219,37 @@ func matchType(a *Type, b *Type) bool { } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.EgressMax, b.EgressMax) { + if !util.StringsMatch(a.Fqdn, b.Fqdn) { return false } - if !util.StringsMatch(a.IpNetmask, b.IpNetmask) { + if !util.StringsMatch(a.DevicePriority, b.DevicePriority) { return false } - if !util.StringsMatch(a.Fqdn, b.Fqdn) { + if !util.StringsMatch(a.DeviceId, b.DeviceId) { return false } - if !util.StringsMatch(a.GroupId, b.GroupId) { + if !util.StringsMatch(a.QosProfile, b.QosProfile) { return false } - if !util.StringsMatch(a.DevicePriority, b.DevicePriority) { + if !util.StringsMatch(a.EgressMax, b.EgressMax) { return false } - if !util.StringsMatch(a.DeviceId, b.DeviceId) { + if !util.StringsMatch(a.LinkTag, b.LinkTag) { return false } - if !util.StringsMatch(a.Interface, b.Interface) { + if !util.StringsMatch(a.IpNetmask, b.IpNetmask) { return false } - if !util.StringsMatch(a.QosProfile, b.QosProfile) { + if !util.StringsMatch(a.IpRange, b.IpRange) { return false } - if !util.StringsMatch(a.IpRange, b.IpRange) { + if !util.StringsMatch(a.GroupId, b.GroupId) { return false } - if !util.StringsMatch(a.AsNumber, b.AsNumber) { + if !util.StringsMatch(a.Interface, b.Interface) { return false } - if !util.StringsMatch(a.LinkTag, b.LinkTag) { + if !util.StringsMatch(a.AsNumber, b.AsNumber) { return false } return true diff --git a/policies/rules/decryption/entry.go b/policies/rules/decryption/entry.go index f5e7a7e..5abaf23 100644 --- a/policies/rules/decryption/entry.go +++ b/policies/rules/decryption/entry.go @@ -289,12 +289,6 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["Target"]; ok { nestedTarget.Misc = o.Misc["Target"] } - if o.Target.Negate != nil { - nestedTarget.Negate = util.YesNo(o.Target.Negate, nil) - } - if o.Target.Tags != nil { - nestedTarget.Tags = util.StrToMem(o.Target.Tags) - } if o.Target.Devices != nil { nestedTarget.Devices = []TargetDevicesXml{} for _, oTargetDevices := range o.Target.Devices { @@ -321,6 +315,12 @@ func specifyEntry(o *Entry) (any, error) { nestedTarget.Devices = append(nestedTarget.Devices, nestedTargetDevices) } } + if o.Target.Negate != nil { + nestedTarget.Negate = util.YesNo(o.Target.Negate, nil) + } + if o.Target.Tags != nil { + nestedTarget.Tags = util.StrToMem(o.Target.Tags) + } } entry.Target = nestedTarget @@ -402,6 +402,9 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oTargetDevices.Misc != nil { entry.Misc["TargetDevices"] = oTargetDevices.Misc } + if oTargetDevices.Name != "" { + nestedTargetDevices.Name = oTargetDevices.Name + } if oTargetDevices.Vsys != nil { nestedTargetDevices.Vsys = []TargetDevicesVsys{} for _, oTargetDevicesVsys := range oTargetDevices.Vsys { @@ -415,9 +418,6 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { nestedTargetDevices.Vsys = append(nestedTargetDevices.Vsys, nestedTargetDevicesVsys) } } - if oTargetDevices.Name != "" { - nestedTargetDevices.Name = oTargetDevices.Name - } nestedTarget.Devices = append(nestedTarget.Devices, nestedTargetDevices) } } @@ -605,7 +605,7 @@ func matchTarget(a *Target, b *Target) bool { } return true } -func matchTypeSslForwardProxy(a *TypeSslForwardProxy, b *TypeSslForwardProxy) bool { +func matchTypeSshProxy(a *TypeSshProxy, b *TypeSshProxy) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -613,23 +613,23 @@ func matchTypeSslForwardProxy(a *TypeSslForwardProxy, b *TypeSslForwardProxy) bo } return true } -func matchTypeSslInboundInspection(a *TypeSslInboundInspection, b *TypeSslInboundInspection) bool { +func matchTypeSslForwardProxy(a *TypeSslForwardProxy, b *TypeSslForwardProxy) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.OrderedListsMatch(a.Certificates, b.Certificates) { - return false - } return true } -func matchTypeSshProxy(a *TypeSshProxy, b *TypeSshProxy) bool { +func matchTypeSslInboundInspection(a *TypeSslInboundInspection, b *TypeSslInboundInspection) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } + if !util.OrderedListsMatch(a.Certificates, b.Certificates) { + return false + } return true } func matchType(a *Type, b *Type) bool { @@ -638,15 +638,15 @@ func matchType(a *Type, b *Type) bool { } else if a == nil && b == nil { return true } - if !matchTypeSshProxy(a.SshProxy, b.SshProxy) { - return false - } if !matchTypeSslForwardProxy(a.SslForwardProxy, b.SslForwardProxy) { return false } if !matchTypeSslInboundInspection(a.SslInboundInspection, b.SslInboundInspection) { return false } + if !matchTypeSshProxy(a.SshProxy, b.SshProxy) { + return false + } return true } diff --git a/policies/rules/nat/entry.go b/policies/rules/nat/entry.go index 86e9977..031f085 100644 --- a/policies/rules/nat/entry.go +++ b/policies/rules/nat/entry.go @@ -316,9 +316,6 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["SourceTranslationDynamicIpFallback"]; ok { nestedSourceTranslation.DynamicIp.Fallback.Misc = o.Misc["SourceTranslationDynamicIpFallback"] } - if o.SourceTranslation.DynamicIp.Fallback.TranslatedAddress != nil { - nestedSourceTranslation.DynamicIp.Fallback.TranslatedAddress = util.StrToMem(o.SourceTranslation.DynamicIp.Fallback.TranslatedAddress) - } if o.SourceTranslation.DynamicIp.Fallback.InterfaceAddress != nil { nestedSourceTranslation.DynamicIp.Fallback.InterfaceAddress = &SourceTranslationDynamicIpFallbackInterfaceAddressXml{} if _, ok := o.Misc["SourceTranslationDynamicIpFallbackInterfaceAddress"]; ok { @@ -327,12 +324,15 @@ func specifyEntry(o *Entry) (any, error) { if o.SourceTranslation.DynamicIp.Fallback.InterfaceAddress.Interface != nil { nestedSourceTranslation.DynamicIp.Fallback.InterfaceAddress.Interface = o.SourceTranslation.DynamicIp.Fallback.InterfaceAddress.Interface } - if o.SourceTranslation.DynamicIp.Fallback.InterfaceAddress.FloatingIp != nil { - nestedSourceTranslation.DynamicIp.Fallback.InterfaceAddress.FloatingIp = o.SourceTranslation.DynamicIp.Fallback.InterfaceAddress.FloatingIp - } if o.SourceTranslation.DynamicIp.Fallback.InterfaceAddress.Ip != nil { nestedSourceTranslation.DynamicIp.Fallback.InterfaceAddress.Ip = o.SourceTranslation.DynamicIp.Fallback.InterfaceAddress.Ip } + if o.SourceTranslation.DynamicIp.Fallback.InterfaceAddress.FloatingIp != nil { + nestedSourceTranslation.DynamicIp.Fallback.InterfaceAddress.FloatingIp = o.SourceTranslation.DynamicIp.Fallback.InterfaceAddress.FloatingIp + } + } + if o.SourceTranslation.DynamicIp.Fallback.TranslatedAddress != nil { + nestedSourceTranslation.DynamicIp.Fallback.TranslatedAddress = util.StrToMem(o.SourceTranslation.DynamicIp.Fallback.TranslatedAddress) } } if o.SourceTranslation.DynamicIp.TranslatedAddress != nil { @@ -429,6 +429,12 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["DestinationTranslation"]; ok { nestedDestinationTranslation.Misc = o.Misc["DestinationTranslation"] } + if o.DestinationTranslation.TranslatedAddress != nil { + nestedDestinationTranslation.TranslatedAddress = o.DestinationTranslation.TranslatedAddress + } + if o.DestinationTranslation.TranslatedPort != nil { + nestedDestinationTranslation.TranslatedPort = o.DestinationTranslation.TranslatedPort + } if o.DestinationTranslation.DnsRewrite != nil { nestedDestinationTranslation.DnsRewrite = &DestinationTranslationDnsRewriteXml{} if _, ok := o.Misc["DestinationTranslationDnsRewrite"]; ok { @@ -438,12 +444,6 @@ func specifyEntry(o *Entry) (any, error) { nestedDestinationTranslation.DnsRewrite.Direction = o.DestinationTranslation.DnsRewrite.Direction } } - if o.DestinationTranslation.TranslatedAddress != nil { - nestedDestinationTranslation.TranslatedAddress = o.DestinationTranslation.TranslatedAddress - } - if o.DestinationTranslation.TranslatedPort != nil { - nestedDestinationTranslation.TranslatedPort = o.DestinationTranslation.TranslatedPort - } } entry.DestinationTranslation = nestedDestinationTranslation @@ -453,15 +453,15 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["DynamicDestinationTranslation"]; ok { nestedDynamicDestinationTranslation.Misc = o.Misc["DynamicDestinationTranslation"] } + if o.DynamicDestinationTranslation.TranslatedPort != nil { + nestedDynamicDestinationTranslation.TranslatedPort = o.DynamicDestinationTranslation.TranslatedPort + } if o.DynamicDestinationTranslation.Distribution != nil { nestedDynamicDestinationTranslation.Distribution = o.DynamicDestinationTranslation.Distribution } if o.DynamicDestinationTranslation.TranslatedAddress != nil { nestedDynamicDestinationTranslation.TranslatedAddress = o.DynamicDestinationTranslation.TranslatedAddress } - if o.DynamicDestinationTranslation.TranslatedPort != nil { - nestedDynamicDestinationTranslation.TranslatedPort = o.DynamicDestinationTranslation.TranslatedPort - } } entry.DynamicDestinationTranslation = nestedDynamicDestinationTranslation @@ -492,14 +492,23 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.SourceTranslation.Misc != nil { entry.Misc["SourceTranslation"] = o.SourceTranslation.Misc } + if o.SourceTranslation.StaticIp != nil { + nestedSourceTranslation.StaticIp = &SourceTranslationStaticIp{} + if o.SourceTranslation.StaticIp.Misc != nil { + entry.Misc["SourceTranslationStaticIp"] = o.SourceTranslation.StaticIp.Misc + } + if o.SourceTranslation.StaticIp.BiDirectional != nil { + nestedSourceTranslation.StaticIp.BiDirectional = o.SourceTranslation.StaticIp.BiDirectional + } + if o.SourceTranslation.StaticIp.TranslatedAddress != nil { + nestedSourceTranslation.StaticIp.TranslatedAddress = o.SourceTranslation.StaticIp.TranslatedAddress + } + } if o.SourceTranslation.DynamicIp != nil { nestedSourceTranslation.DynamicIp = &SourceTranslationDynamicIp{} if o.SourceTranslation.DynamicIp.Misc != nil { entry.Misc["SourceTranslationDynamicIp"] = o.SourceTranslation.DynamicIp.Misc } - if o.SourceTranslation.DynamicIp.TranslatedAddress != nil { - nestedSourceTranslation.DynamicIp.TranslatedAddress = util.MemToStr(o.SourceTranslation.DynamicIp.TranslatedAddress) - } if o.SourceTranslation.DynamicIp.Fallback != nil { nestedSourceTranslation.DynamicIp.Fallback = &SourceTranslationDynamicIpFallback{} if o.SourceTranslation.DynamicIp.Fallback.Misc != nil { @@ -524,6 +533,9 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { nestedSourceTranslation.DynamicIp.Fallback.TranslatedAddress = util.MemToStr(o.SourceTranslation.DynamicIp.Fallback.TranslatedAddress) } } + if o.SourceTranslation.DynamicIp.TranslatedAddress != nil { + nestedSourceTranslation.DynamicIp.TranslatedAddress = util.MemToStr(o.SourceTranslation.DynamicIp.TranslatedAddress) + } } if o.SourceTranslation.DynamicIpAndPort != nil { nestedSourceTranslation.DynamicIpAndPort = &SourceTranslationDynamicIpAndPort{} @@ -549,18 +561,6 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { nestedSourceTranslation.DynamicIpAndPort.TranslatedAddress = util.MemToStr(o.SourceTranslation.DynamicIpAndPort.TranslatedAddress) } } - if o.SourceTranslation.StaticIp != nil { - nestedSourceTranslation.StaticIp = &SourceTranslationStaticIp{} - if o.SourceTranslation.StaticIp.Misc != nil { - entry.Misc["SourceTranslationStaticIp"] = o.SourceTranslation.StaticIp.Misc - } - if o.SourceTranslation.StaticIp.BiDirectional != nil { - nestedSourceTranslation.StaticIp.BiDirectional = o.SourceTranslation.StaticIp.BiDirectional - } - if o.SourceTranslation.StaticIp.TranslatedAddress != nil { - nestedSourceTranslation.StaticIp.TranslatedAddress = o.SourceTranslation.StaticIp.TranslatedAddress - } - } } entry.SourceTranslation = nestedSourceTranslation @@ -571,9 +571,6 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.Target.Misc != nil { entry.Misc["Target"] = o.Target.Misc } - if o.Target.Tags != nil { - nestedTarget.Tags = util.MemToStr(o.Target.Tags) - } if o.Target.Devices != nil { nestedTarget.Devices = []TargetDevices{} for _, oTargetDevices := range o.Target.Devices { @@ -581,9 +578,6 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oTargetDevices.Misc != nil { entry.Misc["TargetDevices"] = oTargetDevices.Misc } - if oTargetDevices.Name != "" { - nestedTargetDevices.Name = oTargetDevices.Name - } if oTargetDevices.Vsys != nil { nestedTargetDevices.Vsys = []TargetDevicesVsys{} for _, oTargetDevicesVsys := range oTargetDevices.Vsys { @@ -597,12 +591,18 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { nestedTargetDevices.Vsys = append(nestedTargetDevices.Vsys, nestedTargetDevicesVsys) } } + if oTargetDevices.Name != "" { + nestedTargetDevices.Name = oTargetDevices.Name + } nestedTarget.Devices = append(nestedTarget.Devices, nestedTargetDevices) } } if o.Target.Negate != nil { nestedTarget.Negate = util.AsBool(o.Target.Negate, nil) } + if o.Target.Tags != nil { + nestedTarget.Tags = util.MemToStr(o.Target.Tags) + } } entry.Target = nestedTarget @@ -615,6 +615,12 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.DestinationTranslation.Misc != nil { entry.Misc["DestinationTranslation"] = o.DestinationTranslation.Misc } + if o.DestinationTranslation.TranslatedAddress != nil { + nestedDestinationTranslation.TranslatedAddress = o.DestinationTranslation.TranslatedAddress + } + if o.DestinationTranslation.TranslatedPort != nil { + nestedDestinationTranslation.TranslatedPort = o.DestinationTranslation.TranslatedPort + } if o.DestinationTranslation.DnsRewrite != nil { nestedDestinationTranslation.DnsRewrite = &DestinationTranslationDnsRewrite{} if o.DestinationTranslation.DnsRewrite.Misc != nil { @@ -624,12 +630,6 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { nestedDestinationTranslation.DnsRewrite.Direction = o.DestinationTranslation.DnsRewrite.Direction } } - if o.DestinationTranslation.TranslatedAddress != nil { - nestedDestinationTranslation.TranslatedAddress = o.DestinationTranslation.TranslatedAddress - } - if o.DestinationTranslation.TranslatedPort != nil { - nestedDestinationTranslation.TranslatedPort = o.DestinationTranslation.TranslatedPort - } } entry.DestinationTranslation = nestedDestinationTranslation @@ -745,10 +745,10 @@ func matchSourceTranslationDynamicIpFallback(a *SourceTranslationDynamicIpFallba } else if a == nil && b == nil { return true } - if !util.OrderedListsMatch(a.TranslatedAddress, b.TranslatedAddress) { + if !matchSourceTranslationDynamicIpFallbackInterfaceAddress(a.InterfaceAddress, b.InterfaceAddress) { return false } - if !matchSourceTranslationDynamicIpFallbackInterfaceAddress(a.InterfaceAddress, b.InterfaceAddress) { + if !util.OrderedListsMatch(a.TranslatedAddress, b.TranslatedAddress) { return false } return true @@ -759,10 +759,10 @@ func matchSourceTranslationDynamicIp(a *SourceTranslationDynamicIp, b *SourceTra } else if a == nil && b == nil { return true } - if !util.OrderedListsMatch(a.TranslatedAddress, b.TranslatedAddress) { + if !matchSourceTranslationDynamicIpFallback(a.Fallback, b.Fallback) { return false } - if !matchSourceTranslationDynamicIpFallback(a.Fallback, b.Fallback) { + if !util.OrderedListsMatch(a.TranslatedAddress, b.TranslatedAddress) { return false } return true @@ -818,13 +818,13 @@ func matchSourceTranslation(a *SourceTranslation, b *SourceTranslation) bool { } else if a == nil && b == nil { return true } - if !matchSourceTranslationStaticIp(a.StaticIp, b.StaticIp) { + if !matchSourceTranslationDynamicIpAndPort(a.DynamicIpAndPort, b.DynamicIpAndPort) { return false } - if !matchSourceTranslationDynamicIp(a.DynamicIp, b.DynamicIp) { + if !matchSourceTranslationStaticIp(a.StaticIp, b.StaticIp) { return false } - if !matchSourceTranslationDynamicIpAndPort(a.DynamicIpAndPort, b.DynamicIpAndPort) { + if !matchSourceTranslationDynamicIp(a.DynamicIp, b.DynamicIp) { return false } return true diff --git a/policies/rules/security/entry.go b/policies/rules/security/entry.go index 3ee03d9..91169c9 100644 --- a/policies/rules/security/entry.go +++ b/policies/rules/security/entry.go @@ -375,32 +375,32 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["ProfileSettingProfiles"]; ok { nestedProfileSetting.Profiles.Misc = o.Misc["ProfileSettingProfiles"] } - if o.ProfileSetting.Profiles.Vulnerability != nil { - nestedProfileSetting.Profiles.Vulnerability = util.StrToMem(o.ProfileSetting.Profiles.Vulnerability) - } - if o.ProfileSetting.Profiles.DataFiltering != nil { - nestedProfileSetting.Profiles.DataFiltering = util.StrToMem(o.ProfileSetting.Profiles.DataFiltering) - } if o.ProfileSetting.Profiles.Gtp != nil { nestedProfileSetting.Profiles.Gtp = util.StrToMem(o.ProfileSetting.Profiles.Gtp) } - if o.ProfileSetting.Profiles.Spyware != nil { - nestedProfileSetting.Profiles.Spyware = util.StrToMem(o.ProfileSetting.Profiles.Spyware) + if o.ProfileSetting.Profiles.Virus != nil { + nestedProfileSetting.Profiles.Virus = util.StrToMem(o.ProfileSetting.Profiles.Virus) + } + if o.ProfileSetting.Profiles.Vulnerability != nil { + nestedProfileSetting.Profiles.Vulnerability = util.StrToMem(o.ProfileSetting.Profiles.Vulnerability) } if o.ProfileSetting.Profiles.UrlFiltering != nil { nestedProfileSetting.Profiles.UrlFiltering = util.StrToMem(o.ProfileSetting.Profiles.UrlFiltering) } + if o.ProfileSetting.Profiles.WildfireAnalysis != nil { + nestedProfileSetting.Profiles.WildfireAnalysis = util.StrToMem(o.ProfileSetting.Profiles.WildfireAnalysis) + } + if o.ProfileSetting.Profiles.DataFiltering != nil { + nestedProfileSetting.Profiles.DataFiltering = util.StrToMem(o.ProfileSetting.Profiles.DataFiltering) + } if o.ProfileSetting.Profiles.FileBlocking != nil { nestedProfileSetting.Profiles.FileBlocking = util.StrToMem(o.ProfileSetting.Profiles.FileBlocking) } if o.ProfileSetting.Profiles.Sctp != nil { nestedProfileSetting.Profiles.Sctp = util.StrToMem(o.ProfileSetting.Profiles.Sctp) } - if o.ProfileSetting.Profiles.Virus != nil { - nestedProfileSetting.Profiles.Virus = util.StrToMem(o.ProfileSetting.Profiles.Virus) - } - if o.ProfileSetting.Profiles.WildfireAnalysis != nil { - nestedProfileSetting.Profiles.WildfireAnalysis = util.StrToMem(o.ProfileSetting.Profiles.WildfireAnalysis) + if o.ProfileSetting.Profiles.Spyware != nil { + nestedProfileSetting.Profiles.Spyware = util.StrToMem(o.ProfileSetting.Profiles.Spyware) } } } @@ -530,29 +530,29 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.ProfileSetting.Profiles.Misc != nil { entry.Misc["ProfileSettingProfiles"] = o.ProfileSetting.Profiles.Misc } - if o.ProfileSetting.Profiles.DataFiltering != nil { - nestedProfileSetting.Profiles.DataFiltering = util.MemToStr(o.ProfileSetting.Profiles.DataFiltering) - } if o.ProfileSetting.Profiles.Gtp != nil { nestedProfileSetting.Profiles.Gtp = util.MemToStr(o.ProfileSetting.Profiles.Gtp) } - if o.ProfileSetting.Profiles.Spyware != nil { - nestedProfileSetting.Profiles.Spyware = util.MemToStr(o.ProfileSetting.Profiles.Spyware) - } - if o.ProfileSetting.Profiles.UrlFiltering != nil { - nestedProfileSetting.Profiles.UrlFiltering = util.MemToStr(o.ProfileSetting.Profiles.UrlFiltering) + if o.ProfileSetting.Profiles.Virus != nil { + nestedProfileSetting.Profiles.Virus = util.MemToStr(o.ProfileSetting.Profiles.Virus) } if o.ProfileSetting.Profiles.Vulnerability != nil { nestedProfileSetting.Profiles.Vulnerability = util.MemToStr(o.ProfileSetting.Profiles.Vulnerability) } + if o.ProfileSetting.Profiles.DataFiltering != nil { + nestedProfileSetting.Profiles.DataFiltering = util.MemToStr(o.ProfileSetting.Profiles.DataFiltering) + } if o.ProfileSetting.Profiles.FileBlocking != nil { nestedProfileSetting.Profiles.FileBlocking = util.MemToStr(o.ProfileSetting.Profiles.FileBlocking) } if o.ProfileSetting.Profiles.Sctp != nil { nestedProfileSetting.Profiles.Sctp = util.MemToStr(o.ProfileSetting.Profiles.Sctp) } - if o.ProfileSetting.Profiles.Virus != nil { - nestedProfileSetting.Profiles.Virus = util.MemToStr(o.ProfileSetting.Profiles.Virus) + if o.ProfileSetting.Profiles.Spyware != nil { + nestedProfileSetting.Profiles.Spyware = util.MemToStr(o.ProfileSetting.Profiles.Spyware) + } + if o.ProfileSetting.Profiles.UrlFiltering != nil { + nestedProfileSetting.Profiles.UrlFiltering = util.MemToStr(o.ProfileSetting.Profiles.UrlFiltering) } if o.ProfileSetting.Profiles.WildfireAnalysis != nil { nestedProfileSetting.Profiles.WildfireAnalysis = util.MemToStr(o.ProfileSetting.Profiles.WildfireAnalysis) @@ -758,38 +758,52 @@ func SpecMatches(a, b *Entry) bool { return true } -func matchQosMarkingFollowC2sFlow(a *QosMarkingFollowC2sFlow, b *QosMarkingFollowC2sFlow) bool { +func matchTargetDevicesVsys(a []TargetDevicesVsys, b []TargetDevicesVsys) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } + for _, a := range a { + for _, b := range b { + if !util.StringsEqual(a.Name, b.Name) { + return false + } + } + } return true } -func matchQosMarking(a *QosMarking, b *QosMarking) bool { +func matchTargetDevices(a []TargetDevices, b []TargetDevices) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchQosMarkingFollowC2sFlow(a.FollowC2sFlow, b.FollowC2sFlow) { - return false - } - if !util.StringsMatch(a.IpDscp, b.IpDscp) { - return false - } - if !util.StringsMatch(a.IpPrecedence, b.IpPrecedence) { - return false + for _, a := range a { + for _, b := range b { + if !util.StringsEqual(a.Name, b.Name) { + return false + } + if !matchTargetDevicesVsys(a.Vsys, b.Vsys) { + return false + } + } } return true } -func matchQos(a *Qos, b *Qos) bool { +func matchTarget(a *Target, b *Target) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchQosMarking(a.Marking, b.Marking) { + if !util.BoolsMatch(a.Negate, b.Negate) { + return false + } + if !util.OrderedListsMatch(a.Tags, b.Tags) { + return false + } + if !matchTargetDevices(a.Devices, b.Devices) { return false } return true @@ -800,31 +814,31 @@ func matchProfileSettingProfiles(a *ProfileSettingProfiles, b *ProfileSettingPro } else if a == nil && b == nil { return true } - if !util.OrderedListsMatch(a.WildfireAnalysis, b.WildfireAnalysis) { - return false - } if !util.OrderedListsMatch(a.FileBlocking, b.FileBlocking) { return false } if !util.OrderedListsMatch(a.Sctp, b.Sctp) { return false } - if !util.OrderedListsMatch(a.Virus, b.Virus) { + if !util.OrderedListsMatch(a.Spyware, b.Spyware) { return false } if !util.OrderedListsMatch(a.UrlFiltering, b.UrlFiltering) { return false } - if !util.OrderedListsMatch(a.Vulnerability, b.Vulnerability) { + if !util.OrderedListsMatch(a.WildfireAnalysis, b.WildfireAnalysis) { return false } if !util.OrderedListsMatch(a.DataFiltering, b.DataFiltering) { return false } - if !util.OrderedListsMatch(a.Gtp, b.Gtp) { + if !util.OrderedListsMatch(a.Virus, b.Virus) { return false } - if !util.OrderedListsMatch(a.Spyware, b.Spyware) { + if !util.OrderedListsMatch(a.Vulnerability, b.Vulnerability) { + return false + } + if !util.OrderedListsMatch(a.Gtp, b.Gtp) { return false } return true @@ -835,60 +849,46 @@ func matchProfileSetting(a *ProfileSetting, b *ProfileSetting) bool { } else if a == nil && b == nil { return true } - if !util.OrderedListsMatch(a.Group, b.Group) { + if !matchProfileSettingProfiles(a.Profiles, b.Profiles) { return false } - if !matchProfileSettingProfiles(a.Profiles, b.Profiles) { + if !util.OrderedListsMatch(a.Group, b.Group) { return false } return true } -func matchTargetDevicesVsys(a []TargetDevicesVsys, b []TargetDevicesVsys) bool { +func matchQosMarkingFollowC2sFlow(a *QosMarkingFollowC2sFlow, b *QosMarkingFollowC2sFlow) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - for _, a := range a { - for _, b := range b { - if !util.StringsEqual(a.Name, b.Name) { - return false - } - } - } return true } -func matchTargetDevices(a []TargetDevices, b []TargetDevices) bool { +func matchQosMarking(a *QosMarking, b *QosMarking) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - for _, a := range a { - for _, b := range b { - if !util.StringsEqual(a.Name, b.Name) { - return false - } - if !matchTargetDevicesVsys(a.Vsys, b.Vsys) { - return false - } - } + if !matchQosMarkingFollowC2sFlow(a.FollowC2sFlow, b.FollowC2sFlow) { + return false + } + if !util.StringsMatch(a.IpDscp, b.IpDscp) { + return false + } + if !util.StringsMatch(a.IpPrecedence, b.IpPrecedence) { + return false } return true } -func matchTarget(a *Target, b *Target) bool { +func matchQos(a *Qos, b *Qos) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchTargetDevices(a.Devices, b.Devices) { - return false - } - if !util.BoolsMatch(a.Negate, b.Negate) { - return false - } - if !util.OrderedListsMatch(a.Tags, b.Tags) { + if !matchQosMarking(a.Marking, b.Marking) { return false } return true diff --git a/security/profiles/spyware/entry.go b/security/profiles/spyware/entry.go index e33f05e..14e1fac 100644 --- a/security/profiles/spyware/entry.go +++ b/security/profiles/spyware/entry.go @@ -719,17 +719,17 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["BotnetDomainsLists"]; ok { nestedBotnetDomainsLists.Misc = o.Misc["BotnetDomainsLists"] } + if oBotnetDomainsLists.PacketCapture != nil { + nestedBotnetDomainsLists.PacketCapture = oBotnetDomainsLists.PacketCapture + } + if oBotnetDomainsLists.Name != "" { + nestedBotnetDomainsLists.Name = oBotnetDomainsLists.Name + } if oBotnetDomainsLists.Action != nil { nestedBotnetDomainsLists.Action = &BotnetDomainsListsActionXml{} if _, ok := o.Misc["BotnetDomainsListsAction"]; ok { nestedBotnetDomainsLists.Action.Misc = o.Misc["BotnetDomainsListsAction"] } - if oBotnetDomainsLists.Action.Alert != nil { - nestedBotnetDomainsLists.Action.Alert = &BotnetDomainsListsActionAlertXml{} - if _, ok := o.Misc["BotnetDomainsListsActionAlert"]; ok { - nestedBotnetDomainsLists.Action.Alert.Misc = o.Misc["BotnetDomainsListsActionAlert"] - } - } if oBotnetDomainsLists.Action.Allow != nil { nestedBotnetDomainsLists.Action.Allow = &BotnetDomainsListsActionAllowXml{} if _, ok := o.Misc["BotnetDomainsListsActionAllow"]; ok { @@ -748,12 +748,12 @@ func specifyEntry(o *Entry) (any, error) { nestedBotnetDomainsLists.Action.Sinkhole.Misc = o.Misc["BotnetDomainsListsActionSinkhole"] } } - } - if oBotnetDomainsLists.PacketCapture != nil { - nestedBotnetDomainsLists.PacketCapture = oBotnetDomainsLists.PacketCapture - } - if oBotnetDomainsLists.Name != "" { - nestedBotnetDomainsLists.Name = oBotnetDomainsLists.Name + if oBotnetDomainsLists.Action.Alert != nil { + nestedBotnetDomainsLists.Action.Alert = &BotnetDomainsListsActionAlertXml{} + if _, ok := o.Misc["BotnetDomainsListsActionAlert"]; ok { + nestedBotnetDomainsLists.Action.Alert.Misc = o.Misc["BotnetDomainsListsActionAlert"] + } + } } nestedBotnetDomains.Lists = append(nestedBotnetDomains.Lists, nestedBotnetDomainsLists) } @@ -793,6 +793,18 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["Rules"]; ok { nestedRules.Misc = o.Misc["Rules"] } + if oRules.ThreatName != nil { + nestedRules.ThreatName = oRules.ThreatName + } + if oRules.Category != nil { + nestedRules.Category = oRules.Category + } + if oRules.PacketCapture != nil { + nestedRules.PacketCapture = oRules.PacketCapture + } + if oRules.Severity != nil { + nestedRules.Severity = util.StrToMem(oRules.Severity) + } if oRules.Action != nil { nestedRules.Action = &RulesActionXml{} if _, ok := o.Misc["RulesAction"]; ok { @@ -856,18 +868,6 @@ func specifyEntry(o *Entry) (any, error) { if oRules.Name != "" { nestedRules.Name = oRules.Name } - if oRules.ThreatName != nil { - nestedRules.ThreatName = oRules.ThreatName - } - if oRules.Category != nil { - nestedRules.Category = oRules.Category - } - if oRules.PacketCapture != nil { - nestedRules.PacketCapture = oRules.PacketCapture - } - if oRules.Severity != nil { - nestedRules.Severity = util.StrToMem(oRules.Severity) - } nestedRulesCol = append(nestedRulesCol, nestedRules) } entry.Rules = nestedRulesCol @@ -881,25 +881,6 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["ThreatException"]; ok { nestedThreatException.Misc = o.Misc["ThreatException"] } - if oThreatException.ExemptIp != nil { - nestedThreatException.ExemptIp = []ThreatExceptionExemptIpXml{} - for _, oThreatExceptionExemptIp := range oThreatException.ExemptIp { - nestedThreatExceptionExemptIp := ThreatExceptionExemptIpXml{} - if _, ok := o.Misc["ThreatExceptionExemptIp"]; ok { - nestedThreatExceptionExemptIp.Misc = o.Misc["ThreatExceptionExemptIp"] - } - if oThreatExceptionExemptIp.Name != "" { - nestedThreatExceptionExemptIp.Name = oThreatExceptionExemptIp.Name - } - nestedThreatException.ExemptIp = append(nestedThreatException.ExemptIp, nestedThreatExceptionExemptIp) - } - } - if oThreatException.Name != "" { - nestedThreatException.Name = oThreatException.Name - } - if oThreatException.PacketCapture != nil { - nestedThreatException.PacketCapture = oThreatException.PacketCapture - } if oThreatException.Action != nil { nestedThreatException.Action = &ThreatExceptionActionXml{} if _, ok := o.Misc["ThreatExceptionAction"]; ok { @@ -916,12 +897,12 @@ func specifyEntry(o *Entry) (any, error) { if _, ok := o.Misc["ThreatExceptionActionBlockIp"]; ok { nestedThreatException.Action.BlockIp.Misc = o.Misc["ThreatExceptionActionBlockIp"] } - if oThreatException.Action.BlockIp.TrackBy != nil { - nestedThreatException.Action.BlockIp.TrackBy = oThreatException.Action.BlockIp.TrackBy - } if oThreatException.Action.BlockIp.Duration != nil { nestedThreatException.Action.BlockIp.Duration = oThreatException.Action.BlockIp.Duration } + if oThreatException.Action.BlockIp.TrackBy != nil { + nestedThreatException.Action.BlockIp.TrackBy = oThreatException.Action.BlockIp.TrackBy + } } if oThreatException.Action.Default != nil { nestedThreatException.Action.Default = &ThreatExceptionActionDefaultXml{} @@ -960,6 +941,25 @@ func specifyEntry(o *Entry) (any, error) { } } } + if oThreatException.ExemptIp != nil { + nestedThreatException.ExemptIp = []ThreatExceptionExemptIpXml{} + for _, oThreatExceptionExemptIp := range oThreatException.ExemptIp { + nestedThreatExceptionExemptIp := ThreatExceptionExemptIpXml{} + if _, ok := o.Misc["ThreatExceptionExemptIp"]; ok { + nestedThreatExceptionExemptIp.Misc = o.Misc["ThreatExceptionExemptIp"] + } + if oThreatExceptionExemptIp.Name != "" { + nestedThreatExceptionExemptIp.Name = oThreatExceptionExemptIp.Name + } + nestedThreatException.ExemptIp = append(nestedThreatException.ExemptIp, nestedThreatExceptionExemptIp) + } + } + if oThreatException.Name != "" { + nestedThreatException.Name = oThreatException.Name + } + if oThreatException.PacketCapture != nil { + nestedThreatException.PacketCapture = oThreatException.PacketCapture + } nestedThreatExceptionCol = append(nestedThreatExceptionCol, nestedThreatException) } entry.ThreatException = nestedThreatExceptionCol @@ -979,6 +979,21 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { if _, ok := o.Misc["BotnetDomains"]; ok { nestedBotnetDomains.Misc = o.Misc["BotnetDomains"] } + if o.BotnetDomains.RtypeAction != nil { + nestedBotnetDomains.RtypeAction = &BotnetDomainsRtypeActionXml_11_0_2{} + if _, ok := o.Misc["BotnetDomainsRtypeAction"]; ok { + nestedBotnetDomains.RtypeAction.Misc = o.Misc["BotnetDomainsRtypeAction"] + } + if o.BotnetDomains.RtypeAction.Any != nil { + nestedBotnetDomains.RtypeAction.Any = o.BotnetDomains.RtypeAction.Any + } + if o.BotnetDomains.RtypeAction.Https != nil { + nestedBotnetDomains.RtypeAction.Https = o.BotnetDomains.RtypeAction.Https + } + if o.BotnetDomains.RtypeAction.Svcb != nil { + nestedBotnetDomains.RtypeAction.Svcb = o.BotnetDomains.RtypeAction.Svcb + } + } if o.BotnetDomains.DnsSecurityCategories != nil { nestedBotnetDomains.DnsSecurityCategories = []BotnetDomainsDnsSecurityCategoriesXml_11_0_2{} for _, oBotnetDomainsDnsSecurityCategories := range o.BotnetDomains.DnsSecurityCategories { @@ -1008,20 +1023,11 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { if _, ok := o.Misc["BotnetDomainsLists"]; ok { nestedBotnetDomainsLists.Misc = o.Misc["BotnetDomainsLists"] } - if oBotnetDomainsLists.Name != "" { - nestedBotnetDomainsLists.Name = oBotnetDomainsLists.Name - } if oBotnetDomainsLists.Action != nil { nestedBotnetDomainsLists.Action = &BotnetDomainsListsActionXml_11_0_2{} if _, ok := o.Misc["BotnetDomainsListsAction"]; ok { nestedBotnetDomainsLists.Action.Misc = o.Misc["BotnetDomainsListsAction"] } - if oBotnetDomainsLists.Action.Sinkhole != nil { - nestedBotnetDomainsLists.Action.Sinkhole = &BotnetDomainsListsActionSinkholeXml_11_0_2{} - if _, ok := o.Misc["BotnetDomainsListsActionSinkhole"]; ok { - nestedBotnetDomainsLists.Action.Sinkhole.Misc = o.Misc["BotnetDomainsListsActionSinkhole"] - } - } if oBotnetDomainsLists.Action.Alert != nil { nestedBotnetDomainsLists.Action.Alert = &BotnetDomainsListsActionAlertXml_11_0_2{} if _, ok := o.Misc["BotnetDomainsListsActionAlert"]; ok { @@ -1040,10 +1046,19 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { nestedBotnetDomainsLists.Action.Block.Misc = o.Misc["BotnetDomainsListsActionBlock"] } } + if oBotnetDomainsLists.Action.Sinkhole != nil { + nestedBotnetDomainsLists.Action.Sinkhole = &BotnetDomainsListsActionSinkholeXml_11_0_2{} + if _, ok := o.Misc["BotnetDomainsListsActionSinkhole"]; ok { + nestedBotnetDomainsLists.Action.Sinkhole.Misc = o.Misc["BotnetDomainsListsActionSinkhole"] + } + } } if oBotnetDomainsLists.PacketCapture != nil { nestedBotnetDomainsLists.PacketCapture = oBotnetDomainsLists.PacketCapture } + if oBotnetDomainsLists.Name != "" { + nestedBotnetDomainsLists.Name = oBotnetDomainsLists.Name + } nestedBotnetDomains.Lists = append(nestedBotnetDomains.Lists, nestedBotnetDomainsLists) } } @@ -1052,12 +1067,12 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { if _, ok := o.Misc["BotnetDomainsSinkhole"]; ok { nestedBotnetDomains.Sinkhole.Misc = o.Misc["BotnetDomainsSinkhole"] } - if o.BotnetDomains.Sinkhole.Ipv6Address != nil { - nestedBotnetDomains.Sinkhole.Ipv6Address = o.BotnetDomains.Sinkhole.Ipv6Address - } if o.BotnetDomains.Sinkhole.Ipv4Address != nil { nestedBotnetDomains.Sinkhole.Ipv4Address = o.BotnetDomains.Sinkhole.Ipv4Address } + if o.BotnetDomains.Sinkhole.Ipv6Address != nil { + nestedBotnetDomains.Sinkhole.Ipv6Address = o.BotnetDomains.Sinkhole.Ipv6Address + } } if o.BotnetDomains.ThreatException != nil { nestedBotnetDomains.ThreatException = []BotnetDomainsThreatExceptionXml_11_0_2{} @@ -1088,21 +1103,6 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { nestedBotnetDomains.Whitelist = append(nestedBotnetDomains.Whitelist, nestedBotnetDomainsWhitelist) } } - if o.BotnetDomains.RtypeAction != nil { - nestedBotnetDomains.RtypeAction = &BotnetDomainsRtypeActionXml_11_0_2{} - if _, ok := o.Misc["BotnetDomainsRtypeAction"]; ok { - nestedBotnetDomains.RtypeAction.Misc = o.Misc["BotnetDomainsRtypeAction"] - } - if o.BotnetDomains.RtypeAction.Svcb != nil { - nestedBotnetDomains.RtypeAction.Svcb = o.BotnetDomains.RtypeAction.Svcb - } - if o.BotnetDomains.RtypeAction.Any != nil { - nestedBotnetDomains.RtypeAction.Any = o.BotnetDomains.RtypeAction.Any - } - if o.BotnetDomains.RtypeAction.Https != nil { - nestedBotnetDomains.RtypeAction.Https = o.BotnetDomains.RtypeAction.Https - } - } } entry.BotnetDomains = nestedBotnetDomains @@ -1138,6 +1138,18 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { if _, ok := o.Misc["Rules"]; ok { nestedRules.Misc = o.Misc["Rules"] } + if oRules.Name != "" { + nestedRules.Name = oRules.Name + } + if oRules.ThreatName != nil { + nestedRules.ThreatName = oRules.ThreatName + } + if oRules.Category != nil { + nestedRules.Category = oRules.Category + } + if oRules.PacketCapture != nil { + nestedRules.PacketCapture = oRules.PacketCapture + } if oRules.Severity != nil { nestedRules.Severity = util.StrToMem(oRules.Severity) } @@ -1146,6 +1158,12 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { if _, ok := o.Misc["RulesAction"]; ok { nestedRules.Action.Misc = o.Misc["RulesAction"] } + if oRules.Action.Allow != nil { + nestedRules.Action.Allow = &RulesActionAllowXml_11_0_2{} + if _, ok := o.Misc["RulesActionAllow"]; ok { + nestedRules.Action.Allow.Misc = o.Misc["RulesActionAllow"] + } + } if oRules.Action.Alert != nil { nestedRules.Action.Alert = &RulesActionAlertXml_11_0_2{} if _, ok := o.Misc["RulesActionAlert"]; ok { @@ -1194,24 +1212,6 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { nestedRules.Action.Default.Misc = o.Misc["RulesActionDefault"] } } - if oRules.Action.Allow != nil { - nestedRules.Action.Allow = &RulesActionAllowXml_11_0_2{} - if _, ok := o.Misc["RulesActionAllow"]; ok { - nestedRules.Action.Allow.Misc = o.Misc["RulesActionAllow"] - } - } - } - if oRules.Name != "" { - nestedRules.Name = oRules.Name - } - if oRules.ThreatName != nil { - nestedRules.ThreatName = oRules.ThreatName - } - if oRules.Category != nil { - nestedRules.Category = oRules.Category - } - if oRules.PacketCapture != nil { - nestedRules.PacketCapture = oRules.PacketCapture } nestedRulesCol = append(nestedRulesCol, nestedRules) } @@ -1226,6 +1226,9 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { if _, ok := o.Misc["ThreatException"]; ok { nestedThreatException.Misc = o.Misc["ThreatException"] } + if oThreatException.Name != "" { + nestedThreatException.Name = oThreatException.Name + } if oThreatException.PacketCapture != nil { nestedThreatException.PacketCapture = oThreatException.PacketCapture } @@ -1234,6 +1237,30 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { if _, ok := o.Misc["ThreatExceptionAction"]; ok { nestedThreatException.Action.Misc = o.Misc["ThreatExceptionAction"] } + if oThreatException.Action.Drop != nil { + nestedThreatException.Action.Drop = &ThreatExceptionActionDropXml_11_0_2{} + if _, ok := o.Misc["ThreatExceptionActionDrop"]; ok { + nestedThreatException.Action.Drop.Misc = o.Misc["ThreatExceptionActionDrop"] + } + } + if oThreatException.Action.ResetBoth != nil { + nestedThreatException.Action.ResetBoth = &ThreatExceptionActionResetBothXml_11_0_2{} + if _, ok := o.Misc["ThreatExceptionActionResetBoth"]; ok { + nestedThreatException.Action.ResetBoth.Misc = o.Misc["ThreatExceptionActionResetBoth"] + } + } + if oThreatException.Action.ResetClient != nil { + nestedThreatException.Action.ResetClient = &ThreatExceptionActionResetClientXml_11_0_2{} + if _, ok := o.Misc["ThreatExceptionActionResetClient"]; ok { + nestedThreatException.Action.ResetClient.Misc = o.Misc["ThreatExceptionActionResetClient"] + } + } + if oThreatException.Action.ResetServer != nil { + nestedThreatException.Action.ResetServer = &ThreatExceptionActionResetServerXml_11_0_2{} + if _, ok := o.Misc["ThreatExceptionActionResetServer"]; ok { + nestedThreatException.Action.ResetServer.Misc = o.Misc["ThreatExceptionActionResetServer"] + } + } if oThreatException.Action.BlockIp != nil { nestedThreatException.Action.BlockIp = &ThreatExceptionActionBlockIpXml_11_0_2{} if _, ok := o.Misc["ThreatExceptionActionBlockIp"]; ok { @@ -1264,30 +1291,6 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { nestedThreatException.Action.Alert.Misc = o.Misc["ThreatExceptionActionAlert"] } } - if oThreatException.Action.Drop != nil { - nestedThreatException.Action.Drop = &ThreatExceptionActionDropXml_11_0_2{} - if _, ok := o.Misc["ThreatExceptionActionDrop"]; ok { - nestedThreatException.Action.Drop.Misc = o.Misc["ThreatExceptionActionDrop"] - } - } - if oThreatException.Action.ResetBoth != nil { - nestedThreatException.Action.ResetBoth = &ThreatExceptionActionResetBothXml_11_0_2{} - if _, ok := o.Misc["ThreatExceptionActionResetBoth"]; ok { - nestedThreatException.Action.ResetBoth.Misc = o.Misc["ThreatExceptionActionResetBoth"] - } - } - if oThreatException.Action.ResetClient != nil { - nestedThreatException.Action.ResetClient = &ThreatExceptionActionResetClientXml_11_0_2{} - if _, ok := o.Misc["ThreatExceptionActionResetClient"]; ok { - nestedThreatException.Action.ResetClient.Misc = o.Misc["ThreatExceptionActionResetClient"] - } - } - if oThreatException.Action.ResetServer != nil { - nestedThreatException.Action.ResetServer = &ThreatExceptionActionResetServerXml_11_0_2{} - if _, ok := o.Misc["ThreatExceptionActionResetServer"]; ok { - nestedThreatException.Action.ResetServer.Misc = o.Misc["ThreatExceptionActionResetServer"] - } - } } if oThreatException.ExemptIp != nil { nestedThreatException.ExemptIp = []ThreatExceptionExemptIpXml_11_0_2{} @@ -1302,9 +1305,6 @@ func specifyEntry_11_0_2(o *Entry) (any, error) { nestedThreatException.ExemptIp = append(nestedThreatException.ExemptIp, nestedThreatExceptionExemptIp) } } - if oThreatException.Name != "" { - nestedThreatException.Name = oThreatException.Name - } nestedThreatExceptionCol = append(nestedThreatExceptionCol, nestedThreatException) } entry.ThreatException = nestedThreatExceptionCol @@ -1327,6 +1327,18 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if o.BotnetDomains.Misc != nil { entry.Misc["BotnetDomains"] = o.BotnetDomains.Misc } + if o.BotnetDomains.Sinkhole != nil { + nestedBotnetDomains.Sinkhole = &BotnetDomainsSinkhole{} + if o.BotnetDomains.Sinkhole.Misc != nil { + entry.Misc["BotnetDomainsSinkhole"] = o.BotnetDomains.Sinkhole.Misc + } + if o.BotnetDomains.Sinkhole.Ipv4Address != nil { + nestedBotnetDomains.Sinkhole.Ipv4Address = o.BotnetDomains.Sinkhole.Ipv4Address + } + if o.BotnetDomains.Sinkhole.Ipv6Address != nil { + nestedBotnetDomains.Sinkhole.Ipv6Address = o.BotnetDomains.Sinkhole.Ipv6Address + } + } if o.BotnetDomains.ThreatException != nil { nestedBotnetDomains.ThreatException = []BotnetDomainsThreatException{} for _, oBotnetDomainsThreatException := range o.BotnetDomains.ThreatException { @@ -1378,9 +1390,6 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oBotnetDomainsDnsSecurityCategories.Misc != nil { entry.Misc["BotnetDomainsDnsSecurityCategories"] = oBotnetDomainsDnsSecurityCategories.Misc } - if oBotnetDomainsDnsSecurityCategories.Action != nil { - nestedBotnetDomainsDnsSecurityCategories.Action = oBotnetDomainsDnsSecurityCategories.Action - } if oBotnetDomainsDnsSecurityCategories.LogLevel != nil { nestedBotnetDomainsDnsSecurityCategories.LogLevel = oBotnetDomainsDnsSecurityCategories.LogLevel } @@ -1390,6 +1399,9 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oBotnetDomainsDnsSecurityCategories.Name != "" { nestedBotnetDomainsDnsSecurityCategories.Name = oBotnetDomainsDnsSecurityCategories.Name } + if oBotnetDomainsDnsSecurityCategories.Action != nil { + nestedBotnetDomainsDnsSecurityCategories.Action = oBotnetDomainsDnsSecurityCategories.Action + } nestedBotnetDomains.DnsSecurityCategories = append(nestedBotnetDomains.DnsSecurityCategories, nestedBotnetDomainsDnsSecurityCategories) } } @@ -1400,14 +1412,17 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oBotnetDomainsLists.Misc != nil { entry.Misc["BotnetDomainsLists"] = oBotnetDomainsLists.Misc } - if oBotnetDomainsLists.Name != "" { - nestedBotnetDomainsLists.Name = oBotnetDomainsLists.Name - } if oBotnetDomainsLists.Action != nil { nestedBotnetDomainsLists.Action = &BotnetDomainsListsAction{} if oBotnetDomainsLists.Action.Misc != nil { entry.Misc["BotnetDomainsListsAction"] = oBotnetDomainsLists.Action.Misc } + if oBotnetDomainsLists.Action.Alert != nil { + nestedBotnetDomainsLists.Action.Alert = &BotnetDomainsListsActionAlert{} + if oBotnetDomainsLists.Action.Alert.Misc != nil { + entry.Misc["BotnetDomainsListsActionAlert"] = oBotnetDomainsLists.Action.Alert.Misc + } + } if oBotnetDomainsLists.Action.Allow != nil { nestedBotnetDomainsLists.Action.Allow = &BotnetDomainsListsActionAllow{} if oBotnetDomainsLists.Action.Allow.Misc != nil { @@ -1426,31 +1441,16 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { entry.Misc["BotnetDomainsListsActionSinkhole"] = oBotnetDomainsLists.Action.Sinkhole.Misc } } - if oBotnetDomainsLists.Action.Alert != nil { - nestedBotnetDomainsLists.Action.Alert = &BotnetDomainsListsActionAlert{} - if oBotnetDomainsLists.Action.Alert.Misc != nil { - entry.Misc["BotnetDomainsListsActionAlert"] = oBotnetDomainsLists.Action.Alert.Misc - } - } } if oBotnetDomainsLists.PacketCapture != nil { nestedBotnetDomainsLists.PacketCapture = oBotnetDomainsLists.PacketCapture } + if oBotnetDomainsLists.Name != "" { + nestedBotnetDomainsLists.Name = oBotnetDomainsLists.Name + } nestedBotnetDomains.Lists = append(nestedBotnetDomains.Lists, nestedBotnetDomainsLists) } } - if o.BotnetDomains.Sinkhole != nil { - nestedBotnetDomains.Sinkhole = &BotnetDomainsSinkhole{} - if o.BotnetDomains.Sinkhole.Misc != nil { - entry.Misc["BotnetDomainsSinkhole"] = o.BotnetDomains.Sinkhole.Misc - } - if o.BotnetDomains.Sinkhole.Ipv4Address != nil { - nestedBotnetDomains.Sinkhole.Ipv4Address = o.BotnetDomains.Sinkhole.Ipv4Address - } - if o.BotnetDomains.Sinkhole.Ipv6Address != nil { - nestedBotnetDomains.Sinkhole.Ipv6Address = o.BotnetDomains.Sinkhole.Ipv6Address - } - } } entry.BotnetDomains = nestedBotnetDomains @@ -1467,12 +1467,12 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oMicaEngineSpywareEnabled.Misc != nil { entry.Misc["MicaEngineSpywareEnabled"] = oMicaEngineSpywareEnabled.Misc } - if oMicaEngineSpywareEnabled.InlinePolicyAction != nil { - nestedMicaEngineSpywareEnabled.InlinePolicyAction = oMicaEngineSpywareEnabled.InlinePolicyAction - } if oMicaEngineSpywareEnabled.Name != "" { nestedMicaEngineSpywareEnabled.Name = oMicaEngineSpywareEnabled.Name } + if oMicaEngineSpywareEnabled.InlinePolicyAction != nil { + nestedMicaEngineSpywareEnabled.InlinePolicyAction = oMicaEngineSpywareEnabled.InlinePolicyAction + } nestedMicaEngineSpywareEnabledCol = append(nestedMicaEngineSpywareEnabledCol, nestedMicaEngineSpywareEnabled) } entry.MicaEngineSpywareEnabled = nestedMicaEngineSpywareEnabledCol @@ -1486,32 +1486,11 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oRules.Misc != nil { entry.Misc["Rules"] = oRules.Misc } - if oRules.Category != nil { - nestedRules.Category = oRules.Category - } - if oRules.PacketCapture != nil { - nestedRules.PacketCapture = oRules.PacketCapture - } - if oRules.Severity != nil { - nestedRules.Severity = util.MemToStr(oRules.Severity) - } if oRules.Action != nil { nestedRules.Action = &RulesAction{} if oRules.Action.Misc != nil { entry.Misc["RulesAction"] = oRules.Action.Misc } - if oRules.Action.BlockIp != nil { - nestedRules.Action.BlockIp = &RulesActionBlockIp{} - if oRules.Action.BlockIp.Misc != nil { - entry.Misc["RulesActionBlockIp"] = oRules.Action.BlockIp.Misc - } - if oRules.Action.BlockIp.TrackBy != nil { - nestedRules.Action.BlockIp.TrackBy = oRules.Action.BlockIp.TrackBy - } - if oRules.Action.BlockIp.Duration != nil { - nestedRules.Action.BlockIp.Duration = oRules.Action.BlockIp.Duration - } - } if oRules.Action.Default != nil { nestedRules.Action.Default = &RulesActionDefault{} if oRules.Action.Default.Misc != nil { @@ -1554,6 +1533,18 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { entry.Misc["RulesActionResetBoth"] = oRules.Action.ResetBoth.Misc } } + if oRules.Action.BlockIp != nil { + nestedRules.Action.BlockIp = &RulesActionBlockIp{} + if oRules.Action.BlockIp.Misc != nil { + entry.Misc["RulesActionBlockIp"] = oRules.Action.BlockIp.Misc + } + if oRules.Action.BlockIp.TrackBy != nil { + nestedRules.Action.BlockIp.TrackBy = oRules.Action.BlockIp.TrackBy + } + if oRules.Action.BlockIp.Duration != nil { + nestedRules.Action.BlockIp.Duration = oRules.Action.BlockIp.Duration + } + } } if oRules.Name != "" { nestedRules.Name = oRules.Name @@ -1561,6 +1552,15 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oRules.ThreatName != nil { nestedRules.ThreatName = oRules.ThreatName } + if oRules.Category != nil { + nestedRules.Category = oRules.Category + } + if oRules.PacketCapture != nil { + nestedRules.PacketCapture = oRules.PacketCapture + } + if oRules.Severity != nil { + nestedRules.Severity = util.MemToStr(oRules.Severity) + } nestedRulesCol = append(nestedRulesCol, nestedRules) } entry.Rules = nestedRulesCol @@ -1582,6 +1582,30 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oThreatException.Action.Misc != nil { entry.Misc["ThreatExceptionAction"] = oThreatException.Action.Misc } + if oThreatException.Action.Allow != nil { + nestedThreatException.Action.Allow = &ThreatExceptionActionAllow{} + if oThreatException.Action.Allow.Misc != nil { + entry.Misc["ThreatExceptionActionAllow"] = oThreatException.Action.Allow.Misc + } + } + if oThreatException.Action.Alert != nil { + nestedThreatException.Action.Alert = &ThreatExceptionActionAlert{} + if oThreatException.Action.Alert.Misc != nil { + entry.Misc["ThreatExceptionActionAlert"] = oThreatException.Action.Alert.Misc + } + } + if oThreatException.Action.Drop != nil { + nestedThreatException.Action.Drop = &ThreatExceptionActionDrop{} + if oThreatException.Action.Drop.Misc != nil { + entry.Misc["ThreatExceptionActionDrop"] = oThreatException.Action.Drop.Misc + } + } + if oThreatException.Action.ResetBoth != nil { + nestedThreatException.Action.ResetBoth = &ThreatExceptionActionResetBoth{} + if oThreatException.Action.ResetBoth.Misc != nil { + entry.Misc["ThreatExceptionActionResetBoth"] = oThreatException.Action.ResetBoth.Misc + } + } if oThreatException.Action.ResetClient != nil { nestedThreatException.Action.ResetClient = &ThreatExceptionActionResetClient{} if oThreatException.Action.ResetClient.Misc != nil { @@ -1599,12 +1623,12 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { if oThreatException.Action.BlockIp.Misc != nil { entry.Misc["ThreatExceptionActionBlockIp"] = oThreatException.Action.BlockIp.Misc } - if oThreatException.Action.BlockIp.Duration != nil { - nestedThreatException.Action.BlockIp.Duration = oThreatException.Action.BlockIp.Duration - } if oThreatException.Action.BlockIp.TrackBy != nil { nestedThreatException.Action.BlockIp.TrackBy = oThreatException.Action.BlockIp.TrackBy } + if oThreatException.Action.BlockIp.Duration != nil { + nestedThreatException.Action.BlockIp.Duration = oThreatException.Action.BlockIp.Duration + } } if oThreatException.Action.Default != nil { nestedThreatException.Action.Default = &ThreatExceptionActionDefault{} @@ -1612,30 +1636,6 @@ func (c *entryXmlContainer) Normalize() ([]*Entry, error) { entry.Misc["ThreatExceptionActionDefault"] = oThreatException.Action.Default.Misc } } - if oThreatException.Action.Allow != nil { - nestedThreatException.Action.Allow = &ThreatExceptionActionAllow{} - if oThreatException.Action.Allow.Misc != nil { - entry.Misc["ThreatExceptionActionAllow"] = oThreatException.Action.Allow.Misc - } - } - if oThreatException.Action.Alert != nil { - nestedThreatException.Action.Alert = &ThreatExceptionActionAlert{} - if oThreatException.Action.Alert.Misc != nil { - entry.Misc["ThreatExceptionActionAlert"] = oThreatException.Action.Alert.Misc - } - } - if oThreatException.Action.Drop != nil { - nestedThreatException.Action.Drop = &ThreatExceptionActionDrop{} - if oThreatException.Action.Drop.Misc != nil { - entry.Misc["ThreatExceptionActionDrop"] = oThreatException.Action.Drop.Misc - } - } - if oThreatException.Action.ResetBoth != nil { - nestedThreatException.Action.ResetBoth = &ThreatExceptionActionResetBoth{} - if oThreatException.Action.ResetBoth.Misc != nil { - entry.Misc["ThreatExceptionActionResetBoth"] = oThreatException.Action.ResetBoth.Misc - } - } } if oThreatException.ExemptIp != nil { nestedThreatException.ExemptIp = []ThreatExceptionExemptIp{} @@ -1685,9 +1685,6 @@ func (c *entryXmlContainer_11_0_2) Normalize() ([]*Entry, error) { if oBotnetDomainsDnsSecurityCategories.Misc != nil { entry.Misc["BotnetDomainsDnsSecurityCategories"] = oBotnetDomainsDnsSecurityCategories.Misc } - if oBotnetDomainsDnsSecurityCategories.Name != "" { - nestedBotnetDomainsDnsSecurityCategories.Name = oBotnetDomainsDnsSecurityCategories.Name - } if oBotnetDomainsDnsSecurityCategories.Action != nil { nestedBotnetDomainsDnsSecurityCategories.Action = oBotnetDomainsDnsSecurityCategories.Action } @@ -1697,6 +1694,9 @@ func (c *entryXmlContainer_11_0_2) Normalize() ([]*Entry, error) { if oBotnetDomainsDnsSecurityCategories.PacketCapture != nil { nestedBotnetDomainsDnsSecurityCategories.PacketCapture = oBotnetDomainsDnsSecurityCategories.PacketCapture } + if oBotnetDomainsDnsSecurityCategories.Name != "" { + nestedBotnetDomainsDnsSecurityCategories.Name = oBotnetDomainsDnsSecurityCategories.Name + } nestedBotnetDomains.DnsSecurityCategories = append(nestedBotnetDomains.DnsSecurityCategories, nestedBotnetDomainsDnsSecurityCategories) } } @@ -1707,6 +1707,9 @@ func (c *entryXmlContainer_11_0_2) Normalize() ([]*Entry, error) { if oBotnetDomainsLists.Misc != nil { entry.Misc["BotnetDomainsLists"] = oBotnetDomainsLists.Misc } + if oBotnetDomainsLists.PacketCapture != nil { + nestedBotnetDomainsLists.PacketCapture = oBotnetDomainsLists.PacketCapture + } if oBotnetDomainsLists.Name != "" { nestedBotnetDomainsLists.Name = oBotnetDomainsLists.Name } @@ -1715,6 +1718,12 @@ func (c *entryXmlContainer_11_0_2) Normalize() ([]*Entry, error) { if oBotnetDomainsLists.Action.Misc != nil { entry.Misc["BotnetDomainsListsAction"] = oBotnetDomainsLists.Action.Misc } + if oBotnetDomainsLists.Action.Sinkhole != nil { + nestedBotnetDomainsLists.Action.Sinkhole = &BotnetDomainsListsActionSinkhole{} + if oBotnetDomainsLists.Action.Sinkhole.Misc != nil { + entry.Misc["BotnetDomainsListsActionSinkhole"] = oBotnetDomainsLists.Action.Sinkhole.Misc + } + } if oBotnetDomainsLists.Action.Alert != nil { nestedBotnetDomainsLists.Action.Alert = &BotnetDomainsListsActionAlert{} if oBotnetDomainsLists.Action.Alert.Misc != nil { @@ -1733,15 +1742,6 @@ func (c *entryXmlContainer_11_0_2) Normalize() ([]*Entry, error) { entry.Misc["BotnetDomainsListsActionBlock"] = oBotnetDomainsLists.Action.Block.Misc } } - if oBotnetDomainsLists.Action.Sinkhole != nil { - nestedBotnetDomainsLists.Action.Sinkhole = &BotnetDomainsListsActionSinkhole{} - if oBotnetDomainsLists.Action.Sinkhole.Misc != nil { - entry.Misc["BotnetDomainsListsActionSinkhole"] = oBotnetDomainsLists.Action.Sinkhole.Misc - } - } - } - if oBotnetDomainsLists.PacketCapture != nil { - nestedBotnetDomainsLists.PacketCapture = oBotnetDomainsLists.PacketCapture } nestedBotnetDomains.Lists = append(nestedBotnetDomains.Lists, nestedBotnetDomainsLists) } @@ -1837,9 +1837,6 @@ func (c *entryXmlContainer_11_0_2) Normalize() ([]*Entry, error) { if oRules.Misc != nil { entry.Misc["Rules"] = oRules.Misc } - if oRules.PacketCapture != nil { - nestedRules.PacketCapture = oRules.PacketCapture - } if oRules.Severity != nil { nestedRules.Severity = util.MemToStr(oRules.Severity) } @@ -1848,12 +1845,6 @@ func (c *entryXmlContainer_11_0_2) Normalize() ([]*Entry, error) { if oRules.Action.Misc != nil { entry.Misc["RulesAction"] = oRules.Action.Misc } - if oRules.Action.Default != nil { - nestedRules.Action.Default = &RulesActionDefault{} - if oRules.Action.Default.Misc != nil { - entry.Misc["RulesActionDefault"] = oRules.Action.Default.Misc - } - } if oRules.Action.Allow != nil { nestedRules.Action.Allow = &RulesActionAllow{} if oRules.Action.Allow.Misc != nil { @@ -1895,11 +1886,17 @@ func (c *entryXmlContainer_11_0_2) Normalize() ([]*Entry, error) { if oRules.Action.BlockIp.Misc != nil { entry.Misc["RulesActionBlockIp"] = oRules.Action.BlockIp.Misc } + if oRules.Action.BlockIp.Duration != nil { + nestedRules.Action.BlockIp.Duration = oRules.Action.BlockIp.Duration + } if oRules.Action.BlockIp.TrackBy != nil { nestedRules.Action.BlockIp.TrackBy = oRules.Action.BlockIp.TrackBy } - if oRules.Action.BlockIp.Duration != nil { - nestedRules.Action.BlockIp.Duration = oRules.Action.BlockIp.Duration + } + if oRules.Action.Default != nil { + nestedRules.Action.Default = &RulesActionDefault{} + if oRules.Action.Default.Misc != nil { + entry.Misc["RulesActionDefault"] = oRules.Action.Default.Misc } } } @@ -1912,6 +1909,9 @@ func (c *entryXmlContainer_11_0_2) Normalize() ([]*Entry, error) { if oRules.Category != nil { nestedRules.Category = oRules.Category } + if oRules.PacketCapture != nil { + nestedRules.PacketCapture = oRules.PacketCapture + } nestedRulesCol = append(nestedRulesCol, nestedRules) } entry.Rules = nestedRulesCol @@ -1925,22 +1925,6 @@ func (c *entryXmlContainer_11_0_2) Normalize() ([]*Entry, error) { if oThreatException.Misc != nil { entry.Misc["ThreatException"] = oThreatException.Misc } - if oThreatException.ExemptIp != nil { - nestedThreatException.ExemptIp = []ThreatExceptionExemptIp{} - for _, oThreatExceptionExemptIp := range oThreatException.ExemptIp { - nestedThreatExceptionExemptIp := ThreatExceptionExemptIp{} - if oThreatExceptionExemptIp.Misc != nil { - entry.Misc["ThreatExceptionExemptIp"] = oThreatExceptionExemptIp.Misc - } - if oThreatExceptionExemptIp.Name != "" { - nestedThreatExceptionExemptIp.Name = oThreatExceptionExemptIp.Name - } - nestedThreatException.ExemptIp = append(nestedThreatException.ExemptIp, nestedThreatExceptionExemptIp) - } - } - if oThreatException.Name != "" { - nestedThreatException.Name = oThreatException.Name - } if oThreatException.PacketCapture != nil { nestedThreatException.PacketCapture = oThreatException.PacketCapture } @@ -1949,6 +1933,24 @@ func (c *entryXmlContainer_11_0_2) Normalize() ([]*Entry, error) { if oThreatException.Action.Misc != nil { entry.Misc["ThreatExceptionAction"] = oThreatException.Action.Misc } + if oThreatException.Action.Allow != nil { + nestedThreatException.Action.Allow = &ThreatExceptionActionAllow{} + if oThreatException.Action.Allow.Misc != nil { + entry.Misc["ThreatExceptionActionAllow"] = oThreatException.Action.Allow.Misc + } + } + if oThreatException.Action.Alert != nil { + nestedThreatException.Action.Alert = &ThreatExceptionActionAlert{} + if oThreatException.Action.Alert.Misc != nil { + entry.Misc["ThreatExceptionActionAlert"] = oThreatException.Action.Alert.Misc + } + } + if oThreatException.Action.Drop != nil { + nestedThreatException.Action.Drop = &ThreatExceptionActionDrop{} + if oThreatException.Action.Drop.Misc != nil { + entry.Misc["ThreatExceptionActionDrop"] = oThreatException.Action.Drop.Misc + } + } if oThreatException.Action.ResetBoth != nil { nestedThreatException.Action.ResetBoth = &ThreatExceptionActionResetBoth{} if oThreatException.Action.ResetBoth.Misc != nil { @@ -1972,12 +1974,12 @@ func (c *entryXmlContainer_11_0_2) Normalize() ([]*Entry, error) { if oThreatException.Action.BlockIp.Misc != nil { entry.Misc["ThreatExceptionActionBlockIp"] = oThreatException.Action.BlockIp.Misc } - if oThreatException.Action.BlockIp.Duration != nil { - nestedThreatException.Action.BlockIp.Duration = oThreatException.Action.BlockIp.Duration - } if oThreatException.Action.BlockIp.TrackBy != nil { nestedThreatException.Action.BlockIp.TrackBy = oThreatException.Action.BlockIp.TrackBy } + if oThreatException.Action.BlockIp.Duration != nil { + nestedThreatException.Action.BlockIp.Duration = oThreatException.Action.BlockIp.Duration + } } if oThreatException.Action.Default != nil { nestedThreatException.Action.Default = &ThreatExceptionActionDefault{} @@ -1985,25 +1987,23 @@ func (c *entryXmlContainer_11_0_2) Normalize() ([]*Entry, error) { entry.Misc["ThreatExceptionActionDefault"] = oThreatException.Action.Default.Misc } } - if oThreatException.Action.Allow != nil { - nestedThreatException.Action.Allow = &ThreatExceptionActionAllow{} - if oThreatException.Action.Allow.Misc != nil { - entry.Misc["ThreatExceptionActionAllow"] = oThreatException.Action.Allow.Misc - } - } - if oThreatException.Action.Alert != nil { - nestedThreatException.Action.Alert = &ThreatExceptionActionAlert{} - if oThreatException.Action.Alert.Misc != nil { - entry.Misc["ThreatExceptionActionAlert"] = oThreatException.Action.Alert.Misc + } + if oThreatException.ExemptIp != nil { + nestedThreatException.ExemptIp = []ThreatExceptionExemptIp{} + for _, oThreatExceptionExemptIp := range oThreatException.ExemptIp { + nestedThreatExceptionExemptIp := ThreatExceptionExemptIp{} + if oThreatExceptionExemptIp.Misc != nil { + entry.Misc["ThreatExceptionExemptIp"] = oThreatExceptionExemptIp.Misc } - } - if oThreatException.Action.Drop != nil { - nestedThreatException.Action.Drop = &ThreatExceptionActionDrop{} - if oThreatException.Action.Drop.Misc != nil { - entry.Misc["ThreatExceptionActionDrop"] = oThreatException.Action.Drop.Misc + if oThreatExceptionExemptIp.Name != "" { + nestedThreatExceptionExemptIp.Name = oThreatExceptionExemptIp.Name } + nestedThreatException.ExemptIp = append(nestedThreatException.ExemptIp, nestedThreatExceptionExemptIp) } } + if oThreatException.Name != "" { + nestedThreatException.Name = oThreatException.Name + } nestedThreatExceptionCol = append(nestedThreatExceptionCol, nestedThreatException) } entry.ThreatException = nestedThreatExceptionCol @@ -2074,29 +2074,44 @@ func matchMicaEngineSpywareEnabled(a []MicaEngineSpywareEnabled, b []MicaEngineS } return true } -func matchRulesActionResetBoth(a *RulesActionResetBoth, b *RulesActionResetBoth) bool { +func matchThreatExceptionExemptIp(a []ThreatExceptionExemptIp, b []ThreatExceptionExemptIp) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } + for _, a := range a { + for _, b := range b { + if !util.StringsEqual(a.Name, b.Name) { + return false + } + } + } return true } -func matchRulesActionBlockIp(a *RulesActionBlockIp, b *RulesActionBlockIp) bool { +func matchThreatExceptionActionResetServer(a *ThreatExceptionActionResetServer, b *ThreatExceptionActionResetServer) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.TrackBy, b.TrackBy) { + return true +} +func matchThreatExceptionActionBlockIp(a *ThreatExceptionActionBlockIp, b *ThreatExceptionActionBlockIp) bool { + if a == nil && b != nil || a != nil && b == nil { return false + } else if a == nil && b == nil { + return true } if !util.Ints64Match(a.Duration, b.Duration) { return false } + if !util.StringsMatch(a.TrackBy, b.TrackBy) { + return false + } return true } -func matchRulesActionDefault(a *RulesActionDefault, b *RulesActionDefault) bool { +func matchThreatExceptionActionDefault(a *ThreatExceptionActionDefault, b *ThreatExceptionActionDefault) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -2104,7 +2119,7 @@ func matchRulesActionDefault(a *RulesActionDefault, b *RulesActionDefault) bool } return true } -func matchRulesActionAllow(a *RulesActionAllow, b *RulesActionAllow) bool { +func matchThreatExceptionActionAllow(a *ThreatExceptionActionAllow, b *ThreatExceptionActionAllow) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -2112,7 +2127,7 @@ func matchRulesActionAllow(a *RulesActionAllow, b *RulesActionAllow) bool { } return true } -func matchRulesActionAlert(a *RulesActionAlert, b *RulesActionAlert) bool { +func matchThreatExceptionActionAlert(a *ThreatExceptionActionAlert, b *ThreatExceptionActionAlert) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -2120,7 +2135,7 @@ func matchRulesActionAlert(a *RulesActionAlert, b *RulesActionAlert) bool { } return true } -func matchRulesActionDrop(a *RulesActionDrop, b *RulesActionDrop) bool { +func matchThreatExceptionActionDrop(a *ThreatExceptionActionDrop, b *ThreatExceptionActionDrop) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -2128,7 +2143,7 @@ func matchRulesActionDrop(a *RulesActionDrop, b *RulesActionDrop) bool { } return true } -func matchRulesActionResetClient(a *RulesActionResetClient, b *RulesActionResetClient) bool { +func matchThreatExceptionActionResetBoth(a *ThreatExceptionActionResetBoth, b *ThreatExceptionActionResetBoth) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -2136,7 +2151,7 @@ func matchRulesActionResetClient(a *RulesActionResetClient, b *RulesActionResetC } return true } -func matchRulesActionResetServer(a *RulesActionResetServer, b *RulesActionResetServer) bool { +func matchThreatExceptionActionResetClient(a *ThreatExceptionActionResetClient, b *ThreatExceptionActionResetClient) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -2144,39 +2159,39 @@ func matchRulesActionResetServer(a *RulesActionResetServer, b *RulesActionResetS } return true } -func matchRulesAction(a *RulesAction, b *RulesAction) bool { +func matchThreatExceptionAction(a *ThreatExceptionAction, b *ThreatExceptionAction) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchRulesActionResetClient(a.ResetClient, b.ResetClient) { + if !matchThreatExceptionActionResetBoth(a.ResetBoth, b.ResetBoth) { return false } - if !matchRulesActionResetServer(a.ResetServer, b.ResetServer) { + if !matchThreatExceptionActionResetClient(a.ResetClient, b.ResetClient) { return false } - if !matchRulesActionResetBoth(a.ResetBoth, b.ResetBoth) { + if !matchThreatExceptionActionResetServer(a.ResetServer, b.ResetServer) { return false } - if !matchRulesActionBlockIp(a.BlockIp, b.BlockIp) { + if !matchThreatExceptionActionBlockIp(a.BlockIp, b.BlockIp) { return false } - if !matchRulesActionDefault(a.Default, b.Default) { + if !matchThreatExceptionActionDefault(a.Default, b.Default) { return false } - if !matchRulesActionAllow(a.Allow, b.Allow) { + if !matchThreatExceptionActionAllow(a.Allow, b.Allow) { return false } - if !matchRulesActionAlert(a.Alert, b.Alert) { + if !matchThreatExceptionActionAlert(a.Alert, b.Alert) { return false } - if !matchRulesActionDrop(a.Drop, b.Drop) { + if !matchThreatExceptionActionDrop(a.Drop, b.Drop) { return false } return true } -func matchRules(a []Rules, b []Rules) bool { +func matchThreatException(a []ThreatException, b []ThreatException) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -2184,22 +2199,16 @@ func matchRules(a []Rules, b []Rules) bool { } for _, a := range a { for _, b := range b { - if !util.StringsEqual(a.Name, b.Name) { - return false - } - if !util.StringsMatch(a.ThreatName, b.ThreatName) { - return false - } - if !util.StringsMatch(a.Category, b.Category) { + if !util.StringsMatch(a.PacketCapture, b.PacketCapture) { return false } - if !util.StringsMatch(a.PacketCapture, b.PacketCapture) { + if !matchThreatExceptionAction(a.Action, b.Action) { return false } - if !util.OrderedListsMatch(a.Severity, b.Severity) { + if !matchThreatExceptionExemptIp(a.ExemptIp, b.ExemptIp) { return false } - if !matchRulesAction(a.Action, b.Action) { + if !util.StringsEqual(a.Name, b.Name) { return false } } @@ -2231,9 +2240,6 @@ func matchBotnetDomainsDnsSecurityCategories(a []BotnetDomainsDnsSecurityCategor } for _, a := range a { for _, b := range b { - if !util.StringsEqual(a.Name, b.Name) { - return false - } if !util.StringsMatch(a.Action, b.Action) { return false } @@ -2243,11 +2249,14 @@ func matchBotnetDomainsDnsSecurityCategories(a []BotnetDomainsDnsSecurityCategor if !util.StringsMatch(a.PacketCapture, b.PacketCapture) { return false } + if !util.StringsEqual(a.Name, b.Name) { + return false + } } } return true } -func matchBotnetDomainsListsActionBlock(a *BotnetDomainsListsActionBlock, b *BotnetDomainsListsActionBlock) bool { +func matchBotnetDomainsListsActionAllow(a *BotnetDomainsListsActionAllow, b *BotnetDomainsListsActionAllow) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -2255,7 +2264,7 @@ func matchBotnetDomainsListsActionBlock(a *BotnetDomainsListsActionBlock, b *Bot } return true } -func matchBotnetDomainsListsActionSinkhole(a *BotnetDomainsListsActionSinkhole, b *BotnetDomainsListsActionSinkhole) bool { +func matchBotnetDomainsListsActionBlock(a *BotnetDomainsListsActionBlock, b *BotnetDomainsListsActionBlock) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -2263,7 +2272,7 @@ func matchBotnetDomainsListsActionSinkhole(a *BotnetDomainsListsActionSinkhole, } return true } -func matchBotnetDomainsListsActionAlert(a *BotnetDomainsListsActionAlert, b *BotnetDomainsListsActionAlert) bool { +func matchBotnetDomainsListsActionSinkhole(a *BotnetDomainsListsActionSinkhole, b *BotnetDomainsListsActionSinkhole) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -2271,7 +2280,7 @@ func matchBotnetDomainsListsActionAlert(a *BotnetDomainsListsActionAlert, b *Bot } return true } -func matchBotnetDomainsListsActionAllow(a *BotnetDomainsListsActionAllow, b *BotnetDomainsListsActionAllow) bool { +func matchBotnetDomainsListsActionAlert(a *BotnetDomainsListsActionAlert, b *BotnetDomainsListsActionAlert) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -2307,15 +2316,15 @@ func matchBotnetDomainsLists(a []BotnetDomainsLists, b []BotnetDomainsLists) boo } for _, a := range a { for _, b := range b { - if !util.StringsEqual(a.Name, b.Name) { - return false - } if !matchBotnetDomainsListsAction(a.Action, b.Action) { return false } if !util.StringsMatch(a.PacketCapture, b.PacketCapture) { return false } + if !util.StringsEqual(a.Name, b.Name) { + return false + } } } return true @@ -2357,10 +2366,10 @@ func matchBotnetDomainsWhitelist(a []BotnetDomainsWhitelist, b []BotnetDomainsWh } for _, a := range a { for _, b := range b { - if !util.StringsEqual(a.Name, b.Name) { + if !util.StringsMatch(a.Description, b.Description) { return false } - if !util.StringsMatch(a.Description, b.Description) { + if !util.StringsEqual(a.Name, b.Name) { return false } } @@ -2373,27 +2382,27 @@ func matchBotnetDomains(a *BotnetDomains, b *BotnetDomains) bool { } else if a == nil && b == nil { return true } - if !matchBotnetDomainsDnsSecurityCategories(a.DnsSecurityCategories, b.DnsSecurityCategories) { + if !matchBotnetDomainsThreatException(a.ThreatException, b.ThreatException) { return false } - if !matchBotnetDomainsLists(a.Lists, b.Lists) { + if !matchBotnetDomainsWhitelist(a.Whitelist, b.Whitelist) { return false } - if !matchBotnetDomainsSinkhole(a.Sinkhole, b.Sinkhole) { + if !matchBotnetDomainsRtypeAction(a.RtypeAction, b.RtypeAction) { return false } - if !matchBotnetDomainsThreatException(a.ThreatException, b.ThreatException) { + if !matchBotnetDomainsDnsSecurityCategories(a.DnsSecurityCategories, b.DnsSecurityCategories) { return false } - if !matchBotnetDomainsWhitelist(a.Whitelist, b.Whitelist) { + if !matchBotnetDomainsLists(a.Lists, b.Lists) { return false } - if !matchBotnetDomainsRtypeAction(a.RtypeAction, b.RtypeAction) { + if !matchBotnetDomainsSinkhole(a.Sinkhole, b.Sinkhole) { return false } return true } -func matchThreatExceptionActionResetServer(a *ThreatExceptionActionResetServer, b *ThreatExceptionActionResetServer) bool { +func matchRulesActionDefault(a *RulesActionDefault, b *RulesActionDefault) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -2401,21 +2410,15 @@ func matchThreatExceptionActionResetServer(a *ThreatExceptionActionResetServer, } return true } -func matchThreatExceptionActionBlockIp(a *ThreatExceptionActionBlockIp, b *ThreatExceptionActionBlockIp) bool { +func matchRulesActionAllow(a *RulesActionAllow, b *RulesActionAllow) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !util.StringsMatch(a.TrackBy, b.TrackBy) { - return false - } - if !util.Ints64Match(a.Duration, b.Duration) { - return false - } return true } -func matchThreatExceptionActionDefault(a *ThreatExceptionActionDefault, b *ThreatExceptionActionDefault) bool { +func matchRulesActionAlert(a *RulesActionAlert, b *RulesActionAlert) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -2423,7 +2426,7 @@ func matchThreatExceptionActionDefault(a *ThreatExceptionActionDefault, b *Threa } return true } -func matchThreatExceptionActionAllow(a *ThreatExceptionActionAllow, b *ThreatExceptionActionAllow) bool { +func matchRulesActionDrop(a *RulesActionDrop, b *RulesActionDrop) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -2431,7 +2434,7 @@ func matchThreatExceptionActionAllow(a *ThreatExceptionActionAllow, b *ThreatExc } return true } -func matchThreatExceptionActionAlert(a *ThreatExceptionActionAlert, b *ThreatExceptionActionAlert) bool { +func matchRulesActionResetClient(a *RulesActionResetClient, b *RulesActionResetClient) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -2439,7 +2442,7 @@ func matchThreatExceptionActionAlert(a *ThreatExceptionActionAlert, b *ThreatExc } return true } -func matchThreatExceptionActionDrop(a *ThreatExceptionActionDrop, b *ThreatExceptionActionDrop) bool { +func matchRulesActionResetServer(a *RulesActionResetServer, b *RulesActionResetServer) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -2447,7 +2450,7 @@ func matchThreatExceptionActionDrop(a *ThreatExceptionActionDrop, b *ThreatExcep } return true } -func matchThreatExceptionActionResetBoth(a *ThreatExceptionActionResetBoth, b *ThreatExceptionActionResetBoth) bool { +func matchRulesActionResetBoth(a *RulesActionResetBoth, b *RulesActionResetBoth) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -2455,47 +2458,53 @@ func matchThreatExceptionActionResetBoth(a *ThreatExceptionActionResetBoth, b *T } return true } -func matchThreatExceptionActionResetClient(a *ThreatExceptionActionResetClient, b *ThreatExceptionActionResetClient) bool { +func matchRulesActionBlockIp(a *RulesActionBlockIp, b *RulesActionBlockIp) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } + if !util.StringsMatch(a.TrackBy, b.TrackBy) { + return false + } + if !util.Ints64Match(a.Duration, b.Duration) { + return false + } return true } -func matchThreatExceptionAction(a *ThreatExceptionAction, b *ThreatExceptionAction) bool { +func matchRulesAction(a *RulesAction, b *RulesAction) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { return true } - if !matchThreatExceptionActionAllow(a.Allow, b.Allow) { + if !matchRulesActionResetServer(a.ResetServer, b.ResetServer) { return false } - if !matchThreatExceptionActionAlert(a.Alert, b.Alert) { + if !matchRulesActionResetBoth(a.ResetBoth, b.ResetBoth) { return false } - if !matchThreatExceptionActionDrop(a.Drop, b.Drop) { + if !matchRulesActionBlockIp(a.BlockIp, b.BlockIp) { return false } - if !matchThreatExceptionActionResetBoth(a.ResetBoth, b.ResetBoth) { + if !matchRulesActionDefault(a.Default, b.Default) { return false } - if !matchThreatExceptionActionResetClient(a.ResetClient, b.ResetClient) { + if !matchRulesActionAllow(a.Allow, b.Allow) { return false } - if !matchThreatExceptionActionResetServer(a.ResetServer, b.ResetServer) { + if !matchRulesActionAlert(a.Alert, b.Alert) { return false } - if !matchThreatExceptionActionBlockIp(a.BlockIp, b.BlockIp) { + if !matchRulesActionDrop(a.Drop, b.Drop) { return false } - if !matchThreatExceptionActionDefault(a.Default, b.Default) { + if !matchRulesActionResetClient(a.ResetClient, b.ResetClient) { return false } return true } -func matchThreatExceptionExemptIp(a []ThreatExceptionExemptIp, b []ThreatExceptionExemptIp) bool { +func matchRules(a []Rules, b []Rules) bool { if a == nil && b != nil || a != nil && b == nil { return false } else if a == nil && b == nil { @@ -2503,31 +2512,22 @@ func matchThreatExceptionExemptIp(a []ThreatExceptionExemptIp, b []ThreatExcepti } for _, a := range a { for _, b := range b { + if !matchRulesAction(a.Action, b.Action) { + return false + } if !util.StringsEqual(a.Name, b.Name) { return false } - } - } - return true -} -func matchThreatException(a []ThreatException, b []ThreatException) bool { - if a == nil && b != nil || a != nil && b == nil { - return false - } else if a == nil && b == nil { - return true - } - for _, a := range a { - for _, b := range b { - if !util.StringsMatch(a.PacketCapture, b.PacketCapture) { + if !util.StringsMatch(a.ThreatName, b.ThreatName) { return false } - if !matchThreatExceptionAction(a.Action, b.Action) { + if !util.StringsMatch(a.Category, b.Category) { return false } - if !matchThreatExceptionExemptIp(a.ExemptIp, b.ExemptIp) { + if !util.StringsMatch(a.PacketCapture, b.PacketCapture) { return false } - if !util.StringsEqual(a.Name, b.Name) { + if !util.OrderedListsMatch(a.Severity, b.Severity) { return false } }