OPNSense/core 9c950fcsrc/opnsense/mvc/app/controllers/OPNsense/IPsec/Api SpdController.php, src/opnsense/scripts/ipsec spddelete.py

VPN: IPsec: Security Policy Database - delete selected not backed by actual logic, closes https://github.com/opnsense/core/issues/9937
DeltaFile
+12-6src/opnsense/scripts/ipsec/spddelete.py
+1-1src/opnsense/mvc/app/controllers/OPNsense/IPsec/Api/SpdController.php
+13-72 files

OPNSense/core fa9e217src/opnsense/scripts/filter read_log.py, src/opnsense/scripts/openvpn ovpn_status.py

backend: apparently r'' is a better fix for SyntaxWarning

Sometimes we even use it.

PR: https://forum.opnsense.org/index.php?topic=51175.0
DeltaFile
+1-1src/opnsense/scripts/filter/read_log.py
+1-1src/opnsense/scripts/openvpn/ovpn_status.py
+1-1src/opnsense/scripts/unbound/wrapper.py
+3-33 files

OPNSense/core 72ab5e3src/opnsense/mvc/app/views/OPNsense/Interface neighbor.volt

interfaces: fix static neighbor apply button (#9934)

Fixes: #9932
DeltaFile
+1-1src/opnsense/mvc/app/views/OPNsense/Interface/neighbor.volt
+1-11 files

OPNSense/core 9df582asrc/opnsense/scripts/captiveportal/lib arp.py

ditch ndp from arp source
DeltaFile
+1-1src/opnsense/scripts/captiveportal/lib/arp.py
+1-11 files

OPNSense/core 5ad965asrc/opnsense/mvc/app/controllers/OPNsense/CaptivePortal/Api AccessController.php, src/opnsense/mvc/app/controllers/OPNsense/CaptivePortal/forms dialogZone.xml

Merge pull request #9927 from agoodkind/agoodkind/captive-portal-ipv6-dual-stack-support

Follow up for dual-stack captive portal authorization in `CaptivePortal`
DeltaFile
+46-30src/opnsense/service/templates/OPNsense/Captiveportal/lighttpd-zone.conf
+15-6src/opnsense/mvc/app/controllers/OPNsense/CaptivePortal/Api/AccessController.php
+3-3src/opnsense/service/templates/OPNsense/Captiveportal/lighttpd-api-dispatcher.conf
+4-0src/opnsense/scripts/captiveportal/lib/pf.py
+1-1src/opnsense/scripts/captiveportal/lib/arp.py
+1-1src/opnsense/mvc/app/controllers/OPNsense/CaptivePortal/forms/dialogZone.xml
+70-416 files

OPNSense/core 1c92d4fsrc/opnsense/mvc/app/controllers/OPNsense/CaptivePortal/Api AccessController.php, src/opnsense/scripts/captiveportal allow.py

Merge branch 'captive-portal-ipv6' into agoodkind/captive-portal-ipv6-dual-stack-support
DeltaFile
+4-15src/opnsense/scripts/captiveportal/allow.py
+1-1src/opnsense/service/conf/actions.d/actions_captiveportal.conf
+0-1src/opnsense/mvc/app/controllers/OPNsense/CaptivePortal/Api/AccessController.php
+5-173 files

OPNSense/core bc7a9edsrc/opnsense/mvc/app/controllers/OPNsense/CaptivePortal/Api AccessController.php, src/opnsense/service/conf/actions.d actions_captiveportal.conf

last bits of allow.py
DeltaFile
+1-1src/opnsense/service/conf/actions.d/actions_captiveportal.conf
+0-1src/opnsense/mvc/app/controllers/OPNsense/CaptivePortal/Api/AccessController.php
+1-22 files

OPNSense/core 3d615d6src/opnsense/mvc/app/controllers/OPNsense/Dnsmasq/forms general.xml, src/opnsense/mvc/app/models/OPNsense/Dnsmasq Dnsmasq.xml

Services: Dnsmasq DNS & DHCP: Add no-ping option (#9915)
DeltaFile
+7-0src/opnsense/mvc/app/controllers/OPNsense/Dnsmasq/forms/general.xml
+5-1src/opnsense/mvc/app/models/OPNsense/Dnsmasq/Dnsmasq.xml
+4-0src/opnsense/service/templates/OPNsense/Dnsmasq/dnsmasq.conf
+16-13 files

OPNSense/core cf48c5asrc/opnsense/scripts/captiveportal allow.py

add accounting as well
DeltaFile
+1-0src/opnsense/scripts/captiveportal/allow.py
+1-01 files

OPNSense/core 28c5099src/opnsense/mvc/app/controllers/OPNsense/Firewall/forms dialogSNatRule.xml, src/opnsense/mvc/app/models/OPNsense/Firewall Filter.xml

Firewall: NAT: Source NAT - add missing "static port" option, closes https://github.com/opnsense/core/issues/9928
DeltaFile
+9-0src/opnsense/mvc/app/controllers/OPNsense/Firewall/forms/dialogSNatRule.xml
+1-0src/opnsense/mvc/app/models/OPNsense/Firewall/Filter.xml
+10-02 files

OPNSense/core 5114d1esrc/opnsense/scripts/captiveportal allow.py

captive portal: ditch address fetch in allow.py to prevent potential lockups
DeltaFile
+3-13src/opnsense/scripts/captiveportal/allow.py
+3-131 files

OPNSense/core e5b530asrc/opnsense/mvc/app/controllers/OPNsense/Kea/Api DdnsController.php, src/opnsense/mvc/app/controllers/OPNsense/Kea/forms dialogSubnet6.xml dialogSubnet4.xml

Services: Kea DHCP: Add DDNS feature for subnet4 and subnet6 (#9923)

* kea: WIP add dhcp-ddns daemon with forward zone support, goal is initial feature parity with what ISC had.

* Add a default for ddns_domain_algorithm inside the config generator

* The control socket is not needed right now. It would only be required to directly query the ddns server

* Some updates to ddns model and dialogs

* Update service controls via data_service_widget

* More terminology changes for ddns server ip and port

* It looks like a trailing dot validation is not necessary as the configuration is valid regardless, kea does not crash or log any error here

* Add constraints for key_name and key_secret to be used together, adjust some property names for clarity, extend ddns_domain_key_algorithm with all supported values per documentation

* Use single validation string

    [39 lines not shown]
DeltaFile
+94-0src/opnsense/mvc/app/models/OPNsense/Kea/KeaDdns.php
+65-0src/opnsense/mvc/app/models/OPNsense/Kea/KeaDhcpv6.xml
+65-0src/opnsense/mvc/app/models/OPNsense/Kea/KeaDhcpv4.xml
+50-0src/opnsense/mvc/app/controllers/OPNsense/Kea/forms/dialogSubnet6.xml
+50-0src/opnsense/mvc/app/controllers/OPNsense/Kea/Api/DdnsController.php
+50-0src/opnsense/mvc/app/controllers/OPNsense/Kea/forms/dialogSubnet4.xml
+374-013 files not shown
+519-1719 files

OPNSense/core 0b71ea0src/opnsense/mvc/app/views/OPNsense/Kea ctrl_agent.volt

Simplify ctrl_agent volt page to look like the new ddns agent volt page for consistency
DeltaFile
+3-13src/opnsense/mvc/app/views/OPNsense/Kea/ctrl_agent.volt
+3-131 files

OPNSense/core 20f25b7src/opnsense/mvc/app/models/OPNsense/Kea KeaDdns.php

This guard is not needed, it's better if the config keys become empty arrays when nothing is configured to prevent old data sticking around
DeltaFile
+0-3src/opnsense/mvc/app/models/OPNsense/Kea/KeaDdns.php
+0-31 files

OPNSense/core 20fd1cdsrc/opnsense/mvc/app/models/OPNsense/Kea/ACL ACL.xml

Forgot the ACL name
DeltaFile
+1-1src/opnsense/mvc/app/models/OPNsense/Kea/ACL/ACL.xml
+1-11 files

OPNSense/core 7cd1fe0src/etc/inc/plugins.inc.d kea.inc

Merge remote-tracking branch 'refs/remotes/origin/kea-ddns' into kea-ddns
DeltaFile
+0-1src/etc/inc/plugins.inc.d/kea.inc
+0-11 files

OPNSense/core ed71b1esrc/opnsense/mvc/app/controllers/OPNsense/Kea/forms ddnsSettings.xml dialogSubnet4.xml, src/opnsense/mvc/app/models/OPNsense/Kea/ACL ACL.xml

Minor terminology adjustments
DeltaFile
+3-3src/opnsense/mvc/app/controllers/OPNsense/Kea/forms/ddnsSettings.xml
+1-1src/opnsense/mvc/app/models/OPNsense/Kea/ACL/ACL.xml
+1-1src/opnsense/mvc/app/models/OPNsense/Kea/Menu/Menu.xml
+1-0src/opnsense/mvc/app/controllers/OPNsense/Kea/forms/dialogSubnet4.xml
+6-54 files

OPNSense/core d908345src/etc/inc legacy_bindings.inc, src/opnsense/mvc/app/controllers/OPNsense/Firewall/Api FilterBaseController.php

firewall: fix regression in 8554581eac so alias content summary is shown (#9929)

The "description" is a summary so change the underlying
code accordingly to avoid future misinterpretations.

PR: https://forum.opnsense.org/index.php?topic=51246.0
DeltaFile
+11-14src/opnsense/mvc/app/library/OPNsense/Firewall/Util.php
+4-1src/opnsense/mvc/app/controllers/OPNsense/Firewall/Api/FilterBaseController.php
+2-2src/opnsense/mvc/app/views/OPNsense/Firewall/filter_rule.volt
+1-1src/opnsense/mvc/app/views/OPNsense/Firewall/nat_rule.volt
+1-1src/etc/inc/legacy_bindings.inc
+19-195 files

OPNSense/core 0dfad35src/etc/inc legacy_bindings.inc, src/opnsense/mvc/app/controllers/OPNsense/Firewall/Api FilterBaseController.php

firewall: fix regression in 8554581eac so alias content summary is shown

The "description" is a summary so change the underlying
code accordingly to avoid future misinterpretations.
DeltaFile
+11-14src/opnsense/mvc/app/library/OPNsense/Firewall/Util.php
+4-1src/opnsense/mvc/app/controllers/OPNsense/Firewall/Api/FilterBaseController.php
+2-2src/opnsense/mvc/app/views/OPNsense/Firewall/filter_rule.volt
+1-1src/opnsense/mvc/app/views/OPNsense/Firewall/nat_rule.volt
+1-1src/etc/inc/legacy_bindings.inc
+19-195 files

OPNSense/core 5568a41src/opnsense/mvc/app/controllers/OPNsense/CaptivePortal/Api AccessController.php, src/opnsense/scripts/captiveportal allow.py

Warm-start captive portal roaming expansion.

This restores best-effort sibling address authorization at login for already-known addresses on the same MAC, while keeping the background reconciliation path as the source of truth for later convergence and cleanup.
DeltaFile
+10-2src/opnsense/scripts/captiveportal/allow.py
+4-0src/opnsense/scripts/captiveportal/lib/pf.py
+2-1src/opnsense/mvc/app/controllers/OPNsense/CaptivePortal/Api/AccessController.php
+1-1src/opnsense/service/conf/actions.d/actions_captiveportal.conf
+17-44 files

OPNSense/core 5b85f46src/opnsense/mvc/app/controllers/OPNsense/CaptivePortal/Api AccessController.php, src/opnsense/mvc/app/controllers/OPNsense/CaptivePortal/forms dialogZone.xml

Finish captive portal dual-stack authorization flow.

This makes IPv4 and IPv6 portal entry points behave consistently, fixes proxied client IP detection, and lets roaming sessions discover IPv6 addresses quickly enough to authorize privacy and secondary addresses on the same client.
DeltaFile
+46-30src/opnsense/service/templates/OPNsense/Captiveportal/lighttpd-zone.conf
+16-8src/opnsense/mvc/app/controllers/OPNsense/CaptivePortal/Api/AccessController.php
+2-8src/opnsense/scripts/captiveportal/allow.py
+3-3src/opnsense/service/templates/OPNsense/Captiveportal/lighttpd-api-dispatcher.conf
+1-1src/opnsense/mvc/app/controllers/OPNsense/CaptivePortal/forms/dialogZone.xml
+1-1src/opnsense/scripts/captiveportal/lib/arp.py
+69-511 files not shown
+70-527 files

OPNSense/core a515840src/etc/inc/plugins.inc.d kea.inc

Apply suggestion from @Monviech
DeltaFile
+0-1src/etc/inc/plugins.inc.d/kea.inc
+0-11 files

OPNSense/core 2db56bfsrc/etc/inc interfaces.inc, src/opnsense/scripts/interfaces rtsold_script.sh

interfaces: multi-dhcp6c support #7647

This splits off rtsold and dhcp6c into separate processes.

I'm not entirely sure why we settled for a single deamon of
dhcp6c back in the day, but there are certianly downsides to
it and I don't see something that wasn't fixed in the meantime
that makes this not work.
DeltaFile
+6-20src/etc/inc/interfaces.inc
+6-6src/opnsense/scripts/interfaces/rtsold_script.sh
+12-262 files

OPNSense/core affea84src/opnsense/mvc/app/models/OPNsense/Kea KeaDhcpv4.xml KeaDhcpv6.xml

Add a DependConstraint for ddns_domain_key_secret instead of making it a required field, saves on model migrations
DeltaFile
+10-3src/opnsense/mvc/app/models/OPNsense/Kea/KeaDhcpv4.xml
+10-3src/opnsense/mvc/app/models/OPNsense/Kea/KeaDhcpv6.xml
+20-62 files

OPNSense/core f7b6149src/opnsense/mvc/app/models/OPNsense/Kea KeaDdns.php KeaDhcpv4.php

Review comments, add trailing commas for diff control reasons
DeltaFile
+3-3src/opnsense/mvc/app/models/OPNsense/Kea/KeaDdns.php
+1-1src/opnsense/mvc/app/models/OPNsense/Kea/KeaDhcpv4.php
+1-1src/opnsense/mvc/app/models/OPNsense/Kea/KeaDhcpv6.php
+5-53 files

OPNSense/core c6f245esrc/opnsense/mvc/app/models/OPNsense/Kea KeaDdns.php

Update src/opnsense/mvc/app/models/OPNsense/Kea/KeaDdns.php

Co-authored-by: Franco Fichtner <franco at opnsense.org>
DeltaFile
+1-1src/opnsense/mvc/app/models/OPNsense/Kea/KeaDdns.php
+1-11 files

OPNSense/core 541a1ecsrc/opnsense/mvc/app/models/OPNsense/Kea KeaDdns.php

fix DDNS config generation to place key-name at domain level and deduplicate DNS servers
DeltaFile
+13-6src/opnsense/mvc/app/models/OPNsense/Kea/KeaDdns.php
+13-61 files

OPNSense/core 9562579src/etc/rc.subr.d php var

rc: speed up file deletes

PR: https://forum.opnsense.org/index.php?topic=51232.0
DeltaFile
+1-1src/etc/rc.subr.d/php
+1-1src/etc/rc.subr.d/var
+2-22 files

OPNSense/core 958794bsrc/opnsense/mvc/app/controllers/OPNsense/Kea/Api DdnsController.php

Copyright date
DeltaFile
+1-1src/opnsense/mvc/app/controllers/OPNsense/Kea/Api/DdnsController.php
+1-11 files

OPNSense/core 33f229esrc/opnsense/mvc/app/models/OPNsense/Kea KeaDdns.xml

Add newline to model
DeltaFile
+1-1src/opnsense/mvc/app/models/OPNsense/Kea/KeaDdns.xml
+1-11 files