OPNSense/core 0f641f7 — src/opnsense/mvc/app/controllers/OPNsense/Trust/Api CertController.php CaController.php, src/opnsense/mvc/app/library/OPNsense/Trust Store.php

System: Trust - simplify splitCerts() in previous matching on different types

PR: GHSA-7wvp-6m2q-953c
DeltaFile
+7-18src/opnsense/mvc/app/library/OPNsense/Trust/Store.php
+1-1src/opnsense/mvc/app/controllers/OPNsense/Trust/Api/CertController.php
+1-1src/opnsense/mvc/app/controllers/OPNsense/Trust/Api/CaController.php
+9-203 files

OPNSense/core e6c5b7e — src/etc/ssl opnsense.cnf

System: Trust: mark "X509v3 Key Usage" critical, closes https://github.com/opnsense/core/issues/10999
DeltaFile
+3-3src/etc/ssl/opnsense.cnf
+3-31 files

OPNSense/core b64be86 — src/opnsense/mvc/app/controllers/OPNsense/Trust/Api CaController.php CertController.php, src/opnsense/mvc/app/library/OPNsense/Trust Store.php

System: Trust - openssl_x509_parse() and friends only evaluate the first certificate found and ignores the rest, which means we should ensure only a single certificate is actually offered for certs and ca's.

This improves the general validation of imported certificates.

PR: GHSA-7wvp-6m2q-953c
DeltaFile
+26-0src/opnsense/mvc/app/library/OPNsense/Trust/Store.php
+23-2src/opnsense/mvc/app/controllers/OPNsense/Trust/Api/CertController.php
+17-0src/opnsense/mvc/app/controllers/OPNsense/Trust/Api/CaController.php
+66-23 files

OPNSense/core 00afade — contrib/IXR IXR_Library.php

contrib: multiple deprecation fixes

- Replace xml_set_object() and string handlers with proper object callables.
- Remove xml_parser_free(), a no-op since PHP 8.0
DeltaFile
+2-4contrib/IXR/IXR_Library.php
+2-41 files

OPNSense/core c977efe — src/opnsense/mvc/app/controllers/OPNsense/Firewall/Api FilterController.php FilterBaseController.php, src/opnsense/mvc/app/views/OPNsense/Firewall nat_rule.volt filter_rule.volt

firewall: support moving multiple rules in selection order (#11008)

Unify move-before handling in FilterBaseController so filter and NAT
controllers share the same validation and sequence allocation logic.

Accept up to 50 (current step count) comma-separated rule UUIDs, preserve their selection
order using consecutive sequence values, and only shift following rules
when the existing gap is insufficient. Keep filter moves within their
priority group.

Update the firewall rule grids to submit all selected UUIDs and display
their selection order. Add opt-in selection-order indicators and dynamic
command tooltips to UIBootgrid so the move action reflects the current
selection.
DeltaFile
+75-34src/opnsense/mvc/app/controllers/OPNsense/Firewall/Api/FilterBaseController.php
+2-90src/opnsense/mvc/app/controllers/OPNsense/Firewall/Api/FilterController.php
+14-28src/opnsense/mvc/app/views/OPNsense/Firewall/filter_rule.volt
+14-25src/opnsense/mvc/app/views/OPNsense/Firewall/nat_rule.volt
+24-5src/opnsense/www/js/opnsense_bootgrid.js
+10-0src/opnsense/www/css/opnsense-bootgrid-layout.css
+139-1824 files not shown
+147-19010 files

OPNSense/core a2222b0 — src/sbin opnsense-version

system: wrong redirect in previous
DeltaFile
+1-1src/sbin/opnsense-version
+1-11 files

OPNSense/core d6e8389 — src/etc/rc.syshook.d/early 15-templates, src/etc/rc.syshook.d/update 10-refresh.sh

system: write /etc/os-release; closes #11009

Submitted by: Alok K. Dhir
DeltaFile
+16-1src/sbin/opnsense-version
+6-2src/man/man8/opnsense-version.8
+3-0src/etc/rc.syshook.d/update/10-refresh.sh
+3-0src/etc/rc.syshook.d/early/15-templates
+28-34 files

OPNSense/core 492172c — src/opnsense/www/js opnsense_bootgrid.js

Instead of searching the rendered table DOM, the handler now:

Removes indicators through the deselected row components.
Updates every currently selected row through its RowComponent.
Reuses existing indicators while renumbering.

This is virtual-DOM safe and avoids iterating unrelated rows.
DeltaFile
+10-7src/opnsense/www/js/opnsense_bootgrid.js
+10-71 files

OPNSense/core 4d90ec7 — src/opnsense/mvc/app/views/OPNsense/Firewall nat_rule.volt filter_rule.volt, src/opnsense/www/js opnsense_bootgrid.js

bootgrid: Support functions in tooltip titles, and add a dynamic tooltip for the move rule command
DeltaFile
+6-5src/opnsense/www/js/opnsense_bootgrid.js
+7-1src/opnsense/mvc/app/views/OPNsense/Firewall/nat_rule.volt
+7-1src/opnsense/mvc/app/views/OPNsense/Firewall/filter_rule.volt
+20-73 files

OPNSense/core a4fae56 — src/opnsense/www/css opnsense-bootgrid-layout.css

most likely unnecessary
DeltaFile
+0-1src/opnsense/www/css/opnsense-bootgrid-layout.css
+0-11 files

OPNSense/core e2e0da1 — . plist, src/opnsense/www/js opnsense_widget_manager.js

dashboard: remove old widget manager and fix plist
DeltaFile
+0-892src/opnsense/www/js/opnsense_widget_manager.js
+2-1plist
+2-8932 files

OPNSense/core 8f60583 — src/opnsense/mvc/app/views/OPNsense/Firewall nat_rule.volt filter_rule.volt, src/opnsense/www/css opnsense-bootgrid-layout.css

bootgrid: Add a selection order
DeltaFile
+15-0src/opnsense/www/js/opnsense_bootgrid.js
+11-0src/opnsense/www/css/opnsense-bootgrid-layout.css
+1-0src/opnsense/mvc/app/views/OPNsense/Firewall/nat_rule.volt
+1-0src/opnsense/mvc/app/views/OPNsense/Firewall/filter_rule.volt
+28-04 files

OPNSense/core badf53f — src/opnsense/www/js opnsense_widgets.js

dashboard: immediately close option dialogs for async handling
DeltaFile
+38-24src/opnsense/www/js/opnsense_widgets.js
+38-241 files

OPNSense/core ef0218f — src/opnsense/mvc/app/controllers/OPNsense/IDS/Api SettingsController.php

Services: Intrusion Detection - always initialize reference_html

reported by:  Ada Logics using Anthropic
DeltaFile
+7-1src/opnsense/mvc/app/controllers/OPNsense/IDS/Api/SettingsController.php
+7-11 files

OPNSense/core 942b35c — src/opnsense/mvc/app/controllers/OPNsense/Core/Api DashboardController.php, src/opnsense/www/js opnsense_widgets.js

dashboard: remove configureOnAdd
DeltaFile
+7-18src/opnsense/www/js/opnsense_widgets.js
+0-2src/opnsense/mvc/app/controllers/OPNsense/Core/Api/DashboardController.php
+0-1src/opnsense/www/js/widgets/Metadata/Core.xml
+7-213 files

OPNSense/core 8d271b7 — src/opnsense/mvc/app/library/OPNsense/System/Status IPsecIkev1Status.php

ipsec: add missing email
DeltaFile
+1-1src/opnsense/mvc/app/library/OPNsense/System/Status/IPsecIkev1Status.php
+1-11 files

OPNSense/core c2a902d — src/opnsense/mvc/app/controllers/OPNsense/Firewall/Api FilterBaseController.php, src/opnsense/mvc/app/views/OPNsense/Firewall nat_rule.volt filter_rule.volt

We can remove these frontend validations as we moved them into the controller
DeltaFile
+0-10src/opnsense/mvc/app/views/OPNsense/Firewall/filter_rule.volt
+0-9src/opnsense/mvc/app/views/OPNsense/Firewall/nat_rule.volt
+1-1src/opnsense/mvc/app/controllers/OPNsense/Firewall/Api/FilterBaseController.php
+1-203 files

OPNSense/core d111374 — . plist, src/etc/inc/plugins.inc.d core.inc ipsec.inc

ipsec: move ping_hosts.sh to legacy plugin and harden

The script doesn't need to be in core and does not need to be
run by default.  Tampering with /tmp/tmpHOSTS without legacy
IPsec running would allow creating the file with a non-root
user which the script would pick up and potentially evaluate.

The fix for ping_hosts.sh will be in the matching plugins commit.

Reported by: Adam Korczynski of Ada Logics using Anrophic
DeltaFile
+0-126src/sbin/ping_hosts.sh
+15-4src/etc/inc/plugins.inc.d/ipsec.inc
+0-1src/etc/inc/plugins.inc.d/core.inc
+0-1plist
+15-1324 files

OPNSense/core 141585a — src/opnsense/mvc/app/controllers/OPNsense/Firewall/Api FilterBaseController.php

Make one comment clearer
DeltaFile
+1-1src/opnsense/mvc/app/controllers/OPNsense/Firewall/Api/FilterBaseController.php
+1-11 files

OPNSense/core 2ae9689 — src/opnsense/mvc/app/controllers/OPNsense/Core/Api SnapshotsController.php

snapshots: notes: small fix
DeltaFile
+1-1src/opnsense/mvc/app/controllers/OPNsense/Core/Api/SnapshotsController.php
+1-11 files

OPNSense/core 6f30bde — src/opnsense/mvc/app/controllers/OPNsense/Firewall/Api FilterBaseController.php

Remove this additional validation, lets trust the initial validation
DeltaFile
+0-4src/opnsense/mvc/app/controllers/OPNsense/Firewall/Api/FilterBaseController.php
+0-41 files

OPNSense/core 4b880ed — src/opnsense/mvc/app/controllers/OPNsense/Firewall/Api FilterBaseController.php

Try at refactoring the logic, we want to preserve the sequence in which the rules have been selected, otherwise sortBy does not guarantee a user expected order
DeltaFile
+77-70src/opnsense/mvc/app/controllers/OPNsense/Firewall/Api/FilterBaseController.php
+77-701 files

OPNSense/core 65d39fc — src/opnsense/www/css dashboard.css, src/opnsense/www/js opnsense_health.js opnsense_widgets.js

dashboard: add widget cloning functionality and add HealthGraph.js as a PoC
DeltaFile
+241-0src/opnsense/www/js/widgets/HealthGraph.js
+106-14src/opnsense/www/js/opnsense_widgets.js
+22-4src/opnsense/www/js/opnsense_health.js
+22-0src/opnsense/www/js/widgets/Metadata/Core.xml
+4-2src/opnsense/www/themes/opnsense-dark/assets/stylesheets/dashboard.scss
+4-2src/opnsense/www/css/dashboard.css
+399-226 files not shown
+424-2812 files

OPNSense/core 6ecda69 — src/opnsense/mvc/app/controllers/OPNsense/Firewall/Api FilterBaseController.php

Use asInt() instead, comments cleanup
DeltaFile
+9-8src/opnsense/mvc/app/controllers/OPNsense/Firewall/Api/FilterBaseController.php
+9-81 files

OPNSense/core f1a83f7 — src/opnsense/mvc/app/models/OPNsense/Auth/FieldTypes UidField.php

mvc: UidField: add isolated updateValue() for installer user

(cherry picked from commit bf468af18e6d32eb0b1aee09af3447c1280cb229)
DeltaFile
+9-0src/opnsense/mvc/app/models/OPNsense/Auth/FieldTypes/UidField.php
+9-01 files

OPNSense/core 5bfdb9c — src/opnsense/mvc/app/models/OPNsense/Interfaces/FieldTypes DeviceField.php

interfaces: fix default for non-pluggable devices

(cherry picked from commit 25401f80a0a97b51f1b65b868bfe36905ee91939)
DeltaFile
+6-4src/opnsense/mvc/app/models/OPNsense/Interfaces/FieldTypes/DeviceField.php
+6-41 files

OPNSense/core 4135097 — src/opnsense/www/js opnsense_bootgrid.js

bootgrid: sync columnselect-input state with (un)setColumns

(cherry picked from commit 2c3ac5d69268f4bf066dddd74e481da840eceb84)
DeltaFile
+3-1src/opnsense/www/js/opnsense_bootgrid.js
+3-11 files

OPNSense/core e1170b1 — src/www interfaces.php

interfaces: move legacy apply to /var/lib/php/tmp for #9352

(cherry picked from commit 1f96bd4f6f9dfaff50ac1e5461dd13b06d7842b1)
DeltaFile
+9-9src/www/interfaces.php
+9-91 files

OPNSense/core b3e3e96 — src/www interfaces_ppps.php

interfaces: fix PHP warning in static PPP page
DeltaFile
+1-1src/www/interfaces_ppps.php
+1-11 files

OPNSense/core b50692a — src/www system_general.php

system: bring in a help text edit from master
DeltaFile
+1-1src/www/system_general.php
+1-11 files