interfaces: split out interfaces_dependencies() and make it digestible via pluginctl -Q
This is a cherry-pick from master that retains the stable branch queue
ordering for now. The parents are picked up via the shared functionality,
but the end result should still be the same as before.
(cherry picked from commit f9b24b852ba74d21c26b6c991548fe21d7131859)
interfaces: skip pfsync interface reconfiguration if peer unchanged (#10924)
also check if mtu actually changes before applying it on pfsync0
(cherry picked from commit 95f552b3d6b765b47b271441cb616ed1d6d61bc6)
interfaces: use batch reload in apply_pending_if_changes.php
This approach may be useful for rc.linkup as well. We basically
have all the code we need except for proper locking.
interfaces: use 1d92dcda2 to customize the settings-changed trigger
This is not the final form, but it keeps the special page logic
contained herein while still being able to use the generic trigger.
interfaces: retire these problematic validations
ISC DHCP is no longer installed by default and mostly not installed
on newer installations. However, people tend to use older backups
and the server may be enabled still. The alternative would be to
add a plugin check, but I don't really see the point in dragging this
on.
PR: https://forum.opnsense.org/index.php?topic=48181.0
(cherry picked from commit 67a0184458b3d2a5a7a7a805f87e07be59e0208c)
interfaces: save fields that don't matter to operation directly
This ignores the fields from the compare. There's still an issue
with the banner showing the apply message when no apply is needed
(and no todo file is added). This needs to be fixed in the UI,
but needs more glue first.
interfaces: make toLegacy() return the real legacy config
Addresses the workaround of 17bc9256510 which makes the resulting
code a bit more condensed and failsafe.
interfaces: save fields that don't matter to operation directly
This ignores the fields from the compare. There's still an issue
with the banner showing the apply message when no apply is needed
(and no todo file is added). This needs to be fixed in the UI,
but needs more glue first.
interfaces: make toLegacy() return the real legacy config
Addresses the workaround of 17bc9256510 which makes the resulting
code a bit more condensed and failsafe.