OPNSense/core 8cc3418src/opnsense/scripts/shell restore.sh

shell: make a note here otherwise done
DeltaFile
+2-0src/opnsense/scripts/shell/restore.sh
+2-01 files

OPNSense/core c847661. plist, src/opnsense/mvc/app/models/OPNsense/Interfaces/Neighbor dhcpd.php README

interfaces: move dhcpd neighbor entry feed to plugin

(cherry picked from commit adf02f8359b902594da4eb56c1b8c84d5bb51a85)
DeltaFile
+0-58src/opnsense/mvc/app/models/OPNsense/Interfaces/Neighbor/dhcpd.php
+1-1plist
+1-0src/opnsense/mvc/app/models/OPNsense/Interfaces/Neighbor/README
+2-593 files

OPNSense/core adf02f8. plist, src/opnsense/mvc/app/models/OPNsense/Interfaces/Neighbor dhcpd.php README

interfaces: move dhcpd neighbor entry feed to plugin
DeltaFile
+0-58src/opnsense/mvc/app/models/OPNsense/Interfaces/Neighbor/dhcpd.php
+1-1plist
+1-0src/opnsense/mvc/app/models/OPNsense/Interfaces/Neighbor/README
+2-593 files

OPNSense/core 9f8cb9dsrc/opnsense/mvc/app/controllers/OPNsense/Base ApiMutableModelControllerBase.php

mvc: sweep

(cherry picked from commit 6bd41d3e18263629d414fc542439a3d1c8f354f6)
DeltaFile
+1-1src/opnsense/mvc/app/controllers/OPNsense/Base/ApiMutableModelControllerBase.php
+1-11 files

OPNSense/core 5f2ba48src/etc/inc filter.lib.inc, src/opnsense/mvc/app/controllers/OPNsense/Firewall/Api FilterController.php DNatController.php

Firewall: Rules [new] - default ipprotocol mismatch, when not specified, both are indicated

PR: https://github.com/opnsense/core/issues/9858

(cherry picked from commit d348a53d03f54b3b1429b7b61daf1b67adf3486d)
(cherry picked from commit ab7e80abe1cd4b6d4b4822a09606530f9df27766)
(cherry picked from commit 0c3a937cccc478285f2360ad9526bd29abc9be5e)
(cherry picked from commit c7a8884a2a97034e625edcf3dd90ee76bba99d28)
DeltaFile
+4-4src/opnsense/mvc/app/controllers/OPNsense/Firewall/Api/FilterController.php
+1-2src/opnsense/mvc/app/controllers/OPNsense/Firewall/Api/DNatController.php
+3-0src/etc/inc/filter.lib.inc
+1-1src/opnsense/mvc/app/views/OPNsense/Firewall/filter_rule.volt
+1-0src/opnsense/mvc/app/controllers/OPNsense/Firewall/forms/dialogFilterRule.xml
+0-1src/opnsense/scripts/filter/list_non_mvc_rules.php
+10-86 files

OPNSense/core a36b6f1src/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.

(cherry picked from commit 13f45bca921f66b3ecba731b701a8f63e99ddd0e)
DeltaFile
+6-2src/opnsense/mvc/app/views/OPNsense/Diagnostics/log.volt
+2-1src/opnsense/www/js/opnsense_bootgrid.js
+8-32 files

OPNSense/core a9cf88fsrc/opnsense/mvc/app/views/OPNsense/Firewall filter_rule.volt, src/www firewall_rule_lookup.php

Firewall: Rules [new]: Reduce complexity in url hash handling and when using firewall_rule_lookup (#9773)

* Reduce complexity of firewall_rule_lookup, we have an all rules entrypoint now, so potentially we could just search for the UUID of the rule without concerning us with interfaces anymore

* Clean up URL hash logic, we only allow #search and #interface now and need no special handling

* Only get the hash once, use it everywhere, re-add missing null fallback and initialized interface variable

* The hash was consumed too early now, fix it by shifting to the new spot where the variable is used last

(cherry picked from commit d976ae7b6b0f06c235d22de087e4904c28b1286c)
DeltaFile
+7-17src/opnsense/mvc/app/views/OPNsense/Firewall/filter_rule.volt
+1-12src/www/firewall_rule_lookup.php
+8-292 files

OPNSense/core 903c250. plist, src/opnsense/mvc/app/controllers/OPNsense/Base ApiMutableModelControllerBase.php

mvc: collect uuid field so it can be searched, but only if the searchPhrase contains a valid UUID (#9780)

(cherry picked from commit 7738d7e865025022035025c8b65578a57c94feab)
(cherry picked from commit 6ae73e8406b83c92630a184884707a0b92c949b3)
DeltaFile
+58-0src/opnsense/mvc/app/library/OPNsense/Core/Type.php
+17-9src/opnsense/mvc/app/library/OPNsense/Base/UIModelGrid.php
+11-14src/opnsense/mvc/app/controllers/OPNsense/Base/ApiMutableModelControllerBase.php
+3-2src/opnsense/mvc/app/controllers/OPNsense/Routing/Api/SettingsController.php
+1-0plist
+90-255 files

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

Firewall: Rules [new]: Move download and upload commands out of partial into global commands (#9781)

(cherry picked from commit d5a50a98c21eb592348cfb293986f3f0c06906aa)
DeltaFile
+27-23src/opnsense/mvc/app/views/OPNsense/Firewall/filter_rule.volt
+27-231 files

OPNSense/core 23440edsrc/opnsense/mvc/app/views/OPNsense/Diagnostics fw_log.volt, src/opnsense/mvc/app/views/OPNsense/Firewall filter_rule.volt dnat_rule.volt

Firewall: Rules [new]: Add a command button to open the live log with prefilled rule ID (#9770)

fw_log.volt:
Uses a url hash inside fw_log.volt to set a filter when opening it through a link from filter_rule.volt
The url hash can set any type of a single filter, so it can be reused in other pages as well.
Combine entry point of addCombinedFilter and addFilter, decide via array in field what type it is.
Change init entrypoint to always go through the filterChange() pipeline, but have a fast path in there that initializes without a filter. This adds the filter immediately when loading with the page with the URL hash
Make sure we want for tableBuilt to prevent replaceData errors

filter_rule.volt
Only show the log search button when row.log is 1 or true
Change fa icon in the lookup rule reference button in dnat as well for consistency
Use URLSearchParams()

---------

Co-authored-by: Stephan de Wit <stephan.de.wit at deciso.com>
(cherry picked from commit 63e0b92278ad4c5e4b0db9746599903089bf14dd)
DeltaFile
+30-24src/opnsense/mvc/app/views/OPNsense/Diagnostics/fw_log.volt
+36-17src/opnsense/mvc/app/views/OPNsense/Firewall/filter_rule.volt
+3-3src/opnsense/mvc/app/views/OPNsense/Firewall/dnat_rule.volt
+69-443 files

OPNSense/core 7c949c7src/opnsense/mvc/app/library/OPNsense/Core Config.php, src/opnsense/mvc/tests/app/models/OPNsense/ACL/AclConfig config.xml

system: avoid using "(system)", revision match between legacy and mvc

(cherry picked from commit 95bfad28926ef4dad32d385e41b8e252eeec6d52)
DeltaFile
+2-1src/opnsense/mvc/app/library/OPNsense/Core/Config.php
+1-1src/opnsense/mvc/tests/app/models/OPNsense/ACL/AclConfig/config.xml
+1-1src/www/authgui.inc
+4-33 files

OPNSense/core 95bfad2src/opnsense/mvc/app/library/OPNsense/Core Config.php, src/opnsense/mvc/tests/app/models/OPNsense/ACL/AclConfig config.xml

system: avoid using "(system)", revision match between legacy and mvc
DeltaFile
+2-1src/opnsense/mvc/app/library/OPNsense/Core/Config.php
+1-1src/opnsense/mvc/tests/app/models/OPNsense/ACL/AclConfig/config.xml
+1-1src/www/authgui.inc
+4-33 files

OPNSense/core 4a2e001src/opnsense/scripts/shell restore.sh

shell: fix cmp/diff
DeltaFile
+1-1src/opnsense/scripts/shell/restore.sh
+1-11 files

OPNSense/core b86049asrc/opnsense/scripts/shell restore.sh

shell: almost got it right
DeltaFile
+1-1src/opnsense/scripts/shell/restore.sh
+1-11 files

OPNSense/core 0d9c07esrc/opnsense/scripts/shell restore.sh

shell: for beauty context
DeltaFile
+6-1src/opnsense/scripts/shell/restore.sh
+6-11 files

OPNSense/core a59a43fsrc/opnsense/scripts/shell restore.sh

shell: add notes correctly
DeltaFile
+7-2src/opnsense/scripts/shell/restore.sh
+7-21 files

OPNSense/core abf3aa8src/opnsense/scripts/shell restore.sh

shell: wrong path
DeltaFile
+1-1src/opnsense/scripts/shell/restore.sh
+1-11 files

OPNSense/core 03695ffsrc/opnsense/scripts/shell restore.sh

shell: print description if possible
DeltaFile
+5-3src/opnsense/scripts/shell/restore.sh
+5-31 files

OPNSense/core 5c3dc33src/opnsense/scripts/shell restore.sh

shell: more tweaks
DeltaFile
+11-2src/opnsense/scripts/shell/restore.sh
+11-21 files

OPNSense/core 5c6d69dsrc/opnsense/scripts/shell restore.sh

shell: small mods
DeltaFile
+2-4src/opnsense/scripts/shell/restore.sh
+2-41 files

OPNSense/core 2e06b86src/opnsense/scripts/shell restore.sh

shell: add a diff review step to config restore
DeltaFile
+23-2src/opnsense/scripts/shell/restore.sh
+23-21 files

OPNSense/core 49419d7src/etc/inc/plugins.inc.d radvd.inc

radvd: use safe config array iteration over virtual IPs
DeltaFile
+2-2src/etc/inc/plugins.inc.d/radvd.inc
+2-21 files

OPNSense/core 1ecef4csrc/etc/inc auth.inc, src/opnsense/mvc/app/controllers/OPNsense/Auth/Api UserController.php

system: unify pwd_changed_at usage

Remove requirement to configure password_policy_length and update the
timestamp via console and admin pages as well.

PR: https://github.com/opnsense/core/issues/9857

(cherry picked from commit 4010090656779774532b54f7430049279f44cb37)
DeltaFile
+1-8src/www/system_usermanager_passwordmg.php
+2-1src/etc/inc/auth.inc
+1-0src/opnsense/mvc/app/controllers/OPNsense/Auth/Api/UserController.php
+4-93 files

OPNSense/core 7326b42src/etc/inc config.inc

system: create a backup on factory reset

This way we can see all the migrations taking place instead of hiding
them by squashing them into the first backup.  This is very important
for image testing as 26.1 taught us.

(cherry picked from commit da4fbf7ee942d6ce0e7b0a475b4d20577dd37183)
DeltaFile
+1-1src/etc/inc/config.inc
+1-11 files

OPNSense/core da4fbf7src/etc/inc config.inc

system: create a backup on factory reset

This way we can see all the migrations taking place instead of hiding
them by squashing them into the first backup.  This is very important
for image testing as 26.1 taught us.
DeltaFile
+1-1src/etc/inc/config.inc
+1-11 files

OPNSense/core fd2669asrc/opnsense/mvc/app/models/OPNsense/Base/Menu MenuSystem.php

Revert "Services: ISC DHCPv4: hide menu items when dnsmasq is enabled to improve "out of the box" experience. closes https://github.com/opnsense/core/issues/8329"

We are not hiding v6 now and since ISC-DHCP is not in the core system
we can go back to the normal way.

This reverts commit 0d6aa56527c60be14e6e626e5d0728108110cf2f.

PR: https://www.reddit.com/r/opnsense/comments/1qxqru9/comment/o42nx7v/
(cherry picked from commit 34d8a0a6190dbd4d3f5658eff2d8451c4c087430)
DeltaFile
+1-25src/opnsense/mvc/app/models/OPNsense/Base/Menu/MenuSystem.php
+1-251 files

OPNSense/core 34d8a0asrc/opnsense/mvc/app/models/OPNsense/Base/Menu MenuSystem.php

Revert "Services: ISC DHCPv4: hide menu items when dnsmasq is enabled to improve "out of the box" experience. closes https://github.com/opnsense/core/issues/8329"

We are not hiding v6 now and since ISC-DHCP is not in the core system
we can go back to the normal way.

This reverts commit 0d6aa56527c60be14e6e626e5d0728108110cf2f.

PR: https://www.reddit.com/r/opnsense/comments/1qxqru9/comment/o42nx7v/
DeltaFile
+1-25src/opnsense/mvc/app/models/OPNsense/Base/Menu/MenuSystem.php
+1-251 files

OPNSense/core a4ae1cesrc/opnsense/mvc/app/models/OPNsense/Firewall Filter.php

Firewall: Rules [new]: Add validation to prevent using both gateway and reply-to in the same rule (#9863)

(cherry picked from commit 3c28be916d40db28327cb5a68b8e4f329b6834bd)
DeltaFile
+6-0src/opnsense/mvc/app/models/OPNsense/Firewall/Filter.php
+6-01 files

OPNSense/core 3c28be9src/opnsense/mvc/app/models/OPNsense/Firewall Filter.php

Firewall: Rules [new]: Add validation to prevent using both gateway and reply-to in the same rule (#9863)

DeltaFile
+6-0src/opnsense/mvc/app/models/OPNsense/Firewall/Filter.php
+6-01 files

OPNSense/core 777cac4src/opnsense/mvc/app/controllers/OPNsense/Firewall/Api FilterBaseController.php, src/opnsense/mvc/app/library/OPNsense/Firewall Rule.php

mvc: PortField: make "well-known" port numbers known #9835

(cherry picked from commit dd03157b1a932eb13ea3d7608da47297e6a7b8cd)
(cherry picked from commit 36b17adf3155181ba4b09e39ba2b15635a2f7d31)
(cherry picked from commit cd1cd45bb29e911e6433ff5f174dba4eb449c424)
DeltaFile
+56-49src/opnsense/mvc/app/models/OPNsense/Base/FieldTypes/PortField.php
+7-50src/www/guiconfig.inc
+25-25src/opnsense/mvc/tests/app/models/OPNsense/Base/FieldTypes/PortFieldTest.php
+9-3src/opnsense/mvc/app/library/OPNsense/Firewall/Rule.php
+2-2src/opnsense/mvc/app/controllers/OPNsense/Firewall/Api/FilterBaseController.php
+99-1295 files