smolkit is a drop-in replacement for a subset of
polkit's interface, which is low-footprint in the
sense of not needing to have a javascript engine
available to do its job. polkit has this disadvantage
and even with a small javascript engine like duktape,
it is not worth to have turing-complete configuration
where you could also use static JSON on some embedded
devices.
Signed-off-by: Tillmann Severin <tillmann.severin@bmw.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Add a patch fixing an issue where tools like 'gpiofind' incorrectly abort
with a 'No such device' (ENODEV) error if a hotpluggable GPIO controller
(like a USB device) vanishes from /dev during the search.
This patch gracefully handles the race condition by ignoring ENODEV errors
when searching for a line and silently skipping chips that fail to open
during iteration.
Reviewed-by: Bartosz Golaszewski <bartosz.golaszewski@oss.qualcomm.com>
Signed-off-by: Potin Lai <potin.lai.pt@gmail.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Pick patches mentioning these CVEs in their commit messages.
Note that patch for CVE-2026-4897 introduces CVE-2026-85498.
Also pick additional patch introduced between these commits which
touches the added code so the final patch applies cleanly.
Signed-off-by: Peter Marko <peter.marko@siemens.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Release notes:
* https://github.com/msgpack/msgpack-c/releases/tag/cpp-9.0.0
2026-08-25 version 9.0.0
Add regression tests for the fixes below. (#1183)
Fix ext_ref comparison operators ignoring the last payload byte. (#1183)
Fix out-of-bounds write on self-move-assignment of the create object visitor. (#1183)
Fix broken array_ref<T[N]> comparison operators. (#1183)
Fix heap buffer overflow in vrefbuffer::migrate() caused by a wrong growth check. (#1183)
Fix v1 unpacker not applying str/bin/ext size limits on the reference path. (#1183)
Fix x3 parser treating uint8 values as negative integers. (#1183)
Fix double free / use-after-free in zone::swap() (C++03 only). (#1183)
Fix use-after-free from wrong member destruction order in zone move-assignment. (#1183)
Fix use-after-free after moving an unpacker (dangling referenced buffer hook). (#1183)
Fix out-of-bounds read converting a short STR into std::array<char, N> / <unsigned char, N>. (#1183)
Fix out-of-bounds read and null dereference converting an array whose size differs from the tuple arity. (#1183)
Fix null pointer dereference converting an empty array into a C array T[N]. (#1183)
Fix integer overflow in the unpacker buffer expansion size arithmetic. (#1183)
<< breaking changes >>
Fix ext32 max size truncation on 64bit by widening visit_ext size to size_t. (#1183)
* If you have a custom visitor that implements visit_ext(), widen its size parameter from uint32_t to std::size_t:
Before: bool visit_ext(const char* v, uint32_t size)
After : bool visit_ext(const char* v, std::size_t size)
Signed-off-by: Peter Marko <peter.marko@siemens.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Without any prefix/suffix, it picks the highest version-like string.
Set REGEX to pick msgpack-cpp version.
Signed-off-by: Peter Marko <peter.marko@siemens.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
By default it picks the highest version, which for this repository is
for msgpack-cpp. Set GITTAGREGEX to pick msgpack-c tag.
Signed-off-by: Peter Marko <peter.marko@siemens.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
filesystems:file_stressor is a 15 minute stress test; its forked children
move to their own process group, escape the per-test timeout and keep the
runner blocked (and silent) until they finish, so ptest-runner kills the
whole suite. Skip it.
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
coredump:coredump_socket_test streams cores of a 128-thread process
(~1GB of thread stacks) into a tmpfs sized at half of RAM and fails
with ENOSPC with 1GB of RAM; it passes with 4GB.
run_kselftest.sh -s prints nothing while a test runs, and some
kselftests run for a long time (rseq:run_param_test.sh ~700s,
net/mptcp allows up to 1800s), so ptest-runner's default 450s
no-output timeout kills the whole suite. Raise PTEST_RUNNER_TIMEOUT
to 2400s for the kernel-selftest image.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
meta-oe-image-ptest-kernel-selftest on qemux86-64 was killed by
ptest-runner after 34 of 427 tests. Fix the hangs, and a set of
failures found while running the rest of the suite:
- Add coreutils to RDEPENDS: the kselftest runner only enforces
per-test timeouts when timeout(1) is available, and busybox has
no timeout applet by default.
- Skip ftrace:ftracetest-ktap: it has no per-test timeout, and
instances/instance-event.tc can leave a task stuck in D state in
trace_array_get() on linux-yocto 7.2.4, hanging the whole suite.
- Add e2fsprogs-mke2fs to RDEPENDS, mount_setattr_test needs mkfs.ext4.
- selftests/filelock: zero-initialize struct flock in ofdlocks, which
memcmp()s structures with uninitialized padding, and fix its test
plan count (it announces 4 tests but reports 5).
- selftests/cgroup: keep the anon page touches in test_memcontrol
from being removed as dead stores by GCC 16 at -O2.
- selftests/filesystems: chown the idmapped_tmpfile layer directory
into the idmapped range so the mapped caller is not refused.
- Backport "selftests: proc: include fcntl.h in proc-pidns" to fix
the proc selftests build.
Each fix was verified on qemux86-64 by running the affected tests.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
cmake/BuildBPF.cmake compiles the BPF data source with the plain gcc it
finds in PATH (find_program(GCC gcc)) rather than with the cross
compiler, because the BTF encoding step needs gcc plus pahole. The
recipe exports DEBUG_PREFIX_MAP and
0001-cmake-BuildBPF.cmake-introduce-DEBUG_PREFIX_MAP.patch hands it to
that command so the embedded objects do not carry build paths.
DEBUG_PREFIX_MAP also picks up DEBUG_PREFIX_MAP_EXTRA, which is
-fcanon-prefix-map for the gcc toolchain
(meta/classes/toolchain/gcc.bbclass). That option only exists in
GCC >= 13: the cross compiler always has it, the build host's gcc may
not, and the ptest enabled build then fails with
gcc: error: unrecognized command-line option '-fcanon-prefix-map';
did you mean '-fmacro-prefix-map='?
Drop it, the way frr and kernel-selftest already do for the same reason.
The four -ffile-prefix-map= rewrites are all this needs: with the extra
removed tests/data/data_source.o still contains no build paths, only
/usr/src/debug/bpftrace/0.26.1.
Signed-off-by: Khem Raj <raj.khem@gmail.com>
src/Makefile's `all` target carries a module_tests prerequisite, which
recurses into tests/modules. That Makefile pins the compiler to whatever
gcc is in PATH:
# This is a hack to override the default CC. When running with SANITIZER=memory
# tough we want to keep the compiler as clang as MSan is not supported for gcc
ifeq ($(uname_S),Linux)
ifneq ($(SANITIZER),memory)
LD = gcc
CC = gcc
endif
endif
while still taking CFLAGS/LDFLAGS from the environment, so a cross build
compiles and links all 47 test modules with the build host's gcc using
the target compiler flags. With the gcc toolchain those flags include
-fcanon-prefix-map (DEBUG_PREFIX_MAP_EXTRA in
meta/classes/toolchain/gcc.bbclass), which only exists in GCC >= 13. The
cross compiler always has it, the build host's gcc may not, and the build
then fails:
| gcc -I../../src -O2 -g -fcanon-prefix-map \
-ffile-prefix-map=.../sources/redis-8.10.1=/usr/src/debug/redis/8.10.1 \
... -std=gnu11 -O2 -fPIC -c commandfilter.c -o commandfilter.xo
| gcc: error: unrecognized command-line option '-fcanon-prefix-map';
did you mean '-fmacro-prefix-map='?
The modules are test-only artifacts: nothing links or installs them, and
only the tcl suite that `make test` drives from the build tree consumes
them. Drop them from `all` so no host compiler takes part in the cross
build at all; `test` keeps its own module_tests prerequisite. This has to
happen in the Makefile rather than by naming narrower goals in
do_compile, because `install: all` re-runs the phony target on its own.
With the patch applied the only compiler left in log.do_compile is
${TARGET_PREFIX}gcc, where 47 host gcc compile and 47 host gcc link
invocations used to be.
Signed-off-by: Khem Raj <raj.khem@gmail.com>
The aes and mf_iocache unit tests (mariadb-ptest) fail with OpenSSL 4.0
for every AES mode that uses an IV, while ECB keeps working.
MyCTX in mysys_ssl/my_crypt.cc keeps the EVP_CIPHER_CTX in a stack
buffer and initializes it with memset() + EVP_CIPHER_CTX_reset().
OpenSSL 3.x reset() ended in its legacy path with ctx->iv_len = -1, but
OpenSSL 4.0 removed that path and returns early when no cipher is set,
leaving iv_len at 0. EVP_CipherInit_ex() then hands IV length 0 to the
provider, which fails with "ossl_cipher_generic_initiv: invalid iv
length", so AES_ENCRYPT(), encrypted temporary files etc. break.
Backport the proposed upstream fix, which allocates the context with
EVP_CIPHER_CTX_new()/EVP_CIPHER_CTX_free() and drops the stack buffer
hack together with check_openssl_compatibility().
Upstream: https://jira.mariadb.org/browse/MDEV-40287https://github.com/MariaDB/server/pull/5652
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
run-ptest piped ctest output through 'sed -u', which busybox sed does
not support, so the pipeline produced no output and the ptest image
reported "ptests which had no test results: ['tbb']".
Drop sed and classify ctest result lines in awk directly. This also
maps Timeout/Exception/Not Run results to FAIL; previously they were
printed as e.g. "Exception:: <name>" and ignored by the ptest parser.
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
run-ptest piped ctest output through 'sed -u', which busybox sed does
not support, so the pipeline produced no output and the ptest image
reported "ptests which had no test results: ['jsoncpp']".
Drop sed and classify ctest result lines in awk directly. This also
maps Timeout/Exception/Not Run results to FAIL; previously they were
printed as e.g. "Exception:: <name>" and ignored by the ptest parser.
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
run-ptest piped ctest output through 'sed -u', which busybox sed does
not support, so the pipeline produced no output and the ptest image
reported "ptests which had no test results: ['openjpeg']".
Drop sed and classify ctest result lines in awk directly. This also
maps Timeout/Exception/Not Run results to FAIL; previously they were
printed as e.g. "Exception:: <name>" and ignored by the ptest parser.
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
pylint 4.0.8 passes asname=False to Import.infer(), a keyword argument
astroid 4.2 removed. With the astroid 4.3.1 in meta-python this makes
pylint crash on any import of a missing submodule:
TypeError: NodeNG.infer() got an unexpected keyword argument 'asname'
which shows up in ptest as astroid-error in three functional tests:
FAIL: tests/test_functional.py:test_functional[fallback_import_enabled]
FAIL: tests/test_functional.py:test_functional[import_error]
FAIL: tests/test_functional.py:test_functional[no_name_in_module]
Backport the pylint/ part of upstream commit 554b1d192434 ("Bump
astroid to 4.2.0b4"), which drops the argument.
meta-python-image-ptest-python3-pylint on qemux86-64 now passes
872 tests with none failing.
AI-Generated: Uses Claude Code
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
test_basic_ddr_sync and test_basic_ddr_async only check that the
Internet is reachable. On networks that intercept port 53, 1.1.1.1 and
8.8.8.8 still answer ordinary queries but return NXDOMAIN for
_dns.resolver.arpa SVCB, so try_ddr() cannot upgrade the nameservers
and the tests fail:
FAIL: tests/test_ddr.py:test_basic_ddr_sync
FAIL: tests/test_ddr.py:test_basic_ddr_async
assert isinstance('1.1.1.1', dns.nameserver.Nameserver)
Add a patch to skip them unless both resolvers return DDR SVCB records.
AI-Generated: Uses Claude Code
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
float_as_int_without_noise() returns early when the floored value fits
in a long, checking it with floor_val == static_cast<long>(floor_val).
For values outside the range of long the conversion is undefined
behavior; clang -O2 folds the round trip into "floor_val is integral",
which is always true, so the denoising is skipped:
FAIL: tests/test_fastnumbers_examples.py:test_try_real
FAIL: tests/test_fastnumbers_examples.py:test_try_forceint
assert 3452999999999999737856 == 3453000000000000000000
Add a patch that only does the conversion when the value is in range.
A reduced reproducer returns the wrong answer with the recipe's clang++
at -O2 and the right one with the fix (and with -O0 or gcc).
AI-Generated: Uses Claude Code
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
tests/test_core.py runs glances with ./conf/glances.conf and reads plugin
test data from ./tests-data, both relative to the ptest directory.
Neither was installed, and tests-data is not part of the pypi sdist, so
four tests failed:
test_023_get_alert: AssertionError: 'DEFAULT' != 'OK_LOG'
test_025_npu: IndexError: list index out of range
test_026_mpp: AssertionError: 0 != 3 : Expected 3 MPP engines
test_108_fs_zfs_: AssertionError: False is not true
Fetch tests-data from the v4.5.6 tag and install it, together with
conf/, next to the tests. Only tests-data/plugins is used by the tests.
With these in place tests/test_core.py passes 52/52 on qemux86-64.
AI-Generated: Uses Claude Code
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
tests/integration/test_hooks.py records live https://httpbin.org
requests (no cassettes are shipped for them), so the ptest fails
whenever the service resets the connection, e.g.:
FAIL: tests/integration/test_hooks.py:TestHooks.test_post_start_hook
requests.exceptions.ConnectionError: ('Connection aborted.',
ConnectionResetError(104, 'Connection reset by peer'))
The same tests pass when the service behaves (3 out of 3 runs in a
qemux86-64 VM), so they are flaky rather than broken. Leave them out
of the ptest run.
AI-Generated: Uses Claude Code
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
bcc's tools/funccount_example.txt documents tracing a binary that
upstream placed under /home/ubuntu:
# ./funccount -p 1442 /home/ubuntu/contentions:*
Tracing 15 functions for "/home/ubuntu/contentions:*"...
If /home/ubuntu is in the $PATH, then the following command will also work:
That is documentation prose, not a leaked build path, but the buildpaths
QA check flags any packaged file containing the builder's HOME, so on a
host whose HOME is /home/ubuntu it warns twice - once for the copy in
${datadir}/bcc/tools/doc and once for the copy do_install_ptest places
in ${libdir}/tools:
WARNING: bcc-0.37.0-r0 do_package_qa: QA Issue: File
/usr/share/bcc/tools/doc/funccount_example.txt in package bcc contains
a reference to the build host HOME directory. [buildpaths]
WARNING: bcc-0.37.0-r0 do_package_qa: QA Issue: File
/usr/lib/tools/funccount_example.txt in package bcc-ptest contains a
reference to the build host HOME directory. [buildpaths]
Both packaged copies are byte identical to the file in the upstream tree
and contain no reference to TMPDIR, confirming nothing is baked in at
build time. Set OEQA_BUILDPATHS_SKIP as the QA message suggests, which
suppresses only the HOME half of the check; the TMPDIR half still guards
against real build path leaks. oe-core does the same for sudo, perl,
python3-numpy and python3-pytest.
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Data-HexDump 0.02 installed a "hexdump" script via EXE_FILES in
Makefile.PL, so registering ${bindir}/hexdump with update-alternatives
was correct. Upstream 0.02_01 moved that script to eg/ and dropped
EXE_FILES:
* Moved hexdump script to eg/, so it won't be installed.
Addresses RT#123224 from KENTNL.
so since the 0.02 -> 0.04 upgrade the package installs nothing but
Data/HexDump.pm and the alternative refers to a file that is never
created:
WARNING: libdata-hexdump-perl-0.04-r0 do_package: libdata-hexdump-perl:
alternative target (/usr/bin/hexdump or /usr/bin/hexdump.libdata-hexdump-perl)
does not exist, skipping...
WARNING: libdata-hexdump-perl-0.04-r0 do_package: libdata-hexdump-perl:
NOT adding alternative provide /usr/bin/hexdump:
/usr/bin/hexdump.libdata-hexdump-perl does not exist
WARNING: libdata-hexdump-perl-0.04-r0 do_package: libdata-hexdump-perl:
alt_link == alt_target: /usr/bin/hexdump == /usr/bin/hexdump
Drop the update-alternatives inherit and its settings to match what the
recipe actually ships. The eg/hexdump example is deliberately not
installed upstream, and util-linux/busybox already provide hexdump.
Packaged file lists are unchanged; the package no longer carries the
dead update-alternatives postinst/prerm.
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
It only install local files from SRC_URI, so nothing is ever
unpacked into ${UNPACKDIR}/${BP} and the default S never exists, making
do_unpack warn for each of them:
WARNING: polkit-group-rule-datetime-1.0-r0 do_unpack:
polkit-group-rule-datetime: the directory ${UNPACKDIR}/${BP} pointed
to by the S variable doesn't exist - please set S within the recipe to
point to where the source has been unpacked to
Point S at ${UNPACKDIR} in the shared include, which is what oe-core
does for file-only recipes such as init-ifupdown and keymaps. This
covers polkit-group-rule-{datetime,network,udisks2} in one place; the
do_install tasks already reference ${UNPACKDIR} directly, so packaging
is unchanged.
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
The 1.4x releases are cut on the "develop" branch,
Add UPSTREAM_CHECK_GITTAGREGEX to keep the version check sane.
The release needs a few adjustments beyond the version bump:
* linux/DtaLinux.cpp now includes <systemd/sd-device.h> and
<nvme/types.h> unconditionally, and Makefile.am hardcodes
LDADD = -lsystemd, with no non-systemd fallback. Add the systemd and
libnvme dependencies (matching the package list in the BUILDING file)
and require the systemd distro feature.
* Makefile.am declares .INTERMEDIATE, which automake defines itself in
distdir.am, and configure.ac uses AM_INIT_AUTOMAKE([-Wall -Werror]),
so autoreconf fails with automake 1.19:
automake: warnings are treated as errors
Makefile.am:152: warning: user target '.INTERMEDIATE' defined here ...
.../am/distdir.am: ... overrides Automake target '.INTERMEDIATE' defined here
Add a patch dropping the declaration.
* Clear WERROR so that upstream's -Werror does not turn new compiler
diagnostics into build failures. clang 23 enables -Wunused-template,
which fires on the deliberately unused sd_device_new_from_devname()
SFINAE fallback.
* Generate linux/Version.h up front instead of letting Makefile.am run
"git describe --dirty", which needs git at build time and reports
"1.49.13-dirty" because do_patch leaves the tree modified.
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
TLSv1_2_server_method() and TLSv1_2_client_method() were deprecated in
OpenSSL 1.1.0 and removed in OpenSSL 4.0, so do_compile fails:
SecureSocket.cpp:386:18: error: use of undeclared identifier 'TLSv1_2_server_method'; did you mean 'TLS_server_method'?
SecureSocket.cpp:389:18: error: use of undeclared identifier 'TLSv1_2_client_method'; did you mean 'TLS_client_method'?
Backport the two upstream commits that deal with this, neither of which
is in the v1.10.1 SRCREV pinned here - they first shipped in v1.11.0:
4fea67e078479cc00afe6b1201c54c997a41fc70
"#6390 Updated OpenSSL For better security with TLS1.3"
4d3cf2c6 "Preventing older insecure version of TLS/SSL"
The first swaps the removed version specific methods for the version
flexible ones; the second restores the TLS 1.2 floor with
SSL_CTX_set_options(). Both are needed: the first on its own silently
drops the minimum version the original code deliberately enforced, for
the PCI compliance reasons its comment describes. Since TLS 1.3 can now
be negotiated, the hardcoded "TLSv1.2" reported to the user is replaced
with the version actually in use, retiring k_tlsString.
Upgrading the recipe instead is not an option today. Upstream renamed the
repository to symless/synergy and the latest release, v1.20.4, is the
rebranded deskflow codebase with a different cmake layout, a Qt6 GUI and
a changed LICENSE; more importantly it hard requires the ext/synergy-extra
submodule, declared with an ssh URL and carrying no license at all, and
its cmake aborts without it. That has been true since v1.16.x. No pending
upstream pull request addresses the build failure either, since upstream
fixed it in tree back in 2019.
The backport differs from upstream in two intentional ways, both noted in
the patch: upstream's pre-1.1.0 fallback defines the client method to
SSLv23_server_method, and upstream sets the context options before
checking SSL_CTX_new() for NULL.
AI-Generated: Uses Claude Code
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Two more OpenSSL 4.0 breakages on top of the ASN.1 opacity already
handled by 0012-fix-openssl-4-asn1-opaque.patch.
The ENGINE API is gone. <openssl/engine.h> is still shipped as a
source-compatibility stub, so linking fails on ENGINE_free,
ENGINE_load_builtin_engines, ENGINE_by_id, ENGINE_init, ENGINE_finish,
ENGINE_ctrl_cmd and ENGINE_load_private_key. Define OPENSSL_ENGINE_STUBS,
which OpenSSL 4 provides for exactly this case: the declarations become
inline no-ops returning failure, so the file compiles and links unchanged.
OPENSSL_SUPPRESS_DEPRECATED is already defined there, so the stubs'
deprecation attributes do not trip -Werror. That leaves ENGINE_by_id()
returning NULL, which the existing code fed straight into ENGINE_init() -
a NULL dereference predating OpenSSL 4 - so check it and report what went
wrong, mentioning OpenSSL 4 so the failure is not mistaken for a missing
module. PKCS#11 backed signing genuinely is unavailable there, as no
provider exposes an equivalent of the pkcs11 engine's LOAD_CERT_CTRL.
X509_get_subject_name() now returns const X509_NAME *, so its result can
no longer be the destination of X509_NAME_add_entry_by_txt():
src/tools/pki_tree/pki_helper.c:440:10: error: assigning to 'X509_NAME *' from 'const X509_NAME *' discards qualifiers
There is no mutable counterpart, so build the subject name standalone and
install it with X509_set_subject_name(); both setters copy it, so it is
freed once the issuer name has been set from it too.
AI-Generated: Uses Claude Code
Signed-off-by: Khem Raj <raj.khem@gmail.com>
OpenSSL 4.0 removed the ENGINE API. <openssl/engine.h> still exists as a
source-compatibility stub, so both binaries fail to link:
ld.lld: error: undefined symbol: ENGINE_load_builtin_engines
ld.lld: error: undefined symbol: ENGINE_by_id
ld.lld: error: undefined symbol: ENGINE_init
ld.lld: error: undefined symbol: ENGINE_ctrl_cmd_string
ld.lld: error: undefined symbol: ENGINE_load_public_key
The ENGINE use is confined to the "pkcs11:" input branch of each tool, so
compile that branch out on OpenSSL 4 and diagnose the unsupported input
instead. Reading certificates and public keys from PEM files, which is
what the kernel build and most other users do, is unaffected.
Providers supersede engines, but none exposes an equivalent of the pkcs11
engine's LOAD_CERT_CTRL command, so there is nothing to port to yet.
AI-Generated: Uses Claude Code
Signed-off-by: Khem Raj <raj.khem@gmail.com>
OpenSSL 4.0 breaks the X.509 code in two ways: struct asn1_string_st is
opaque, so ASN1_INTEGER / ASN1_OCTET_STRING / ASN1_BIT_STRING / ASN1_TIME
can no longer be dereferenced, and X509_get_ext(),
X509_EXTENSION_get_data(), X509_get0_pubkey_bitstr(),
X509_get_subject_name(), X509_get_issuer_name() and
X509_REQ_get_subject_name() all gained const.
Switch to the ASN1_STRING_get0_data() / ASN1_STRING_length() /
ASN1_STRING_type() accessors, available since OpenSSL 1.1.0, and
propagate const to the locals that only read through those pointers.
Three call sites needed a mutable X509_NAME: they fetched the existing
name, edited it in place and installed it again. The getters have no
mutable counterpart, so duplicate with X509_NAME_dup(), edit the copy and
free it once the setter has taken its own copy, preserving the previous
behaviour of merging into the existing DN.
AI-Generated: Uses Claude Code
Signed-off-by: Khem Raj <raj.khem@gmail.com>
mutter fails to configure on a wayland-only distro configuration:
Run-time dependency gl found: NO (tried pkg-config and system)
../sources/mutter-50.4/meson.build:191:11: ERROR: Dependency "gl" not found (tried pkg-config and system)
The recipe enabled the opengl PACKAGECONFIG unconditionally, which
passes -Dopengl=true and makes meson require desktop OpenGL:
have_gl = get_option('opengl')
if have_gl
gl_dep = dependency('gl')
Desktop GL is not available here. libGL.so and gl.pc are products of
mesa's GLX library - see FILES:libgl-mesa-dev in mesa.inc - and mesa
only builds GLX when its x11 PACKAGECONFIG is on, since
PACKAGECONFIG[x11] passes -Dglx=disabled when it is off. Without x11 in
DISTRO_FEATURES mesa is therefore configured -Dopengl=true -Dglx=disabled
-Dplatforms='wayland' and stages only egl.pc, glesv1_cm.pc and
glesv2.pc, with no libGL and no gl.pc.
The dependency looked satisfied because mesa PROVIDES virtual/libgl
unconditionally, so the virtual/libgl entry in PACKAGECONFIG[opengl]
resolves at the bitbake level even though nothing ever lands in the
sysroot. mesa also installs the GL/*.h headers regardless of GLX, so
meson's 'system' fallback clears the header probe before failing on the
missing library.
mutter builds fine against GLESv2 alone - it only errors out if neither
GL nor GLES2 is enabled - and egl plus gles2 are already enabled here,
which is the usual configuration for a wayland-only compositor. Gate
opengl on x11 so it follows the same condition that decides whether
desktop GL exists at all; x11 builds are unaffected.
AI-Generated: Uses Claude Code
Signed-off-by: Khem Raj <raj.khem@gmail.com>
gnome-disk-utility 46.1 fails to build on a wayland-only distro
configuration (no x11 in DISTRO_FEATURES) for three separate reasons,
all of them latent X11 assumptions in the GTK3 code line.
do_configure fails first:
Run-time dependency libcanberra-gtk3 found: NO (tried pkg-config)
meson.build:75:18: ERROR: Dependency "libcanberra-gtk3" not found
meson.build requires libcanberra-gtk3 unconditionally, but
libcanberra's gtk3 support is itself X11-only (its configure.ac does
PKG_CHECK_MODULES(GTK3, [gtk+-3.0 ... gdk-3.0 x11]), the sources use
gdk_x11_get_xatom_by_name_for_display()/GDK_WINDOW_XID, and
libcanberra-gtk3.pc links -lX11), so the meta-oe recipe correctly
leaves the gtk3 PACKAGECONFIG off here and the dependency can never be
satisfied. Drop it, along with the three ca_gtk_play_for_widget() sound
effect call sites; upstream removed libcanberra entirely by the same
route after 46.1 was released.
Once that is out of the way do_compile fails on the X11 backend header:
gdupasswordstrengthwidget.c:14:10: fatal error: 'gdk/gdkx.h' file not found
gduvolumegrid.c:14:10: fatal error: 'gdk/gdkx.h' file not found
gduestimator.c:14:10: fatal error: 'gdk/gdkx.h' file not found
gtk+3 only installs gdk/gdkx.h when its X11 backend is enabled. None of
these three files calls any X11-specific GDK API, so the include is
simply dead weight and can be dropped.
Neither fix is available upstream for this code line: the GTK4 /
libadwaita rewrite deleted or renamed the affected files rather than
fixing them, and no in-flight merge request touches the GTK3 sources
that 46.1 still builds. 46.1 remains the latest stable release.
AI-Generated: Uses Claude Code
Signed-off-by: Khem Raj <raj.khem@gmail.com>
The 4.1.0 upgrade added two CXXFLAGS that only work with GCC, which
breaks the clang build of the testsuite (BIT7Z_WARNINGS_AS_ERRORS
defaults to BIT7Z_BUILD_TESTS, so -Werror is on whenever ptest is
enabled).
error: unknown warning option '-Wno-sfinae-incomplete'; did you mean
'-Wno-delete-incomplete'? [-Werror,-Wunknown-warning-option]
-Wsfinae-incomplete is a GCC 15+ diagnostic that clang does not have, so
only pass it when building with GCC.
cpm_cache/ghc_filesystem/include/ghc/filesystem.hpp:4090:41: error:
implicit conversion changes signedness: 'int' to 'mode_t'
(aka 'unsigned int') [-Werror,-Wsign-conversion]
Upstream declares the ghc::filesystem include directory as a SYSTEM one
(target_include_directories(ghc_filesystem SYSTEM INTERFACE ...) in
cmake/Dependencies.cmake), which keeps warnings from that header quiet.
Passing it as a plain -I undoes that, so use -isystem instead.
There is nothing to upgrade to here, 4.1.0 is the latest release and
upstream master is a single documentation commit ahead of it.
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade to release 4.1.0:
- Nested archives support: the new BitNestedArchiveReader class
lets you open and inspect archives that are embedded as items
inside another archive, without extracting them to disk first.
- Native file I/O: file streams have been rewritten to use
low-level Win32 APIs on Windows and POSIX I/O on Unix, replacing
std::fstream. This dramatically improves the performance of both
extraction and compression operations.
- New extraction callbacks: RenameCallback (dynamically rename or
skip items during extraction), RawDataCallback (stream raw bytes
directly to user code without touching the filesystem), and
BufferCallback (route each extracted file to a separate,
independently chosen buffer) unlock extraction patterns that were
previously impossible.
- Multi-volume LRU file-handle cache: when reading or creating
large multi-volume archives, bit7z now keeps only the most
recently used volume file handles open, preventing file
descriptor exhaustion on archives with many volumes.
- Timestamp control: two complementary additions give full control
over timestamps when creating archives. BitAbstractArchiveCreator
gains setStoreLastWriteTime(), setStoreCreationTime(), and
setStoreLastAccessTime() to control which timestamp types are
stored globally (format support varies: 7z has the most complete
support; TAR does not support creation/last-access timestamps).
Additionally, BitOutputArchive::addFile() now returns a
BitInputItem&, allowing per-item timestamp overrides via
setCreationTime(), setLastWriteTime(), and setLastAccessTime().
- Deferred library loading: Bit7zLibraryLoader allows constructing
a loader without immediately loading the 7-zip DLL/SO, then
loading (and unloading) it at any later point. Useful for
plugin systems and applications that need to control when the
native library is brought in.
- Self-extracting (SFX) archive support (since beta): bit7z
correctly handles SFX executables.
- Root-folder extraction (since beta): extract the contents of an
archive's single top-level folder without knowing its name in
advance.
- Locked-file compression (since beta): the new setStoreOpenFiles()
setting on BitAbstractArchiveCreator opens files with shared
read/write access on Windows, mirroring 7-Zip's -ssw switch, so
you can archive files another process holds open for writing
instead of failing with "access denied". No effect on non-Windows
platforms.
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade to release 0.70:
- this release changes how &, ^ and | bind against each other. If
you have expressions that mix them without parentheses, check
them: 3 ^ 1 & 2 now gives 3, the same as a C compiler, where
earlier releases gave 2.
Enhancements:
- Unary plus and minus in expressions: -5, 5 * -2 and 10 - -2
evaluate instead of being rejected. On the command line, separate
a leading minus with --: bitwise -- '-5'
- README documents the operators that actually exist, with their
precedence, and which C operators are not supported
- Added CONTRIBUTING.md, and filled in ChangeLog, NEWS and AUTHORS
Bug Fixes:
- &, ^ and | now have the C precedence order, where & and ^ used to
share a level
- Numbers that don't parse cleanly are now refused instead of
guessing: 12a used to evaluate as 12, a bare 0x or 0b as 0, and a
literal past UINT64_MAX as UINT64_MAX
- Shifts and BIT() at or past the width of the value give 0, instead
of an answer computed from a masked shift count: 1 << 64 used to
be 1, and 1 << 200 used to be 256
- Fixed a stack buffer overflow on tokens longer than 64 characters,
reachable from both the command line and the : prompt
- Radix64 output now matches the system l64a(); a fallback shim was
overriding libc and printing a different alphabet
- Parse errors no longer corrupt the curses display
- Fixed the ASCII line of the conversion output on big-endian hosts
Build and testing:
- make distcheck works; VPATH builds could not find the headers in
inc/ at all
- -Wall -Wextra are on by default, and --enable-asan, --enable-ubsan
and --enable-fuzzer join the existing options
- Tests for number parsing, shift edges and long tokens, plus a
libFuzzer harness over the expression parser
- CI builds on Linux, macOS and Windows/msys2, and runs distcheck,
the sanitizers and a bounded fuzzing run on every push
Drop 0001-makefile.am-Fix-build-when-build-dir-is-not-same-as-.patch
because v0.70 Makefile.am already includes a similar fix to put
$(top_srcdir)/inc on the include path from git commit f4b9fa1.
Fix Big-endian and Little-endian output in ptest.out.expected.
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
0.5.16 is skipped because it contains a regression that broke object
destruction in the monitor scripts; upstream recommends to avoid it.
WirePlumber 0.5.17
~~~~~~~~~~~~~~~~~~
Fixes:
- Fixed factory-created device, node and link objects to stop sharing
ownership with their registry global, fixing a regression from the
``WpClientContext`` introduced in 0.5.16 that broke proper object
destruction in the monitor scripts (#999; !890, !891)
- Improved ``default-nodes`` to also rank on the object.serial of a node's
device and on the node's own object.serial, so that route priorities are
only compared between nodes of the same card, and the election no longer
changes for no apparent reason when all other keys are equal (!893)
- Fixed ``m-lua-scripting`` to include the offending Lua type name in POD
build errors (!889)
WirePlumber 0.5.16
~~~~~~~~~~~~~~~~~~
Additions & Enhancements:
- Added ``WpClientContext``, a second PipeWire connection running on its own
thread that hosts WirePlumber's in-process media objects (loopback and
filter-chain modules, ``LocalNode()``, ``SpaDevice()``), so that slow Lua
event hooks on the main thread no longer stall their control path; the
export core is retired in favor of this new client context (!873)
- Added new ``WpDynamicRules`` class for matching rules with conditions, and
updated ``filter-graph.lua`` to use it, allowing filter-graphs to be loaded
and unloaded dynamically depending on whether other objects exist or not
(!872)
- Added ``wp_impl_module_unload()`` and ``LocalModule:unload()``, giving
scripts control to unload implemented modules at any time (!881)
- Added a ``volume-set`` action to ``module-mpris`` to allow adjusting the
volume of a remote MPRIS2 player from Lua (!860)
- Added ``--yes`` flag to ``wpctl reset`` to skip the confirmation prompt
(!850)
- Added ``device.form-factor`` ALSA node property for use in ALSA rules, and
made HDMI node descriptions include the name of the connected display when
available (!862, !874)
- Refactored the Bluetooth monitor to use event hooks for handling devices
and nodes, matching the design already used by the v4l2 and libcamera
monitors (#916; !803)
- Overhauled the documentation: filled in every stub and missing Lua API and
C API page, added a getting started guide, new ``wireplumber(1)`` and
``wpexec(1)`` man pages, and removed stale pages describing features
renamed or removed in the 0.4 to 0.5 transition (!877)
Fixes:
- Fixed monitors to always activate all device and node features, and made
monitors wait for successful device activation before storing the devices
and nodes as a managed objects (#986, #996; !883, !886, !876)
- Fixed ``find-preferred-profile`` to skip a configured preferred profile
that is not available, instead of leaving no profile selected (#993; !884)
- Fixed ``permission-manager`` to not include destroyed globals when
rebuilding the permissions array on ``objects-changed``, fixing some
pipewire warnings in the log (!882, !888)
- Fixed a memory leak in ``WpSpaDevice`` by only collecting params from our
own requests (#988; !879)
- Fixed ``filter-graph`` to correctly apply graphs defined for the same node
across multiple configuration files (!870)
- Fixed several nil-related crashes and correctness issues in Lua scripts
(#972; !861, !864, !866, !869)
- Improved ``apply-access`` to directly attach an already-active permission
manager to the client instead of wastefully re-running activation on it
(#973; !868)
- Improved ``state-stream`` change detection to avoid spurious state writes
from volume rounding and from unset or empty properties (#974; !867)
- Fixed ``default-nodes`` to ignore smart filters when selecting the best
default node (!857)
- Removed the ``node.filter.forward-format`` setting and its script, which
only worked with 0.4 and never really worked with 0.5 (!878)
AI-Generated: Uses Claude Code (Claude Opus 5)
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Update SRC_URI to use the 'main' branch instead of 'master' since
the upstream GitHub repository has renamed its default branch.
Signed-off-by: Viswanath Kraleti <viswanath.kraleti@oss.qualcomm.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
libglycin spawns the sandboxed loader binaries from
${libexecdir}/glycin-loaders at runtime, so a rootfs that only carries
libglycin-2.so cannot decode a single image. Nothing pulled in the
loaders package, which left users of libglycin (gnome-shell wallpapers,
nautilus) without any decoder at all.
Let ${PN} rdepend on ${PN}-loaders whenever loaders are built, and make
the loaders -> thumbnailer dependency a recommendation so the runtime
dependency graph stays free of cycles.
Tested by rebuilding gnome-image: libglycin-2-loaders and
libglycin-2-thumbnailer are now part of the rootfs manifest and
/usr/libexec/glycin-loaders/ carries the image-rs, jxl and svg loaders.
AI-Generated: Uses Claude Code (Claude Opus 5)
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
libopensc failed to link:
x86_64-yoe-linux-ld.lld: error: unable to find library -lgio-2.0
x86_64-yoe-linux-ld.lld: error: unable to find library -lgobject-2.0
libopensc_la_LINK = $(LIBTOOL) ... --tag=OBJC ... $(OBJCLD) ...
with OBJCLD = $(OBJC). The ENABLE_CRYPTOTOKENKIT conditional only keeps
the .m file out of the sources, automake still picks the linker
statically, so this happens on Linux too. AC_PROG_OBJC detects a bare
"x86_64-yoe-linux-clang" with none of the toolchain options, hence the
link ran without --sysroot:
OBJC = x86_64-yoe-linux-clang
CC = ccache x86_64-yoe-linux-clang -target x86_64-yoe-linux ... \
--sysroot=.../recipe-sysroot -std=gnu23
Point OBJC at the full CC
Also fix floating gio dependency: opensc's
--enable-notify defaults to "detect" and enables glib2 notification
support whenever gio-2.0 happens to be staged in the sysroot by some
other dependency
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
libSDL2-2.0.so.0 from sdl2-compat lists only libc.so.6 as NEEDED and
loads libSDL3.so.0 through dlopen(), so shlibs does not generate a
runtime dependency on libsdl3. An image that installs an SDL2 consumer
without pulling in libsdl3 by other means therefore gets a library that
fails to initialize at runtime. This was seen with plasma-desktop, whose
game controller KCM links against SDL2 and made systemsettings fail to
start on an image that had no other SDL user.
Tested by checking readelf -d on the installed libSDL2-2.0.so.0 and by
rebuilding the package for corei7-64.
AI-Generated: Uses Claude Code (Claude Opus 5)
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
The recipe carried a patch that commented out the i18n.merge_file()
call for org.opensuse.cupspkhelper.mechanism.policy and installed the
untranslated template in its place, so the polkit dialogs showed
English strings only and the 43 translations shipped in po/ were
discarded.
The merge failed because meson hands the data_dirs argument to its
msgfmthelper script, which replaces GETTEXTDATADIRS instead of
extending it. That hides the ITS rules polkit installs into the target
sysroot, which msgfmt needs to recognize the translatable elements of
a policy file, and which gettext.bbclass already points at.
cups-pk-helper ships no ITS rules of its own, so the argument has no
purpose beyond breaking the merge.
Replace the patch with one that drops data_dirs and keeps the merge
enabled, and remove the manual install of the template.
Tested by rebuilding for corei7-64: the installed policy file now
carries description and message elements for all 43 languages.
AI-Generated: Uses Claude Code (Claude Opus 5)
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Creates a separate package for the polkit systemd
service, such that other implementations for polkit
could be used instead of polkit on systemd enabled
systems, while still keeping polkit available. This
is especially helpful for software that depends on
polkit or its libraries etc, e.g. udisks2.
Also package dbus configuration into an own package
Signed-off-by: Tillmann Severin <tillmann.severin@bmw.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade to release 5.1.2:
- workflows: bump docker/setup-buildx-action from 4.2.0 to 4.3.0
- workflows: bump reviewdog/action-actionlint from 1.73.1 to 1.73.2
- workflows: bump github/codeql-action/upload-sarif from 4.37.6 to
4.37.7
- workflows: bump uraimo/run-on-arch-action from 3.1.0 to 3.2.0
- workflows: bump github/codeql-action/upload-sarif from 4.37.7 to
4.37.8
- in_node_exporter_metrics: Implement stat and thermal_zone for
macOS
- out_prometheus_remote_write: Add 1-hour cut-off for expiring
staled metrics
- out_splunk: add time_key support for the HEC event time
- Dockerfile: optimize layers
- config: fix startup abort when log_level set via env and config
- tests: runtime: Plug a SEGV occurrence on macOS
- out_gcs: add unify_tag option to buffer all tags into one file
- log: clamp the suppression length to what was written
- out_gcs: implement parquet compressions
- out_gcs: support application default credentials
- in_winevtlog: Plug a crash path
- in_winevtlog: fix crash when all channels are missing and
ignore_missing_channels is enabled
- log: make consistency for suppress log feature
- es: opensearch: output: task: handle partial succeeded requests
- tests: runtime: Fix errors of incompatible types for in_ebpf
tests
- filter_kubernetes: implement namespace exclude
- in_systemd: support capturing with namespace
- release: update to 5.1.2
- workflows: bump softprops/action-gh-release from 3.0.2 to 3.0.3
- workflows: bump github/codeql-action/upload-sarif from 4.37.8
to 4.37.9
- lib: cmetrics: update to v2.2.2
- input_chunk: input_log: in_storage_backlog: address underflowing
/ overflowing chunk limit size
- out_azure_blob: Plug dangling pointers on exceptions
- out_azure_kusto: stop logging federated and access tokens
- out_gcs: add Workload Identity Federation support
- wamrc: Build with LLVM-17
- reload: preserve configuration path during hot reload
- out_s3: Clean up orphaned chunks
- config: config_format: address wrongly specified parameter on
service section
- aws: compression: validate valid columnar formats
- multiline: add built-in json parser for JSON multiline objects
- engine: Plug a race on starting engine
- tests: integration: Adjust allocation patterns for Ubuntu 26.04
- workflows: bump helm/kind-action from 1.14.0 to 1.15.0
- workflows: bump reviewdog/action-actionlint from 1.73.2 to
1.73.3
- workflows: bump docker/setup-qemu-action from 4.2.0 to 4.3.0
- out_opentelemetry: support metrics max datapoints
- AGENTS: Reflect circumstance of the current commit linter
- in_node_exporter_metrics: expire metrics for networking
- in_forward: ingest all metrics contexts in payload
- out_kafka: preserve infinite shutdown grace
- out_loki: scope remove_mpa thread-local cache per instance
- log: return NULL after flb_worker_context_create failure in
flb_log_create
- in_node_exporter_metrics: plug possible overrun indexes
- packaging: stabilize Debian release images
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
do_configure fails with:
configure.ac:17: error: must install xorg-macros 1.8 or later before
running autoconf/autogen
Signed-off-by: Alper Ak <alperyasinak1@gmail.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
oe-core upgraded ffmpeg 8.1.2 -> 9.0, which removed the AVCodec::pix_fmts
and AVCodec::supported_framerates fields (deprecated since FFmpeg 7.1 /
libavcodec 61.13.100). opencv's videoio ffmpeg backend still reads both
of them directly in cap_ffmpeg_hw.hpp and cap_ffmpeg_impl.hpp, so it does
not build against ffmpeg 9.
Backport the merged upstream series from opencv/opencv#29533, which reads
those lists through avcodec_get_supported_config() when building against
libavcodec 61.13.100 or newer and keeps the old field access otherwise.
The series was merged on 2026-08-11, after the 4.14.0 tag (2026-07-17),
so it is not part of the release we build.
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
do_compile fails with:
keyraw.c:158:16: error: implicit declaration of function
'EVP_PKEY_asn1_find_str'
The GOST code needs the OpenSSL ENGINE API, which 4.0 removed. configure
cannot run its GOST test when cross compiling and answers "maybe", which
enables GOST anyway. Make it check that the API is there first.
Nothing is lost by this and no layer ships a GOST engine, so the lookup
already returned 0 at runtime. gost-engine has not been ported to
providers yet [1].
[1] https://github.com/gost-engine/engine/issues/496
Signed-off-by: Alper Ak <alperyasinak1@gmail.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
The openssl backend no longer compiles against openssl 4.x. OpenSSL 4.0
made struct asn1_string_st opaque (asn1.h only forward declares it now),
while libspdm's cryptlib_openssl still reaches into ASN1_INTEGER and
ASN1_TIME members directly:
libspdm/os_stub/cryptlib_openssl/pk/x509.c:814:51: error: incomplete
definition of type 'ASN1_INTEGER' (aka 'struct asn1_string_st')
libspdm/os_stub/cryptlib_openssl/pk/x509.c:1131:14: error: invalid
application of 'sizeof' to an incomplete type 'ASN1_TIME'
make the crypto backend a PACKAGECONFIG choice and default to mbedtls,
which builds fine. openssl stays selectable for anyone still on openssl
3.x, and the two options are marked as mutually exclusive.
While at it, update SRCREV to the current tip of main, which carries 41
commits including a build refactor, TPM support, Linux kernel MCTP stack
support and several libspdm syncs.
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Fixes build with clang-23, which enables -Wunused-template in a way that
trips over openthread's parse_cmdline.hpp. With -Werror -Wfatal-errors
that is fatal:
third_party/openthread/repo/src/core/utils/parse_cmdline.hpp:240:48:
fatal error: unused function template 'ParseAsHexString'
[-Wunused-template]
Already fixed upstream in openthread commit 30c3569ac5ca ("[parse-cmdline]
make ParseAsHexString() inline"), which the openthread submodule of the
new SRCREV includes, so bump instead of carrying a backport.
Adapt the recipe to upstream changes made since the previous SRCREV:
* ot-br-posix commit cf4877d68af8 ("[mdns] remove avahi publisher option
and dependencies") deleted the avahi mDNS publisher; OTBR_MDNS=avahi
is now a configure-time FATAL_ERROR. Switch to OTBR_MDNS=openthread,
the new upstream default, and drop the avahi/avahi-daemon dependencies
the same way upstream did in their own etc/yocto/otbr_git.bb.
* The advertising and discovery proxies grew OT core implementations
(OTBR_OT_SRP_ADV_PROXY, OTBR_OT_DISCOVERY_PROXY) which default to ON
whenever OTBR_MDNS is set, and enabling both variants is now a
FATAL_ERROR ("Only one Advertising Proxy can be enabled."). Drop the
explicit OTBR_SRP_ADVERTISING_PROXY/OTBR_DNSSD_DISCOVERY_PROXY=ON so
the OT core ones are used.
* Drop 0001-otbr-agent.service.in-remove-pre-exec-hook-for-mdns-.patch.
With OTBR_MDNS=openthread src/agent/CMakeLists.txt never sets
EXEC_START_PRE, so the generated otbr-agent.service already has a bare
ExecStart= and the patch has nothing left to do.
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>