model

package
v1.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 3, 2026 License: Apache-2.0 Imports: 2 Imported by: 0

Documentation

Overview

Package model re-exports types from internal/schema for backward compatibility.

Package model defines the data structures for OPNsense configurations.

This package re-exports types from internal/schema for backward compatibility. New code should import internal/schema directly.

Package model re-exports types from internal/schema for backward compatibility.

Package model re-exports types from internal/enrichment for backward compatibility.

Package model re-exports types from internal/schema for backward compatibility.

Package model re-exports types from internal/schema for backward compatibility.

Package model re-exports types from internal/schema for backward compatibility.

Package model re-exports types from internal/schema for backward compatibility.

Package model re-exports types from internal/schema for backward compatibility.

Package model re-exports types from internal/schema for backward compatibility.

Package model re-exports types from internal/schema for backward compatibility.

Package model re-exports types from internal/schema for backward compatibility.

Package model re-exports types from internal/schema for backward compatibility.

Package model re-exports types from internal/schema for backward compatibility.

Index

Constants

View Source
const (
	ProtocolHTTPS           = enrichment.ProtocolHTTPS
	ProtocolHTTP            = enrichment.ProtocolHTTP
	RuleTypePass            = enrichment.RuleTypePass
	RuleTypeBlock           = enrichment.RuleTypeBlock
	NetworkAny              = enrichment.NetworkAny
	MaxComplexityScore      = enrichment.MaxComplexityScore
	MaxSecurityScore        = enrichment.MaxSecurityScore
	MaxComplianceScore      = enrichment.MaxComplianceScore
	RuleComplexityWeight    = enrichment.RuleComplexityWeight
	ServiceComplexityWeight = enrichment.ServiceComplexityWeight
	MaxRulesThreshold       = enrichment.MaxRulesThreshold
	BaseSecurityScore       = enrichment.BaseSecurityScore
	BaseResourceUsage       = enrichment.BaseResourceUsage
)

Enrichment constants re-exported from enrichment package.

Variables

This section is empty.

Functions

This section is empty.

Types

type APIKey

type APIKey = schema.APIKey

APIKey represents an API key configuration.

type Analysis

type Analysis = enrichment.Analysis

Analysis contains analysis findings and insights.

type BoolFlag

type BoolFlag = schema.BoolFlag

BoolFlag provides custom XML marshaling for OPNsense boolean values. Type alias to schema.BoolFlag - all methods are inherited.

type Bridge

type Bridge = schema.Bridge

Bridge represents a network bridge configuration.

type Bridges

type Bridges = schema.Bridges

Bridges represents a collection of bridge configurations.

type BridgesConfig

type BridgesConfig = schema.BridgesConfig

BridgesConfig represents the root-level bridges configuration.

type Cert

type Cert = schema.Cert

Cert represents a certificate configuration.

type CertificateAuthority

type CertificateAuthority = schema.CertificateAuthority

CertificateAuthority represents certificate authority configuration.

type ChangeMeta

type ChangeMeta = schema.ChangeMeta

ChangeMeta tracks creation and modification metadata for configuration items. Type alias to schema.ChangeMeta.

type ClientExport

type ClientExport = schema.ClientExport

ClientExport represents client export options for OpenVPN.

func NewClientExport

func NewClientExport() *ClientExport

NewClientExport returns a new ClientExport instance.

type ComplianceChecks

type ComplianceChecks = enrichment.ComplianceChecks

ComplianceChecks contains compliance check results.

type ConsistencyFinding

type ConsistencyFinding = enrichment.ConsistencyFinding

ConsistencyFinding represents a consistency finding.

type Created

type Created = schema.Created

Created represents creation information.

type DHCPNumberOption

type DHCPNumberOption = schema.DHCPNumberOption

DHCPNumberOption represents a DHCP number option.

type DHCPScopeStatistics

type DHCPScopeStatistics = enrichment.DHCPScopeStatistics

DHCPScopeStatistics contains statistics for a DHCP scope.

type DHCPStaticLease

type DHCPStaticLease = schema.DHCPStaticLease

DHCPStaticLease represents a DHCP static lease assignment.

type DHCPv6Server

type DHCPv6Server = schema.DHCPv6Server

DHCPv6Server represents DHCPv6 server configuration.

type DNSMasq

type DNSMasq = schema.DNSMasq

DNSMasq represents DNS masquerading configuration.

func NewDNSMasq

func NewDNSMasq() *DNSMasq

NewDNSMasq returns a new DNSMasq configuration.

type DNSMasqHost

type DNSMasqHost = schema.DNSMasqHost

DNSMasqHost represents a DNSMasq host entry.

func NewDNSMasqHost

func NewDNSMasqHost() DNSMasqHost

NewDNSMasqHost returns a DNSMasqHost instance.

type DeadRuleFinding

type DeadRuleFinding = enrichment.DeadRuleFinding

DeadRuleFinding represents a dead rule finding.

type Destination

type Destination = schema.Destination

Destination represents a firewall rule destination.

type DhcpOption

type DhcpOption = schema.DhcpOption

DhcpOption represents a DHCP option configuration.

type DhcpRange

type DhcpRange = schema.DhcpRange

DhcpRange represents a DHCP range configuration.

type Dhcpd

type Dhcpd = schema.Dhcpd

Dhcpd represents DHCP server configuration with interface-keyed entries. Type alias to schema.Dhcpd - all methods are inherited.

type DhcpdInterface

type DhcpdInterface = schema.DhcpdInterface

DhcpdInterface represents per-interface DHCP configuration.

type DomainOverride

type DomainOverride = schema.DomainOverride

DomainOverride represents a domain override entry.

type EnrichedOpnSenseDocument

type EnrichedOpnSenseDocument = enrichment.EnrichedOpnSenseDocument

EnrichedOpnSenseDocument extends OpnSenseDocument with calculated fields and analysis data.

func EnrichDocument

func EnrichDocument(cfg *OpnSenseDocument) *EnrichedOpnSenseDocument

EnrichDocument returns an EnrichedOpnSenseDocument containing computed statistics, analysis findings, security assessment, performance metrics, and compliance checks. Returns nil if the input configuration is nil.

type Filter

type Filter = schema.Filter

Filter represents firewall filter configuration.

type Firewall

type Firewall = schema.Firewall

Firewall represents firewall configuration.

func NewFirewall

func NewFirewall() *Firewall

NewFirewall returns a pointer to a new, empty Firewall configuration.

type Firmware

type Firmware = schema.Firmware

Firmware represents firmware configuration.

type ForwarderGroup

type ForwarderGroup = schema.ForwarderGroup

ForwarderGroup represents a DNS forwarder group configuration.

type GIFInterfaces

type GIFInterfaces = schema.GIFInterfaces

GIFInterfaces represents GIF interface configuration.

type GREInterfaces

type GREInterfaces = schema.GREInterfaces

GREInterfaces represents GRE interface configuration.

type Gateway

type Gateway = schema.Gateway

Gateway represents a single gateway configuration.

type GatewayGroup

type GatewayGroup = schema.GatewayGroup

GatewayGroup represents a gateway group configuration.

type Gateways

type Gateways = schema.Gateways

Gateways represents gateway configurations.

type Group

type Group = schema.Group

Group represents a user group.

type HighAvailabilitySync

type HighAvailabilitySync = schema.HighAvailabilitySync

HighAvailabilitySync represents high availability sync configuration.

type IDS

type IDS = schema.IDS

IDS represents Intrusion Detection System configuration.

func NewIDS

func NewIDS() *IDS

NewIDS creates a new IDS configuration.

type IPsec

type IPsec = schema.IPsec

IPsec represents IPsec configuration.

func NewIPsec

func NewIPsec() *IPsec

NewIPsec returns a pointer to a new IPsec configuration instance.

type InboundRule added in v1.1.0

type InboundRule = schema.InboundRule

InboundRule represents an inbound NAT rule (port forwarding).

type Interface

type Interface = schema.Interface

Interface represents a network interface configuration.

type InterfaceGroups

type InterfaceGroups = schema.InterfaceGroups

InterfaceGroups represents interface groups configuration.

type InterfaceList added in v1.1.0

type InterfaceList = schema.InterfaceList

InterfaceList represents a comma-separated list of interfaces. Type alias to schema.InterfaceList - all methods are inherited.

type InterfaceStatistics

type InterfaceStatistics = enrichment.InterfaceStatistics

InterfaceStatistics contains detailed statistics for a single interface.

type Interfaces

type Interfaces = schema.Interfaces

Interfaces contains the network interface configurations. Type alias to schema.Interfaces - all methods are inherited.

type LAGGInterfaces

type LAGGInterfaces = schema.LAGGInterfaces

LAGGInterfaces represents LAGG interface configuration.

type LoadBalancer

type LoadBalancer = schema.LoadBalancer

LoadBalancer contains the load balancer configuration.

type Monit

type Monit = schema.Monit

Monit represents system monitoring configuration.

func NewMonit

func NewMonit() *Monit

NewMonit returns a pointer to a new Monit configuration.

type MonitService

type MonitService = schema.MonitService

MonitService represents a monitored service.

type MonitTest

type MonitTest = schema.MonitTest

MonitTest represents a monitoring test.

type MonitorType

type MonitorType = schema.MonitorType

MonitorType represents a load balancer monitor type.

type NATRule added in v1.1.0

type NATRule = schema.NATRule

NATRule represents a NAT rule.

type NATSummary added in v1.1.0

type NATSummary = schema.NATSummary

NATSummary provides comprehensive NAT configuration for security analysis.

type Nat

type Nat = schema.Nat

Nat represents NAT configuration.

type NetworkConfig

type NetworkConfig = schema.NetworkConfig

NetworkConfig groups network-related configuration.

type Ntpd

type Ntpd = schema.Ntpd

Ntpd contains the NTP daemon configuration.

type OPNsense

type OPNsense = schema.OPNsense

OPNsense represents the main OPNsense system configuration.

type OpenVPN

type OpenVPN = schema.OpenVPN

OpenVPN represents OpenVPN configuration.

func NewOpenVPN

func NewOpenVPN() *OpenVPN

NewOpenVPN returns a new OpenVPN configuration.

type OpenVPNCSC

type OpenVPNCSC = schema.OpenVPNCSC

OpenVPNCSC represents client-specific configurations for OpenVPN.

type OpenVPNClient

type OpenVPNClient = schema.OpenVPNClient

OpenVPNClient represents an OpenVPN client configuration.

type OpenVPNExport

type OpenVPNExport = schema.OpenVPNExport

OpenVPNExport represents OpenVPN export configuration.

func NewOpenVPNExport

func NewOpenVPNExport() *OpenVPNExport

NewOpenVPNExport initializes and returns an empty OpenVPNExport configuration.

type OpenVPNServer

type OpenVPNServer = schema.OpenVPNServer

OpenVPNServer represents an OpenVPN server configuration.

type OpenVPNSystem

type OpenVPNSystem = schema.OpenVPNSystem

OpenVPNSystem represents OpenVPN system configuration.

func NewOpenVPNSystem

func NewOpenVPNSystem() *OpenVPNSystem

NewOpenVPNSystem returns a new, empty OpenVPNSystem configuration instance.

type OpnSenseDocument

type OpnSenseDocument = schema.OpnSenseDocument

OpnSenseDocument is the root of the OPNsense configuration. Type alias to schema.OpnSenseDocument - all methods are inherited.

func NewOpnSenseDocument

func NewOpnSenseDocument() *OpnSenseDocument

NewOpnSenseDocument returns a new OpnSenseDocument with all slice and map fields initialized.

type Options

type Options = schema.Options

Options contains the options for a load balancer monitor type.

type Outbound

type Outbound = schema.Outbound

Outbound represents outbound NAT configuration.

type PPPInterfaces

type PPPInterfaces = schema.PPPInterfaces

PPPInterfaces represents PPP interface configuration.

type Package added in v1.1.0

type Package = schema.Package

Package represents a software package.

func NewPackage added in v1.1.0

func NewPackage() Package

NewPackage returns a new Package instance.

type PerformanceFinding

type PerformanceFinding = enrichment.PerformanceFinding

PerformanceFinding represents a performance finding.

type PerformanceMetrics

type PerformanceMetrics = enrichment.PerformanceMetrics

PerformanceMetrics contains performance metrics.

type Range

type Range = schema.Range

Range represents a DHCP address range.

type Revision

type Revision = schema.Revision

Revision represents a configuration revision.

type Rrd

type Rrd = schema.Rrd

Rrd contains the RRDtool configuration.

type Rule

type Rule = schema.Rule

Rule represents a firewall rule.

type RuleLocation

type RuleLocation = schema.RuleLocation

RuleLocation provides granular source/destination address and port specification. Type alias to schema.RuleLocation - all methods are inherited.

type SSHConfig

type SSHConfig = schema.SSHConfig

SSHConfig represents SSH configuration.

type SecurityAssessment

type SecurityAssessment = enrichment.SecurityAssessment

SecurityAssessment contains security assessment data.

type SecurityConfig

type SecurityConfig = schema.SecurityConfig

SecurityConfig groups security-related configuration.

func NewSecurityConfig

func NewSecurityConfig() SecurityConfig

NewSecurityConfig returns a new SecurityConfig instance.

type SecurityFinding

type SecurityFinding = enrichment.SecurityFinding

SecurityFinding represents a security finding.

type Service added in v1.1.0

type Service = schema.Service

Service represents a system service.

func NewService added in v1.1.0

func NewService() Service

NewService returns a new Service instance.

type ServiceConfig

type ServiceConfig = schema.ServiceConfig

ServiceConfig groups service-related configuration.

type ServiceStatistics

type ServiceStatistics = enrichment.ServiceStatistics

ServiceStatistics contains statistics for a service.

type Snmpd

type Snmpd = schema.Snmpd

Snmpd contains the SNMP daemon configuration.

type Source

type Source = schema.Source

Source represents a firewall rule source.

type StaticRoute

type StaticRoute = schema.StaticRoute

StaticRoute represents a single static route configuration.

type StaticRoutes

type StaticRoutes = schema.StaticRoutes

StaticRoutes represents static route configurations.

type Statistics

type Statistics = enrichment.Statistics

Statistics contains calculated statistics about the configuration.

type StatisticsSummary

type StatisticsSummary = enrichment.StatisticsSummary

StatisticsSummary contains summary statistics.

type Swanctl

type Swanctl = schema.Swanctl

Swanctl represents StrongSwan configuration.

func NewSwanctl

func NewSwanctl() *Swanctl

NewSwanctl returns a new instance of the Swanctl configuration struct.

type SysctlItem

type SysctlItem = schema.SysctlItem

SysctlItem represents a sysctl configuration item.

type Syslog

type Syslog = schema.Syslog

Syslog represents system logging configuration.

func NewSyslog

func NewSyslog() *Syslog

NewSyslog returns a pointer to a new Syslog configuration.

type System

type System = schema.System

System represents the system configuration.

type SystemConfig

type SystemConfig = schema.SystemConfig

SystemConfig groups system-related configuration.

type Unbound

type Unbound = schema.Unbound

Unbound represents the Unbound DNS resolver configuration.

type UnusedInterfaceFinding

type UnusedInterfaceFinding = enrichment.UnusedInterfaceFinding

UnusedInterfaceFinding represents an unused interface finding.

type Updated

type Updated = schema.Updated

Updated represents update information.

type User

type User = schema.User

User represents a user account.

type VLAN

type VLAN = schema.VLAN

VLAN represents a VLAN configuration.

type VLANConfig

type VLANConfig = schema.VLANConfig

VLANConfig represents a Virtual Local Area Network configuration.

type VLANs

type VLANs = schema.VLANs

VLANs represents a collection of VLAN configurations.

type VirtualIP

type VirtualIP = schema.VirtualIP

VirtualIP represents virtual IP configuration.

type WebGUIConfig

type WebGUIConfig = schema.WebGUIConfig

WebGUIConfig represents web GUI configuration.

type Widgets

type Widgets = schema.Widgets

Widgets represents dashboard widgets configuration.

type WireGuard

type WireGuard = schema.WireGuard

WireGuard represents WireGuard VPN configuration.

func NewWireGuard

func NewWireGuard() *WireGuard

NewWireGuard returns a new WireGuard configuration instance.

type WireGuardClientItem

type WireGuardClientItem = schema.WireGuardClientItem

WireGuardClientItem represents a WireGuard client configuration.

type WireGuardServerItem

type WireGuardServerItem = schema.WireGuardServerItem

WireGuardServerItem represents a WireGuard server configuration.

type Wireless

type Wireless = schema.Wireless

Wireless represents wireless interface configuration.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL