OPNSense/core e3c6ea6src/opnsense/mvc/app/controllers/OPNsense/Firewall/Api FilterBaseController.php

Dedicated string cast is not needed here
DeltaFile
+1-1src/opnsense/mvc/app/controllers/OPNsense/Firewall/Api/FilterBaseController.php
+1-11 files

OPNSense/core f56cbc0src/opnsense/mvc/app/controllers/OPNsense/Firewall/Api FilterBaseController.php

lazy load the Category model to simplify code
DeltaFile
+25-13src/opnsense/mvc/app/controllers/OPNsense/Firewall/Api/FilterBaseController.php
+25-131 files

OPNSense/core 43c933d. LICENSE

LICENSE: sync
DeltaFile
+1-1LICENSE
+1-11 files

OPNSense/core 7e089da. plist, src/opnsense/service/templates/OPNsense/Sample example_simple_page.txt example_config.txt

backend: remove unused examples throwing errors now

PR: https://forum.opnsense.org/index.php?topic=51166.0
DeltaFile
+0-38src/opnsense/service/templates/OPNsense/Sample/example_simple_page.txt
+0-18src/opnsense/service/templates/OPNsense/Sample/example_config.txt
+0-8plist
+0-2src/opnsense/service/templates/OPNsense/Sample/+TARGETS
+0-2src/opnsense/service/templates/OPNsense/Sample/example_parent.txt
+0-1src/opnsense/service/templates/OPNsense/Sample/sub1/+TARGETS
+0-693 files not shown
+0-729 files

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

Firewall: Rules [new]: Fix category colors in grid

Before this change, the controller returned color values and the frontend matched them best effort to the category key. This means there was an implicit order, and this order could break.
With this change, order independant metadata is returned, and the frontend renders these categories directly in the category formatter.
DeltaFile
+15-6src/opnsense/mvc/app/controllers/OPNsense/Firewall/Api/FilterBaseController.php
+5-6src/opnsense/mvc/app/views/OPNsense/Firewall/filter_rule.volt
+5-6src/opnsense/mvc/app/views/OPNsense/Firewall/nat_rule.volt
+25-183 files

OPNSense/core 4c5fa27src/opnsense/mvc/app/models/OPNsense/Firewall DNat.php

Firewall: NAT: Destination NAT: Add model validations for common errors (#9885)

DeltaFile
+37-1src/opnsense/mvc/app/models/OPNsense/Firewall/DNat.php
+37-11 files

OPNSense/core 0591878src/opnsense/mvc/app/views/OPNsense/Firewall filter_rule.volt

Firewall: Rules [new]: When repopulating the interface selectpicker, always restore current selection (#9898)

DeltaFile
+11-4src/opnsense/mvc/app/views/OPNsense/Firewall/filter_rule.volt
+11-41 files

OPNSense/core bd7ddcdsrc/opnsense/www/js opnsense_bootgrid.js

bootgrid: force a lightweight redraw when columns are programmatically changed

This is evident in the new firewall rules page, where disabling inspect
mode can leave a gap on the right side of the table due to the removed
columns.
DeltaFile
+2-0src/opnsense/www/js/opnsense_bootgrid.js
+2-01 files

OPNSense/core 59ad7besrc/opnsense/mvc/app/controllers/OPNsense/Unbound/forms dnsbl.xml, src/opnsense/mvc/app/views/OPNsense/Unbound dnsbl.volt

bootgrid: use expand formatter for blocklist URLs and dnsbl types as well (https://github.com/opnsense/core/issues/9796)

While here, the fetched value should use the formatter value first,
falling back to the actual cell value if it isn't there.
DeltaFile
+0-8src/opnsense/mvc/app/views/OPNsense/Unbound/dnsbl.volt
+5-2src/opnsense/mvc/app/controllers/OPNsense/Unbound/forms/dnsbl.xml
+3-1src/opnsense/www/js/opnsense_bootgrid.js
+8-113 files

OPNSense/core d57019bsrc/opnsense/mvc/app/views/OPNsense/Firewall filter_rule.volt

Essentially just checking if there is a selected value should be the safest
DeltaFile
+1-1src/opnsense/mvc/app/views/OPNsense/Firewall/filter_rule.volt
+1-11 files

OPNSense/core 307aef6src/opnsense/mvc/app/views/OPNsense/Firewall filter_rule.volt

interface can be a reserved word, better change the name to interfaceCandidate
DeltaFile
+3-3src/opnsense/mvc/app/views/OPNsense/Firewall/filter_rule.volt
+3-31 files

OPNSense/core 0888889src/opnsense/mvc/app/controllers/OPNsense/Unbound/forms dnsbl.xml, src/opnsense/mvc/app/views/OPNsense/Interface overview.volt

bootgrid: introduce 'expand' formatter to cap lists of data
DeltaFile
+1-50src/opnsense/mvc/app/views/OPNsense/Interface/overview.volt
+47-0src/opnsense/www/js/opnsense_bootgrid.js
+9-0src/opnsense/mvc/app/controllers/OPNsense/Unbound/forms/dnsbl.xml
+2-1src/opnsense/mvc/app/views/layouts/default.volt
+59-514 files

OPNSense/core 9f812f8src/opnsense/mvc/app/views/OPNsense/Firewall filter_rule.volt

Firewall: Rules [new]: When repopulating the interface selectpicker, always restore current selection
DeltaFile
+11-4src/opnsense/mvc/app/views/OPNsense/Firewall/filter_rule.volt
+11-41 files

OPNSense/core 18036e2src/opnsense/mvc/app/models/OPNsense/Firewall DNat.php

Use foreach loop for address and port validations
DeltaFile
+18-47src/opnsense/mvc/app/models/OPNsense/Firewall/DNat.php
+18-471 files

OPNSense/core b2052b7src/opnsense/mvc/app/controllers/OPNsense/Unbound/forms dnsbl.xml, src/opnsense/mvc/app/views/OPNsense/Interface overview.volt

bootgrid: introduce 'expand' formatter to cap lists of data
DeltaFile
+1-50src/opnsense/mvc/app/views/OPNsense/Interface/overview.volt
+47-0src/opnsense/www/js/opnsense_bootgrid.js
+9-0src/opnsense/mvc/app/controllers/OPNsense/Unbound/forms/dnsbl.xml
+2-1src/opnsense/mvc/app/views/layouts/default.volt
+59-514 files

OPNSense/core df6d9easrc/opnsense/mvc/app/library/OPNsense/Core ConfigMaintenance.php

mvc: ConfigMaintenance: when constructing class names use a safer way to strip .php extension

It's not entirely clear what is going on in the report but since the class is more or less
"empty" it looks like a path has a "." in it and the leftmost part of that path wins the
explode() although it was meant to strip the PHP extension at the end instead.

Thus make the code safer and try again with the user.

PR: https://forum.opnsense.org/index.php?topic=51102.0
DeltaFile
+9-5src/opnsense/mvc/app/library/OPNsense/Core/ConfigMaintenance.php
+9-51 files

OPNSense/core 738bdfesrc/opnsense/mvc/app/controllers/OPNsense/Core/forms snapshot.xml

System: Snapshots - unintentoinally shown note in grid, data is not collected or searchable via grid, closes https://github.com/opnsense/core/issues/9893
DeltaFile
+3-0src/opnsense/mvc/app/controllers/OPNsense/Core/forms/snapshot.xml
+3-01 files

OPNSense/core b430d22Mk git.mk

make: could you be any more lazy? yes
DeltaFile
+14-6Mk/git.mk
+14-61 files

OPNSense/core 06c79f2src/opnsense/mvc/app/controllers/OPNsense/Unbound/forms dnsbl.xml, src/opnsense/mvc/app/views/OPNsense/Interface overview.volt

bootgrid: introduce 'expand' formatter to cap lists of data
DeltaFile
+2-51src/opnsense/mvc/app/views/OPNsense/Interface/overview.volt
+47-0src/opnsense/www/js/opnsense_bootgrid.js
+9-0src/opnsense/mvc/app/controllers/OPNsense/Unbound/forms/dnsbl.xml
+2-1src/opnsense/mvc/app/views/layouts/default.volt
+60-524 files

OPNSense/core 4f5ce0dsrc/etc rc

Revert "rc: gpart says we should commit the label but the label just points somewhere? #8543"

This reverts commit dabbc65045e35466f81310b8791d50c0f8641e4d.

Revert "rc: third time is the charm? #8543"

This reverts commit e3e389f8185517085a737169cc8d9679f01ab32f.

Revert "rc: also add gpart-commit in in the UFS case for #8543"

This reverts commit dc373f7d221311cdb76a245571f019a5af687f57.

Revert "rc: support MBR slices for growfs #8543"

This reverts commit 12bdcbc59abdd7853863bd84d90a31acae03db69.
DeltaFile
+2-16src/etc/rc
+2-161 files

OPNSense/core 48c7dc8src/etc rc, src/etc/rc.subr.d var

Revert "rc: during testing it was found that unionfs clobbers /root's 750 permission"

The commit's assumptions aren't entirely true and these changes
were shipped with 26.1 as well so revert back to them.

This reverts commit a763592c70dfeb59eb911467b453aabe7c4ce872.
DeltaFile
+5-0src/etc/rc.subr.d/var
+1-1src/etc/rc
+6-12 files

OPNSense/core 0fa6e09src/opnsense/www/js opnsense_bootgrid.js

bootgrid: split row selection behavior into rowSelection boolean

This mimics the old-style behavior, where by default a row is not
selectable through any of its cells to minimize text selection
interference, but give grids the option to enable it anyway.

Tabulator does not support the combination "highlight" and an
integer specifiying a maximum amount of selectable rows, so this
commit uses some custom logic in the rowSelected event to do this.
DeltaFile
+16-6src/opnsense/www/js/opnsense_bootgrid.js
+16-61 files

OPNSense/core d021eaasrc/opnsense/scripts/captiveportal allow.py cp-background-process.py, src/opnsense/scripts/captiveportal/lib arp.py

sort behavior only applicable for hostwatch, also arp_entry was a dict
DeltaFile
+23-12src/opnsense/scripts/captiveportal/lib/arp.py
+1-1src/opnsense/scripts/captiveportal/allow.py
+1-1src/opnsense/scripts/captiveportal/cp-background-process.py
+25-143 files

OPNSense/core f4b4c76src/etc/inc/plugins.inc.d core.inc, src/opnsense/service/templates/OPNsense/Syslog/local routing.conf

system: remove miniupnpd for plugin registration

PR: https://github.com/opnsense/plugins/pull/5126
(cherry picked from commit 23d3be4c6e1d18fec9e4ef91267dbd2df681eefe)
DeltaFile
+1-2src/opnsense/service/templates/OPNsense/Syslog/local/routing.conf
+1-1src/etc/inc/plugins.inc.d/core.inc
+2-32 files

OPNSense/core 739ff26src/opnsense/mvc/app/library/OPNsense/System/Status CaptivePortalStatus.php

add banner warning if hostwatch is disabled
DeltaFile
+56-0src/opnsense/mvc/app/library/OPNsense/System/Status/CaptivePortalStatus.php
+56-01 files

OPNSense/core bedaadcsrc/opnsense/mvc/app/controllers/OPNsense/CaptivePortal/Api AccessController.php, src/opnsense/scripts/captiveportal allow.py cp-background-process.py

update roaming ips on connect to prevent delays on login
DeltaFile
+14-6src/opnsense/scripts/captiveportal/allow.py
+2-1src/opnsense/mvc/app/controllers/OPNsense/CaptivePortal/Api/AccessController.php
+1-1src/opnsense/scripts/captiveportal/cp-background-process.py
+1-1src/opnsense/scripts/captiveportal/lib/arp.py
+1-1src/opnsense/service/conf/actions.d/actions_captiveportal.conf
+19-105 files

OPNSense/core d759441src/opnsense/scripts/captiveportal/lib arp.py

default to 24 hours last-seen window for hostwatch lookup
DeltaFile
+1-1src/opnsense/scripts/captiveportal/lib/arp.py
+1-11 files

OPNSense/core 17587f6src/opnsense/scripts/captiveportal cp-background-process.py, src/opnsense/scripts/captiveportal/lib db.py

move migration code to sql script, make sure only daemon creates the db
DeltaFile
+4-32src/opnsense/scripts/captiveportal/lib/db.py
+9-9src/opnsense/scripts/captiveportal/sql/init.sql
+1-0src/opnsense/scripts/captiveportal/cp-background-process.py
+14-413 files

OPNSense/core cf5bf9asrc/opnsense/mvc/app/controllers/OPNsense/Firewall/Api FilterBaseController.php

firewall: offer aliases the same was as the field type expects them

Model invoke will see newer aliases not presisted in the config so
we need to align the code paths.  Not showing these until rendered
is better, but also needs a plugin fix for Q-Feeds to make its aliases
available to the rules right after activation.

PR: https://www.reddit.com/r/opnsense/comments/1rjqb73/qfeeds_plugin_issue/
(cherry picked from commit 8554581eacc3cf5ae9bce32a132b7c71b5f5ceff)
DeltaFile
+2-4src/opnsense/mvc/app/controllers/OPNsense/Firewall/Api/FilterBaseController.php
+2-41 files

OPNSense/core b7009b9src/opnsense/mvc/app/models/OPNsense/Firewall Alias.php

firewall: os-firewall... haven't heard that name in a long time

(cherry picked from commit 912b011175afdaa31c221861b6471c86cf336971)
DeltaFile
+0-1src/opnsense/mvc/app/models/OPNsense/Firewall/Alias.php
+0-11 files