OPNSense/core 96ceae0src/opnsense/mvc/app/library/OPNsense/Firewall ForwardRule.php

Firewall: NAT: Destination NAT - fix target mapping inconsistency leading to ip and network references not being processed (e.g. "lan ip", "wan network")
DeltaFile
+2-2src/opnsense/mvc/app/library/OPNsense/Firewall/ForwardRule.php
+2-21 files

OPNSense/core e0eceb5src/etc/inc interfaces.inc

interfaces: fix wlanmode usage part 2 #9727

(cherry picked from commit 4912a671be1ee8dd261d3dd9ed5720b9ed2f805e)
DeltaFile
+3-15src/etc/inc/interfaces.inc
+3-151 files

OPNSense/core 2547703src/opnsense/mvc/tests/app/library/OPNsense/Core ShellTest.php

mvc: style
DeltaFile
+1-2src/opnsense/mvc/tests/app/library/OPNsense/Core/ShellTest.php
+1-21 files

OPNSense/core 4f528e6src/opnsense/mvc/app/models/OPNsense/Firewall Filter.xml

Firewall: Rules [new]: The SKIP icmp type is not a valid name for pf, most likely a bug. Number would work
DeltaFile
+1-1src/opnsense/mvc/app/models/OPNsense/Firewall/Filter.xml
+1-11 files

OPNSense/core aef0172src/opnsense/mvc/app/library/OPNsense/Core Shell.php, src/opnsense/mvc/tests/app/library/OPNsense/Core ShellTest.php

tests: don't put errors into log during tests for previous
DeltaFile
+5-1src/opnsense/mvc/app/library/OPNsense/Core/Shell.php
+2-0src/opnsense/mvc/tests/app/library/OPNsense/Core/ShellTest.php
+7-12 files

OPNSense/core 4534e73src/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>
DeltaFile
+29-16src/opnsense/mvc/app/models/OPNsense/Firewall/Filter.xml
+29-161 files

OPNSense/core b25bdee. plist, src/opnsense/mvc/app/library/OPNsense/Core Shell.php

mvc: Shell: rewrite exec_safe() to avoid vsprintf() complications; closes #9703

Only support %s and %% using preg_replace_callback() and throw
3 distinct TypeError cases making sure the resulting command is
the dummy command then.

We're not overly interested in how well escapeshellarg() works,
but we ensure it's being called always.
DeltaFile
+84-0src/opnsense/mvc/tests/app/library/OPNsense/Core/ShellTest.php
+18-7src/opnsense/mvc/app/library/OPNsense/Core/Shell.php
+1-0plist
+103-73 files

OPNSense/core e6df79asrc/opnsense/mvc/app/library/OPNsense/Core Shell.php

mvc: Shell: rewrite exec_safe() to avoid vsprintf() complications #9703
DeltaFile
+17-6src/opnsense/mvc/app/library/OPNsense/Core/Shell.php
+17-61 files

OPNSense/core aa6a813src/opnsense/mvc/app/models/OPNsense/Firewall Group.php

Firewall: Rules [new]: Fix group rename in source_net, destination_net and SNAT/DNAT target fields (#9734)

* Firewall: Rules [new]: Fix group rename in source_net, destination_net and SNAT/DNAT target fields

* review comments @fichtner
DeltaFile
+20-3src/opnsense/mvc/app/models/OPNsense/Firewall/Group.php
+20-31 files

OPNSense/core ad95bd1src/opnsense/mvc/app/models/OPNsense/Firewall Group.php

review comments @fichtner
DeltaFile
+2-4src/opnsense/mvc/app/models/OPNsense/Firewall/Group.php
+2-41 files

OPNSense/core b39a90bsrc/opnsense/mvc/app/models/OPNsense/Firewall Group.php

Firewall: Rules [new]: Fix group rename in source_net, destination_net and SNAT/DNAT target fields
DeltaFile
+20-1src/opnsense/mvc/app/models/OPNsense/Firewall/Group.php
+20-11 files

OPNSense/core cbc09e7src/opnsense/mvc/app/controllers/OPNsense/Firewall/Api FilterBaseController.php, src/opnsense/mvc/app/models/OPNsense/Base/FieldTypes PortField.php

firewall: well known ports added to filter rule selection; closes #9692
DeltaFile
+24-6src/opnsense/mvc/app/controllers/OPNsense/Firewall/Api/FilterBaseController.php
+11-2src/opnsense/mvc/app/models/OPNsense/Base/FieldTypes/PortField.php
+35-82 files

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

firewall: undefined is also "*"
DeltaFile
+2-3src/opnsense/mvc/app/views/OPNsense/Firewall/filter_rule.volt
+2-31 files

OPNSense/core ca3d974src/etc/inc interfaces.inc, src/opnsense/scripts/interfaces rtsold_script.sh

interfaces: multi-dhcp6c support and custom PD association #7647

This splits off rtsold and dhcp6c into separate processes
which frees us from the restrictions of faked iterative IDs
for PD associations.  For NA we simply default to 0 now.

I'm not entirely sure why we settled for a single deamon of
dhcp6c back in the day, but there are certianly downsides to
it and I don't see something that wasn't fixed in the meantime
that makes this not work.
DeltaFile
+22-58src/etc/inc/interfaces.inc
+58-4src/www/interfaces.php
+6-6src/opnsense/scripts/interfaces/rtsold_script.sh
+86-683 files

OPNSense/core 4912a67src/etc/inc interfaces.inc

interfaces: fix wlanmode usage part 2 #9727
DeltaFile
+3-15src/etc/inc/interfaces.inc
+3-151 files

OPNSense/core ef2a4c6src/etc/inc interfaces.inc, src/opnsense/scripts/interfaces rtsold_script.sh

interfaces: multi-dhcp6c support and custom PD association #7647

This splits off rtsold and dhcp6c into separate processes
which frees us from the restrictions of faked iterative IDs
for PD associations.  For NA we simply default to 0 now.

I'm not entirely sure why we settled for a single deamon of
dhcp6c back in the day, but there are certianly downsides to
it and I don't see something that wasn't fixed in the meantime
that makes this not work.
DeltaFile
+22-58src/etc/inc/interfaces.inc
+58-4src/www/interfaces.php
+6-6src/opnsense/scripts/interfaces/rtsold_script.sh
+86-683 files

OPNSense/core e724f76src/opnsense/mvc/app/controllers/OPNsense/Firewall/Api FilterBaseController.php, src/opnsense/mvc/app/models/OPNsense/Base/FieldTypes PortField.php

firewall: well known ports POC #9692
DeltaFile
+10-1src/opnsense/mvc/app/models/OPNsense/Base/FieldTypes/PortField.php
+4-0src/opnsense/mvc/app/controllers/OPNsense/Firewall/Api/FilterBaseController.php
+14-12 files

OPNSense/core d4eb623src/opnsense/mvc/app/controllers/OPNsense/Firewall/forms dialogFilterRule.xml, src/opnsense/mvc/app/library/OPNsense/Firewall FilterRule.php

Firewall: Rules [new]: Add tcpflags_any for parity with legacy rules (#9720)

DeltaFile
+10-0src/opnsense/mvc/app/controllers/OPNsense/Firewall/forms/dialogFilterRule.xml
+8-1src/opnsense/mvc/app/models/OPNsense/Firewall/Filter.php
+1-1src/opnsense/mvc/app/library/OPNsense/Firewall/FilterRule.php
+1-0src/opnsense/mvc/app/models/OPNsense/Firewall/Filter.xml
+20-24 files

OPNSense/core d43b14esrc/opnsense/mvc/app/controllers/OPNsense/Firewall/Api FilterController.php

Firewall: Rules [new]: Exclude loopback from interface selectpicker (#9723)

DeltaFile
+7-5src/opnsense/mvc/app/controllers/OPNsense/Firewall/Api/FilterController.php
+7-51 files

OPNSense/core 06e3733src/opnsense/mvc/app/controllers/OPNsense/Firewall/Api FilterController.php

Firewall: Rules [new]: Exclude loopback from selectpicker, clean up use statements
DeltaFile
+7-5src/opnsense/mvc/app/controllers/OPNsense/Firewall/Api/FilterController.php
+7-51 files

OPNSense/core 2528b45src/opnsense/mvc/app/controllers/OPNsense/Firewall/forms dialogFilterRule.xml, src/opnsense/mvc/app/library/OPNsense/Firewall FilterRule.php

Firewall: Rules [new]: Add tcpflags_any for parity with legacy rules
DeltaFile
+10-0src/opnsense/mvc/app/controllers/OPNsense/Firewall/forms/dialogFilterRule.xml
+8-1src/opnsense/mvc/app/models/OPNsense/Firewall/Filter.php
+1-1src/opnsense/mvc/app/library/OPNsense/Firewall/FilterRule.php
+1-0src/opnsense/mvc/app/models/OPNsense/Firewall/Filter.xml
+20-24 files

OPNSense/core 3e438a8src/opnsense/mvc/app/controllers/OPNsense/Firewall/Api FilterController.php, src/opnsense/mvc/app/views/OPNsense/Firewall filter_rule.volt

Firewall - Rules [new]: Add all rules option to interface selectpicker and make it default selection (#9713)

* Firewall - Rules [new]: Add all rules option to interface selectpicker and select it by default
* Interface select default only on null or no match, not on empty string
* To fix URL hash weirdness, it's best to special case __floating and __any in the frontend
* Lower diff in controller by folding null case into is_if
* firewall: tweak the interface selector

Show group name and description.  Could be inconvenient when
the description is long, but better for the auto-groups.
That also removes the hint at the end.  See note below.

Use fixed width logos for the interface groupings.

Remove muted from the any selection.

TODO/Remarks:

The groupings being shown as muted is a bit inconvenient also

    [16 lines not shown]
DeltaFile
+40-19src/opnsense/mvc/app/controllers/OPNsense/Firewall/Api/FilterController.php
+13-6src/opnsense/mvc/app/views/OPNsense/Firewall/filter_rule.volt
+53-252 files

OPNSense/core 6dce1desrc/opnsense/mvc/app/controllers/OPNsense/Firewall/Api FilterController.php, src/opnsense/mvc/app/views/OPNsense/Firewall filter_rule.volt

Firewall - Rules [new]: Add all rules option to interface selectpicker and make it default selection (#9713)

* Firewall - Rules [new]: Add all rules option to interface selectpicker and select it by default
* Interface select default only on null or no match, not on empty string
* To fix URL hash weirdness, it's best to special case __floating and __any in the frontend
* Lower diff in controller by folding null case into is_if
* firewall: tweak the interface selector

Show group name and description.  Could be inconvenient when
the description is long, but better for the auto-groups.
That also removes the hint at the end.  See note below.

Use fixed width logos for the interface groupings.

Remove muted from the any selection.

TODO/Remarks:

The groupings being shown as muted is a bit inconvenient also

    [14 lines not shown]
DeltaFile
+40-19src/opnsense/mvc/app/controllers/OPNsense/Firewall/Api/FilterController.php
+13-6src/opnsense/mvc/app/views/OPNsense/Firewall/filter_rule.volt
+53-252 files

OPNSense/core 44328cbsrc/opnsense/mvc/app/controllers/OPNsense/Firewall/Api FilterController.php, src/opnsense/mvc/app/views/OPNsense/Firewall filter_rule.volt

firewall: tweak the interface selector

Show group name and description.  Could be inconvenient when
the description is long, but better for the auto-groups.
That also removes the hint at the end.  See note below.

Use fixed width logos for the interface groupings.

Remove muted from the any selection.

TODO/Remarks:

The groupings being shown as muted is a bit inconvenient also
as it muddies the perspective of what this does and how important
it is.  Would be nicer to not have it in this particular selector.

When an interface is selected it would be perfect if the grouping
icon would show so people see better what they selected.  Coloring
is nice so that would take it to the next level.

    [5 lines not shown]
DeltaFile
+14-11src/opnsense/mvc/app/controllers/OPNsense/Firewall/Api/FilterController.php
+1-2src/opnsense/mvc/app/views/OPNsense/Firewall/filter_rule.volt
+15-132 files

OPNSense/core f2b9f50src/opnsense/www/js opnsense_ui.js opnsense.js

ui: move refresh of selectpicker types into setFormData() and improve type detection.

PR: https://github.com/opnsense/core/pull/9717

(cherry picked from commit cf0341f13928015813019ca5fd3509d8b710e245)
(cherry picked from commit 7a8f6bee113ec9994ca0c2b03ff43698ad0656a5)
DeltaFile
+10-9src/opnsense/www/js/opnsense_ui.js
+4-0src/opnsense/www/js/opnsense.js
+0-1src/opnsense/www/js/opnsense_bootgrid.js
+14-103 files

OPNSense/core e4b7d65src/opnsense/mvc/app/controllers/OPNsense/Firewall/Api FilterController.php, src/opnsense/mvc/app/views/OPNsense/Firewall filter_rule.volt

firewall: tweak the interface selector

Show group name and description.  Could be inconvenient when
the description is long, but better for the auto-groups.
That also removes the hint at the end.  See note below.

Use fixed width logos for the interface groupings.

Remove muted from the any selection.

TODO/Remarks:

The groupings being shown as muted is a bit inconvenient also
as it muddies the perspective of what this does and how important
it is.  Would be nicer to not have it in this particular selector.

When an interface is selected it would be perfect if the grouping
icon would show so people see better what they selected.  Coloring
is nice so that would take it to the next level.

    [5 lines not shown]
DeltaFile
+14-11src/opnsense/mvc/app/controllers/OPNsense/Firewall/Api/FilterController.php
+1-2src/opnsense/mvc/app/views/OPNsense/Firewall/filter_rule.volt
+15-132 files

OPNSense/core 7a8f6besrc/opnsense/www/js opnsense_ui.js opnsense.js

mvc - ui: fix jquery glitch when using "options" instead of val(), closes https://github.com/opnsense/core/pull/9717
DeltaFile
+10-9src/opnsense/www/js/opnsense_ui.js
+0-1src/opnsense/www/js/opnsense.js
+10-102 files

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

mvc - ui: move refresh of selectpicker types into setFormData() and improve type detection.

When we are using a selectpicker, the original one will be moved inside a div containing the "bootstrap-select" class.

If this fixes https://github.com/opnsense/core/pull/9717, we need to remove the console output as that is merely for debugging.
DeltaFile
+5-0src/opnsense/www/js/opnsense.js
+0-1src/opnsense/www/js/opnsense_bootgrid.js
+5-12 files

OPNSense/core 93ab29dsrc/opnsense/mvc/app/models/OPNsense/Base BaseModel.php

mvc: BaseModel - improve legacy mapper support when parent item doesn't exist.

Fixes:

ErrorException: Undefined array key 0 in /usr/local/opnsense/mvc/app/models/OPNsense/Base/BaseModel.php:755
Stack trace:

If we can't find the specified root node, we should create one, which is similar to non legacy mapper nodes.

(cherry picked from commit 40cb82128dc8ba5f8262654a693a9b273d716eb6)
DeltaFile
+9-1src/opnsense/mvc/app/models/OPNsense/Base/BaseModel.php
+9-11 files

OPNSense/core 76f5eddsrc/opnsense/mvc/app/controllers/OPNsense/Dnsmasq/Api LeasesController.php

dnsmasq: Compare lower case strings only in leases to fix edge cases in is_reserved detection (#9714)

(cherry picked from commit 5276f51dc08f5bd145a3ef92ddb2b2849c260513)
DeltaFile
+6-8src/opnsense/mvc/app/controllers/OPNsense/Dnsmasq/Api/LeasesController.php
+6-81 files