>>> Executing build step update on 25.7 ABI_FILE=/usr/lib/crt1.o BLOCKSIZE=K CONFIGDIR=/usr/tools/config/25.7 CONFIG_XML=/usr/local/etc/config.xml COREBRANCH=stable/25.7 COREDIR=/usr/core COREENV=CORE_PHP=83 CORE_ABI=25.7 CORE_PYTHON=311 CPUS=8 DEVICEDIR=/usr/tools/device ENV_FILTER=env -i USER=root LOGNAME=root HOME=/root SHELL=/bin/sh BLOCKSIZE=K MAIL= PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin TERM= HOSTTYPE= VENDOR= OSTYPE= MACHTYPE= PWD=/usr/tools/build GROUP= HOST= EDITOR= PAGER= ABI_FILE=/usr/lib/crt1.o EXTRABRANCH= HOME=/root IMAGESDIR=/usr/local/opnsense/build/25.7/amd64/images LANG=C.UTF-8 LOGNAME=root LOGSDIR=/usr/local/opnsense/build/25.7/amd64/logs MAKEFLAGS= MAKELEVEL=2 META_MODE=normal MM_CHARSET=UTF-8 OLDPWD=/usr/tools PACKAGESDIR=/.pkg PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin PLUGINSBRANCH=stable/25.7 PLUGINSDIR=/usr/plugins PLUGINSENV=PLUGIN_PHP=83 PLUGIN_ABI=25.7 PLUGIN_PYTHON=311 PORTSBRANCH=master PORTSDIR=/usr/ports PORTSENV= PORTSREFBRANCH=main PORTSREFDIR=/usr/freebsd-ports PORTSREFURL=https://git.FreeBSD.org/ports.git PRINT_ENV_SKIP=1 PRODUCT_ABI=25.7 PRODUCT_ADDITIONS= PRODUCT_APACHE=24 PRODUCT_ARCH=amd64 PRODUCT_COMSPEED=115200 PRODUCT_CORE=opnsense PRODUCT_CORES=opnsense opnsense-devel opnsense-business PRODUCT_DEBUG= PRODUCT_DEVEL= PRODUCT_DEVICE_REAL=A10 PRODUCT_GITBASE=https://github.com/opnsense PRODUCT_HOST=amd64 PRODUCT_KERNEL=SMP PRODUCT_LUA=5.4 PRODUCT_MIRROR=https://mirror.ams1.nl.leaseweb.net/opnsense PRODUCT_NAME=OPNsense PRODUCT_PERL=5.42 PRODUCT_PHP=83 PRODUCT_PLUGIN=os-* PRODUCT_PLUGINS=os-* PRODUCT_PRIVKEY=/usr/tools/config/25.7/repo.key PRODUCT_PUBKEY=/usr/tools/config/25.7/repo.pub PRODUCT_PYTHON=311 PRODUCT_RELEASE=OPNsense-202601051320 PRODUCT_RUBY=33 PRODUCT_SETTINGS=25.7 PRODUCT_SIGNCHK=/usr/tools/scripts/pkg_fingerprint.sh /usr/tools/config/25.7/repo.pub PRODUCT_SIGNCMD=/usr/tools/scripts/pkg_sign.sh /usr/tools/config/25.7/repo.pub /usr/tools/config/25.7/repo.key PRODUCT_SSL=openssl PRODUCT_SUFFIX= PRODUCT_TARGET=amd64 PRODUCT_TYPE=opnsense PRODUCT_UEFI=arm dvd serial vga vm PRODUCT_VERSION=202601051320 PRODUCT_ZFS= PWD=/usr/tools/build REMOTEDIR=incoming SERVER=nightly@pkg.opnsense.org SETSDIR=/usr/local/opnsense/build/25.7/amd64/sets SHELL=/bin/sh SRCABI=FreeBSD:14:amd64 SRCBRANCH=stable/25.7 SRCDIR=/usr/src SRCREVISION=14.3 STAGEDIR=/usr/obj/usr/tools/config/25.7/amd64 STAGEDIRPREFIX=/usr/obj TARGETDIR=/usr/local/opnsense/build/25.7/amd64 TARGETDIRPREFIX=/usr/local/opnsense/build TOOLSBRANCH=master TOOLSDIR=/usr/tools USER=root >>> Running build step: update >>> Passing arguments: (none) >>> Fetching /usr/core: From https://github.com/opnsense/core c2f076f30..814210877 stable/25.7 -> origin/stable/25.7 * [new branch] dhcp6c_multi -> origin/dhcp6c_multi 9092d60b3..3e50b6a99 master -> origin/master >>> Updating branch stable/25.7 of /usr/core: Already on 'stable/25.7' Your branch is behind 'origin/stable/25.7' by 22 commits, and can be fast-forwarded. (use "git pull" to update your local branch) Updating c2f076f30..814210877 Fast-forward Makefile | 18 +- Mk/version.mk | 6 +- plist | 5 + src/etc/inc/interfaces.inc | 23 ++- src/etc/inc/interfaces.lib.inc | 4 +- src/etc/inc/util.inc | 43 ++-- src/opnsense/mvc/app/config/config.php | 1 + .../CaptivePortal/Api/AccessController.php | 4 +- .../OPNsense/Core/Api/DefaultsController.php | 8 +- .../OPNsense/Core/Api/TunablesController.php | 12 +- .../OPNsense/Firewall/FilterController.php | 8 +- .../OPNsense/Firewall/forms/dialogFilterRule.xml | 14 +- .../OPNsense/Ntpd/Api/ServiceController.php | 2 +- .../OPNsense/OpenVPN/Api/ExportController.php | 2 +- .../OPNsense/Unbound/forms/dialogHostOverride.xml | 5 + .../mvc/app/library/OPNsense/Core/Config.php | 14 +- .../app/library/OPNsense/Firewall/FilterRule.php | 8 +- .../mvc/app/library/OPNsense/Trust/Store.php | 2 +- .../models/OPNsense/Base/FieldTypes/BaseField.php | 7 +- .../OPNsense/Base/FieldTypes/IntegerField.php | 16 +- src/opnsense/mvc/app/models/OPNsense/Core/ACL.php | 1 - .../mvc/app/models/OPNsense/Firewall/Filter.php | 7 + .../mvc/app/models/OPNsense/Firewall/Filter.xml | 24 +++ .../Trust/FieldTypes/CertificatesField.php | 6 +- .../OPNsense/Unbound/FieldTypes/AliasRefCount.php | 53 +++++ .../mvc/app/models/OPNsense/Unbound/Unbound.xml | 1 + .../mvc/app/views/OPNsense/DHCRelay/relay.volt | 6 +- .../app/views/OPNsense/Firewall/filter_rule.volt | 6 + src/opnsense/mvc/app/views/OPNsense/IDS/index.volt | 1 + .../mvc/app/views/OPNsense/OpenVPN/export.volt | 26 ++- .../mvc/app/views/OPNsense/Unbound/dot.volt | 6 +- .../mvc/app/views/OPNsense/Unbound/overrides.volt | 6 +- src/opnsense/mvc/tests/app/config/config.php | 8 +- .../OPNsense/Core/ConfigConfig/backup/array.xml | 48 +++++ .../OPNsense/Core/ConfigConfig/backup/object.xml | 8 + .../tests/app/library/OPNsense/Core/ConfigTest.php | 114 +++++++++++ .../Base/BaseModelConfig/backup/config.xml | 8 + .../app/models/OPNsense/Base/BaseModelTest.php | 219 +++++++++++---------- src/opnsense/scripts/auth/add_user.php | 2 +- src/opnsense/scripts/auth/sync_group.php | 15 +- src/opnsense/scripts/auth/sync_user.php | 15 +- src/opnsense/www/css/opnsense-bootgrid-layout.css | 5 + 42 files changed, 557 insertions(+), 230 deletions(-) create mode 100644 src/opnsense/mvc/app/models/OPNsense/Unbound/FieldTypes/AliasRefCount.php create mode 100644 src/opnsense/mvc/tests/app/library/OPNsense/Core/ConfigConfig/backup/array.xml create mode 100644 src/opnsense/mvc/tests/app/library/OPNsense/Core/ConfigConfig/backup/object.xml create mode 100644 src/opnsense/mvc/tests/app/library/OPNsense/Core/ConfigTest.php create mode 100644 src/opnsense/mvc/tests/app/models/OPNsense/Base/BaseModelConfig/backup/config.xml >>> Fetching /usr/plugins: From https://github.com/opnsense/plugins d3cbedaa8..8895dd979 master -> origin/master >>> Updating branch stable/25.7 of /usr/plugins: Already on 'stable/25.7' Your branch is up to date with 'origin/stable/25.7'. Already up to date. >>> Fetching /usr/ports: >>> Updating branch master of /usr/ports: Already on 'master' Your branch is up to date with 'origin/master'. Already up to date. >>> Fetching /usr/src: >>> Updating branch stable/25.7 of /usr/src: Already on 'stable/25.7' Your branch is up to date with 'origin/stable/25.7'. Already up to date. >>> Fetching /usr/tools: >>> Updating branch master of /usr/tools: Already on 'master' Your branch is up to date with 'origin/master'. Already up to date. 5.05 real 0.86 user 2.41 sys