OPNSense/core 36b17adsrc/opnsense/mvc/app/models/OPNsense/Base/FieldTypes PortField.php, src/opnsense/mvc/tests/app/models/OPNsense/Base/FieldTypes PortFieldTest.php

tests: PortField: test well-known values against system #9835

Obsolete services have been removed which makes them error out.
Not sure if worth migrating or making the whole thing more clever.

Two appear to have been renamed.
DeltaFile
+28-25src/opnsense/mvc/tests/app/models/OPNsense/Base/FieldTypes/PortFieldTest.php
+2-10src/opnsense/mvc/app/models/OPNsense/Base/FieldTypes/PortField.php
+30-352 files

OPNSense/core 4c7b16esrc/opnsense/mvc/app/models/OPNsense/Base/FieldTypes PortField.php

mvc: PortField: "wins" is known as "nameserver", sort list #9835

It makes sense to test all of these values in the unittest then
before this breaks during an OS update.
DeltaFile
+13-13src/opnsense/mvc/app/models/OPNsense/Base/FieldTypes/PortField.php
+13-131 files

OPNSense/core b62fca7src/www interfaces_assign.php

interfaces: capture enter key during assignment

This is done to trigger the correct action in the form.

Reported by: @sheridans
DeltaFile
+7-1src/www/interfaces_assign.php
+7-11 files

OPNSense/core e19ff66src/opnsense/mvc/app/library/OPNsense/Firewall Rule.php

firewall: fix running into error using well known protocols with "-" in them #9835

The ordering is debatable. For now just make sure that we didn't miss the
chance to look up the original one and accept it as is.
DeltaFile
+1-1src/opnsense/mvc/app/library/OPNsense/Firewall/Rule.php
+1-11 files

OPNSense/core ca2a344src/etc/rc.syshook.d/monitor 20-recover

system: one tabs vs. spaces issue
DeltaFile
+1-1src/etc/rc.syshook.d/monitor/20-recover
+1-11 files

OPNSense/core 9a691f5src/etc/inc/plugins.inc.d radvd.inc

radvd: fold $primary identification into $stanzas for #9815
DeltaFile
+9-8src/etc/inc/plugins.inc.d/radvd.inc
+9-81 files

OPNSense/core 13f45bcsrc/opnsense/mvc/app/views/OPNsense/Diagnostics log.volt, src/opnsense/www/js opnsense_bootgrid.js

log files: fix 'go to page' edge case and row count persistence/max

The log controller defines 5000 rows as the limit to prevent OOM
issues, however, since the front-end knows nothing about this,
setting the row count to "all" will only show the first
5000 result without a way to paginate, even if there are more
log entries. Logically, if the controller defines 5000 as a limit,
the view shouldn't allow "all" as a selection, so override it here.

Furthermore, row count "all" was a boolean, which broke the "go to page"
button. While "all" isn't allowed anymore now, we should check
if the value is a boolean regardless. Also, the grid wasn't
indexing on "rnum" properly, so the grid had no idea where to scroll
to once clicked.
DeltaFile
+6-2src/opnsense/mvc/app/views/OPNsense/Diagnostics/log.volt
+2-1src/opnsense/www/js/opnsense_bootgrid.js
+8-32 files

OPNSense/core 65b3a98src/opnsense/mvc/app/views/OPNsense/Firewall dnat_rule.volt npt_rule.volt

firewall: the other part of #9821
DeltaFile
+1-1src/opnsense/mvc/app/views/OPNsense/Firewall/dnat_rule.volt
+1-1src/opnsense/mvc/app/views/OPNsense/Firewall/npt_rule.volt
+1-1src/opnsense/mvc/app/views/OPNsense/Firewall/onat_rule.volt
+3-33 files

OPNSense/core 435a36esrc/opnsense/mvc/app/views/OPNsense/Firewall snat_rule.volt

firewal:: fix snat rule enabled check (#9821)

DeltaFile
+1-1src/opnsense/mvc/app/views/OPNsense/Firewall/snat_rule.volt
+1-11 files

OPNSense/core 64dbf01src/opnsense/mvc/app/models/OPNsense/Base/FieldTypes BaseListField.php AuthGroupField.php

mvc: BaseListField: shared implementation of $internalStaticOptionList, proof of concept for https://github.com/opnsense/core/issues/9816

Wrap static access in protected functions which ensures content is static per inherited class:

hasStaticOptions()
getStaticOptions()
setStaticOptions(array)
resetStaticOptions()
DeltaFile
+26-0src/opnsense/mvc/app/models/OPNsense/Base/FieldTypes/BaseListField.php
+7-13src/opnsense/mvc/app/models/OPNsense/Base/FieldTypes/AuthGroupField.php
+33-132 files

OPNSense/core 3316148src/opnsense/mvc/app/controllers/OPNsense/Unbound/Api OverviewController.php

unbound: simplify getPoliciesAction() a bit for  https://github.com/opnsense/core/issues/9814
DeltaFile
+1-7src/opnsense/mvc/app/controllers/OPNsense/Unbound/Api/OverviewController.php
+1-71 files

OPNSense/core 00b5984src/opnsense/mvc/app/controllers/OPNsense/Unbound/Api OverviewController.php, src/opnsense/mvc/app/views/OPNsense/Unbound overview.volt

unbound: move policy fetch to the controller, clean up accordingly. Fixes https://github.com/opnsense/core/issues/9814
DeltaFile
+104-108src/opnsense/mvc/app/views/OPNsense/Unbound/overview.volt
+9-26src/opnsense/mvc/app/controllers/OPNsense/Unbound/Api/OverviewController.php
+113-1342 files

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

bootgrid: swap order of custom commands placement making sure they participate in command binding

(cherry picked from commit 5b3b163ce0d93d41fcb141807c6d76389178ad1b)
DeltaFile
+5-5src/opnsense/www/js/opnsense_bootgrid.js
+5-51 files

OPNSense/core 6859f27src/opnsense/mvc/app/library/OPNsense/Firewall Rule.php

firewall: tweak comment

(cherry picked from commit ff41dee988f7bad2622aeb3bb20d47b7841e0071)
DeltaFile
+1-1src/opnsense/mvc/app/library/OPNsense/Firewall/Rule.php
+1-11 files

OPNSense/core ff41deesrc/opnsense/mvc/app/library/OPNsense/Firewall Rule.php

firewall: tweak comment
DeltaFile
+1-1src/opnsense/mvc/app/library/OPNsense/Firewall/Rule.php
+1-11 files

OPNSense/core b92c060. plist

pkg: fix plist
DeltaFile
+1-0plist
+1-01 files

OPNSense/core 9768d8fsrc/opnsense/mvc/app/library/OPNsense/Firewall Rule.php FilterRule.php, src/opnsense/mvc/tests/app/library/OPNsense/Firewall FilterRuleTest.php

firewall: adjust for parseReplace() for icmp-type "skip"; closes #9738

(cherry picked from commit a09fab2c8db5b2073cce34620afa35049a85d12e)
(cherry picked from commit cd409c5729e1f73eb128812083f5c555f81257ed)
DeltaFile
+12-11src/opnsense/mvc/app/library/OPNsense/Firewall/Rule.php
+15-0src/opnsense/mvc/tests/app/library/OPNsense/Firewall/FilterRuleTest.php
+2-2src/opnsense/mvc/app/library/OPNsense/Firewall/FilterRule.php
+4-0src/opnsense/mvc/tests/app/library/OPNsense/Firewall/FilterRuleTest/testIcmp.conf
+33-134 files

OPNSense/core 902e053src/opnsense/mvc/app/models/OPNsense/Firewall Filter.xml

Firewall: Rules [new]: Implement missing ICMP types (#9731)

Signed-off-by: Bjoern Jakobsen <Bjoern.Jakobsen at lrz.de>
(cherry picked from commit 4534e73dd731994a0ed52aaa79cc4c773bc7ac7b)
DeltaFile
+29-16src/opnsense/mvc/app/models/OPNsense/Firewall/Filter.xml
+29-161 files

OPNSense/core d0bc5eesrc/opnsense/mvc/app/models/OPNsense/Base/FieldTypes CertificateField.php, src/opnsense/mvc/tests/app/models/OPNsense/Base/FieldTypes CertificateFieldTest.php InterfaceFieldTest.php

mvc: CertificateField: same as 870692c154f

It's time to create a ticket for generalisation because now
resetStaticOptionList() is declared in two places also hinting
at a shared functionality in BaseListField.

(cherry picked from commit 104d5f02f894be47b43e4403d3a0d4f84ab740f9)
DeltaFile
+24-23src/opnsense/mvc/tests/app/models/OPNsense/Base/FieldTypes/CertificateFieldTest.php
+8-0src/opnsense/mvc/app/models/OPNsense/Base/FieldTypes/CertificateField.php
+2-1src/opnsense/mvc/tests/app/models/OPNsense/Base/FieldTypes/InterfaceFieldTest.php
+34-243 files

OPNSense/core 104d5f0src/opnsense/mvc/app/models/OPNsense/Base/FieldTypes CertificateField.php, src/opnsense/mvc/tests/app/models/OPNsense/Base/FieldTypes CertificateFieldTest.php InterfaceFieldTest.php

mvc: CertificateField: same as 870692c154f

It's time to create a ticket for generalisation because now
resetStaticOptionList() is declared in two places also hinting
at a shared functionality in BaseListField.
DeltaFile
+24-23src/opnsense/mvc/tests/app/models/OPNsense/Base/FieldTypes/CertificateFieldTest.php
+8-0src/opnsense/mvc/app/models/OPNsense/Base/FieldTypes/CertificateField.php
+2-1src/opnsense/mvc/tests/app/models/OPNsense/Base/FieldTypes/InterfaceFieldTest.php
+34-243 files

OPNSense/core 0ef74d6src/opnsense/mvc/app/library/OPNsense/Firewall Rule.php

firewall: squelch a warning triggered by tests
DeltaFile
+1-1src/opnsense/mvc/app/library/OPNsense/Firewall/Rule.php
+1-11 files

OPNSense/core 8df3fafsrc/opnsense/mvc/app/views/OPNsense/Core firmware.volt

firmware: shorten this message, spinner now back to same line

(cherry picked from commit a5c1076188a658aff30e755944c6c84d4be1bc30)
DeltaFile
+2-2src/opnsense/mvc/app/views/OPNsense/Core/firmware.volt
+2-21 files

OPNSense/core 1046f6asrc/opnsense/mvc/app/views/OPNsense/Core firmware.volt

firmware: fix this annoying UX bug not hiding advanced options

(cherry picked from commit 0ed6359197e89025961a22ba5bb0cfc736edfbb4)
DeltaFile
+1-1src/opnsense/mvc/app/views/OPNsense/Core/firmware.volt
+1-11 files

OPNSense/core bc7f22csrc/opnsense/scripts/filter update_tables.py, src/opnsense/scripts/filter/lib/alias __init__.py

Firewall: Aliases - better focus selected alias updates to in crease performance when either --aliases or --types is used.

(cherry picked from commit df17f3ce819c498bec819e1d8d9ed63e2cb84f60)
DeltaFile
+20-0src/opnsense/scripts/filter/lib/alias/__init__.py
+8-1src/opnsense/scripts/filter/update_tables.py
+28-12 files

OPNSense/core ff53ff6src/etc/inc config.inc

backend: rename to config_push_array() for clarity
DeltaFile
+1-1src/etc/inc/config.inc
+1-11 files

OPNSense/core 18c3f11src/etc/inc rrd.inc

reporting: adapt config_read_array() in rrd_import()

Note to self: can find more of these using

    % git grep 'foreach..$config\['
DeltaFile
+1-3src/etc/inc/rrd.inc
+1-31 files

OPNSense/core d97bebbsrc/etc/inc config.inc, src/etc/inc/plugins.inc.d webgui.inc

backend: rename to config_push_array() since "write" is confusing
DeltaFile
+2-2src/opnsense/scripts/shell/password.php
+1-1src/etc/inc/config.inc
+1-1src/etc/inc/plugins.inc.d/webgui.inc
+4-43 files

OPNSense/core bbf4ec5src/opnsense/scripts/monit gateway_alert.php

monit: one config_read_array() candidate
DeltaFile
+17-19src/opnsense/scripts/monit/gateway_alert.php
+17-191 files

OPNSense/core 08b0683src/www system_authservers.php

system: minor cleanup in auth servers page

'ca' comfig property isn't relevant since b2affd161dbc3c.
DeltaFile
+0-2src/www/system_authservers.php
+0-21 files

OPNSense/core 8a9996dsrc/etc/inc config.inc

config: add config_write_array() magic

With this we can insert new entries without the need to grab the entry
beforehand using config_read_array().

    config_write_array('foo', 'bar', 'hello');

becomes

    <foo>
        <bar>hello</bar>
    </foo>

(cherry picked from commit 8e8a70713065b0c9e82115c25c8b65b9d767ea2c)
DeltaFile
+9-0src/etc/inc/config.inc
+9-01 files