OPNSense/core d7da708src/opnsense/mvc/app/views/OPNsense/IPsec connections.volt

ipsec: as a consistency idea
DeltaFile
+1-6src/opnsense/mvc/app/views/OPNsense/IPsec/connections.volt
+1-61 files

OPNSense/core 1d6784dsrc/opnsense/mvc/app/controllers/OPNsense/IPsec/forms dialogConnection.xml, src/opnsense/mvc/app/views/OPNsense/IPsec connections.volt vti.volt

ipsec: fancy up the connections dialog

It's a bit special but save is for the form in particular
and this way we can have native striping. The grids save
on their own and hopefully UI will be clearer now.
DeltaFile
+93-103src/opnsense/mvc/app/views/OPNsense/IPsec/connections.volt
+14-0src/opnsense/mvc/app/views/layout_partials/base_dialog.volt
+0-10src/opnsense/mvc/app/views/OPNsense/IPsec/vti.volt
+4-0src/opnsense/mvc/app/controllers/OPNsense/IPsec/forms/dialogConnection.xml
+111-1134 files

OPNSense/core 057bfcesrc/opnsense/mvc/app/views/OPNsense/Firewall filter_rule.volt nat_rule.volt, src/opnsense/mvc/app/views/OPNsense/IPsec connections.volt

ui: apply message unification progress #10230
DeltaFile
+8-32src/opnsense/mvc/app/views/OPNsense/IPsec/connections.volt
+3-3src/opnsense/mvc/app/views/OPNsense/Firewall/filter_rule.volt
+1-5src/opnsense/mvc/app/views/OPNsense/Unbound/acl.volt
+3-2src/opnsense/www/js/opnsense_bootgrid.js
+2-2src/opnsense/mvc/app/views/OPNsense/Firewall/nat_rule.volt
+4-0src/opnsense/www/js/opnsense_ui.js
+21-441 files not shown
+22-457 files

OPNSense/core 05813e1src/opnsense/mvc/app/library/OPNsense/Trust Store.php

Trust: parse key_type and digest, closes https://github.com/opnsense/core/issues/9033
DeltaFile
+13-0src/opnsense/mvc/app/library/OPNsense/Trust/Store.php
+13-01 files

OPNSense/core c092c09src/opnsense/mvc/app/views/OPNsense/IPsec connections.volt

ipsec: start larger layout effort
DeltaFile
+111-99src/opnsense/mvc/app/views/OPNsense/IPsec/connections.volt
+111-991 files

OPNSense/core 7d02b5fsrc/opnsense/mvc/app/views/OPNsense/IPsec connections.volt

ipsec: add working cancel button
DeltaFile
+8-1src/opnsense/mvc/app/views/OPNsense/IPsec/connections.volt
+8-11 files

OPNSense/core 72b685fsrc/opnsense/mvc/app/controllers/OPNsense/IPsec/forms dialogConnection.xml, src/opnsense/mvc/app/views/OPNsense/Firewall filter_rule.volt

ipsec: fancy?
DeltaFile
+2-8src/opnsense/mvc/app/views/OPNsense/IPsec/connections.volt
+4-0src/opnsense/mvc/app/controllers/OPNsense/IPsec/forms/dialogConnection.xml
+1-1src/opnsense/mvc/app/views/OPNsense/Firewall/filter_rule.volt
+7-93 files

OPNSense/core 0d3226esrc/opnsense/mvc/app/views/OPNsense/Firewall filter_rule.volt nat_rule.volt, src/opnsense/mvc/app/views/OPNsense/IPsec connections.volt

ui: apply message unification progress #10230
DeltaFile
+9-32src/opnsense/mvc/app/views/OPNsense/IPsec/connections.volt
+1-5src/opnsense/mvc/app/views/OPNsense/Unbound/acl.volt
+3-3src/opnsense/mvc/app/views/OPNsense/Firewall/filter_rule.volt
+3-2src/opnsense/www/js/opnsense_bootgrid.js
+4-0src/opnsense/www/js/opnsense_ui.js
+2-2src/opnsense/mvc/app/views/OPNsense/Firewall/nat_rule.volt
+22-441 files not shown
+23-457 files

OPNSense/core 82ee437src/opnsense/mvc/app/models/OPNsense/Kea KeaDhcpv6.php KeaDhcpv4.php

Services: Kea DHCPv4/6: Add user-context object to config to emit description
DeltaFile
+27-1src/opnsense/mvc/app/models/OPNsense/Kea/KeaDhcpv6.php
+21-0src/opnsense/mvc/app/models/OPNsense/Kea/KeaDhcpv4.php
+48-12 files

OPNSense/core 2a51193src/opnsense/mvc/app/controllers/OPNsense/Kea/Api LeasesController.php, src/opnsense/mvc/app/views/OPNsense/Kea leases6.volt

Services: Kea DHCPv6: infer IPv6 lease type in delete script via lease lookup so IA_NA and IA_PD can be deleted (#10231)

This avoids propagating lease type handling through controller and UI
layers while fixing unreliable deletion of IA_PD leases.

The approach is pragmatic: in the extremely unlikely case that IA_NA and
IA_PD share the same base address, multiple leases may be deleted. This
tradeoff is considered acceptable given the low impact and recoverable
nature of DHCP leases.

* Also expose type and iaid in the leases page for completion

* prevent truncating duid or iaid in default view
DeltaFile
+29-5src/opnsense/scripts/kea/del_kea_leases.py
+4-2src/opnsense/mvc/app/views/OPNsense/Kea/leases6.volt
+1-1src/opnsense/mvc/app/controllers/OPNsense/Kea/Api/LeasesController.php
+2-0src/opnsense/scripts/kea/get_kea_leases.py
+36-84 files

OPNSense/core af94cfdsrc/opnsense/mvc/app/views/OPNsense/Kea leases6.volt

prevent truncating duid or iaid in default view
DeltaFile
+2-2src/opnsense/mvc/app/views/OPNsense/Kea/leases6.volt
+2-21 files

OPNSense/core be15851src/opnsense/mvc/app/views/OPNsense/Kea leases6.volt, src/opnsense/scripts/kea get_kea_leases.py

Also expose type and iaid in the leases page for completion
DeltaFile
+2-0src/opnsense/scripts/kea/get_kea_leases.py
+1-0src/opnsense/mvc/app/views/OPNsense/Kea/leases6.volt
+3-02 files

OPNSense/core a7f28fcsrc/opnsense/mvc/app/controllers/OPNsense/Kea/Api LeasesController.php, src/opnsense/mvc/app/views/OPNsense/Kea leases6.volt

Services: Kea DHCPv6: infer IPv6 lease tpe in delete script via lease lookup

This avoids propagating lease type handling through controller and UI
layers while fixing unreliable deletion of IA_PD leases.

The approach is pragmatic: in the extremely unlikely case that IA_NA and
IA_PD share the same base address, multiple leases may be deleted. This
tradeoff is considered acceptable given the low impact and recoverable
nature of DHCP leases.
DeltaFile
+29-5src/opnsense/scripts/kea/del_kea_leases.py
+2-1src/opnsense/mvc/app/views/OPNsense/Kea/leases6.volt
+1-1src/opnsense/mvc/app/controllers/OPNsense/Kea/Api/LeasesController.php
+32-73 files

OPNSense/core 5413f26src/opnsense/mvc/app/controllers/OPNsense/Kea/Api LeasesController.php

Lets make it explicit that type is optional to delete a lease
DeltaFile
+1-1src/opnsense/mvc/app/controllers/OPNsense/Kea/Api/LeasesController.php
+1-11 files

OPNSense/core dfaa511src/opnsense/mvc/app/controllers/OPNsense/Kea/Api LeasesController.php

Diff control
DeltaFile
+1-1src/opnsense/mvc/app/controllers/OPNsense/Kea/Api/LeasesController.php
+1-11 files

OPNSense/core 0c6809fsrc/opnsense/scripts/kea del_kea_leases.py

Add small example to arguments in del_kea_leases
DeltaFile
+2-2src/opnsense/scripts/kea/del_kea_leases.py
+2-21 files

OPNSense/core 6dee002src/opnsense/mvc/app/views/OPNsense/Kea leases6.volt leases4.volt

Small style changes and fixing lease endpoints
DeltaFile
+2-14src/opnsense/mvc/app/views/OPNsense/Kea/leases6.volt
+2-12src/opnsense/mvc/app/views/OPNsense/Kea/leases4.volt
+4-262 files

OPNSense/core 615e87fsrc/opnsense/mvc/app/controllers/OPNsense/Kea/Api LeasesController.php, src/opnsense/scripts/kea del_kea_leases.py

Turn lease delete into a one to one operation, requiring one IP and optionally one type. Since multiple parameters are required for IPv6 leases we cannot really batch or mix IP address families anymore.
DeltaFile
+13-21src/opnsense/scripts/kea/del_kea_leases.py
+5-12src/opnsense/mvc/app/controllers/OPNsense/Kea/Api/LeasesController.php
+18-332 files

OPNSense/core 8215b47src/opnsense/mvc/app/views/OPNsense/Kea leases6.volt leases4.volt

remove data-row-id
DeltaFile
+2-1src/opnsense/mvc/app/views/OPNsense/Kea/leases6.volt
+0-1src/opnsense/mvc/app/views/OPNsense/Kea/leases4.volt
+2-22 files

OPNSense/core 3755c81src/opnsense/mvc/app/views/OPNsense/Kea leases4.volt, src/opnsense/service/conf/actions.d actions_kea.conf

We also have to override the IPv4 lease commands now sadly
DeltaFile
+44-1src/opnsense/mvc/app/views/OPNsense/Kea/leases4.volt
+1-1src/opnsense/service/conf/actions.d/actions_kea.conf
+45-22 files

OPNSense/core 05eb36fsrc/opnsense/mvc/app/controllers/OPNsense/Kea/Api LeasesController.php, src/opnsense/mvc/app/views/OPNsense/Kea leases6.volt

Override default delete and delete-selected since we have to use multiple POST parameters now, as we need address and type per lease
DeltaFile
+45-2src/opnsense/mvc/app/views/OPNsense/Kea/leases6.volt
+13-4src/opnsense/mvc/app/controllers/OPNsense/Kea/Api/LeasesController.php
+58-62 files

OPNSense/core 25b8045. plist, src/opnsense/mvc/app/models/OPNsense/Base BaseModel.php

mvc: fix validation via string cast, mostly for UpdateOnlyTextField

PR: https://github.com/opnsense/plugins/pull/5404
DeltaFile
+64-0src/opnsense/mvc/tests/app/models/OPNsense/Base/FieldTypes/UpdateOnlyTextFieldTest.php
+27-26src/opnsense/mvc/tests/app/models/OPNsense/Base/FieldTypes/Field_Framework_TestCase.php
+2-2src/opnsense/mvc/app/models/OPNsense/Base/BaseModel.php
+1-0plist
+94-284 files

OPNSense/core 825836fsrc/etc/inc interfaces.inc

interfaces: small cleanups in previous as a starting point
DeltaFile
+10-19src/etc/inc/interfaces.inc
+10-191 files

OPNSense/core e16fd7fsrc/etc/inc interfaces.inc

Add HA/CARP safety for PPP link startup

Implement HA/CARP safety checks for PPP links to prevent startup if no parent interface is CARP MASTER when 'Disconnect dialup interfaces' is enabled.
DeltaFile
+33-0src/etc/inc/interfaces.inc
+33-01 files

OPNSense/core e5db8bbsrc/etc/inc interfaces.inc

Cleanup HA/CARP safety checks for PPP links patch

Proper indentation and better comment for HA/CARP safety checks for PPP links
DeltaFile
+23-23src/etc/inc/interfaces.inc
+23-231 files

OPNSense/core 9b21321src/opnsense/mvc/app/views/layout_partials base_apply_button.volt, src/opnsense/www/js opnsense_bootgrid.js opnsense_ui.js

ui: use space in apply box for the apply reminder (#10103)

It's a good way to use existing space and move the
message to where it matters most -- the apply button
itself. This also matches the legacy apply box style.
DeltaFile
+13-17src/opnsense/mvc/app/views/layout_partials/base_apply_button.volt
+1-19src/opnsense/www/js/opnsense_bootgrid.js
+2-0src/opnsense/www/js/opnsense_ui.js
+16-363 files

OPNSense/core 36f2fb1src/opnsense/scripts/kea del_kea_leases.py, src/opnsense/service/conf/actions.d actions_kea.conf

Ensure strict parameter usage
DeltaFile
+2-2src/opnsense/scripts/kea/del_kea_leases.py
+1-1src/opnsense/service/conf/actions.d/actions_kea.conf
+3-32 files

OPNSense/core 309c8dcsrc/opnsense/mvc/app/controllers/OPNsense/Kea/Api LeasesController.php

Add type to LeasesController delLeaseAction and escape configdpRun safely
DeltaFile
+2-2src/opnsense/mvc/app/controllers/OPNsense/Kea/Api/LeasesController.php
+2-21 files

OPNSense/core 34db4ecsrc/opnsense/mvc/app/controllers/OPNsense/Kea/Api Dhcpv4Controller.php Dhcpv6Controller.php, src/opnsense/mvc/app/views/OPNsense/Dnsmasq settings.volt

mvc: generalize placeholders between controllers and JS for #10225
DeltaFile
+0-8src/opnsense/mvc/app/views/OPNsense/Kea/dhcpv6.volt
+0-8src/opnsense/mvc/app/views/OPNsense/Dnsmasq/settings.volt
+0-8src/opnsense/mvc/app/views/OPNsense/Kea/dhcpv4.volt
+3-1src/opnsense/mvc/app/controllers/OPNsense/Kea/Api/Dhcpv4Controller.php
+3-1src/opnsense/mvc/app/controllers/OPNsense/Kea/Api/Dhcpv6Controller.php
+3-0src/opnsense/www/js/opnsense.js
+9-261 files not shown
+11-277 files

OPNSense/core d46112esrc/opnsense/mvc/app/views/layout_partials form_input_tr.volt

mvc: volt form template, add type_formatter keyword which was implemented in https://github.com/opnsense/core/commit/528474372b373c720962e5efaad3c7cf6773917a
DeltaFile
+5-3src/opnsense/mvc/app/views/layout_partials/form_input_tr.volt
+5-31 files