Name: dbus-broker Version: 29 Release: 10 Summary: Linux D-Bus Message Broker License: Apache License 2.0 URL: https://github.com/bus1/dbus-broker Source0: https://github.com/bus1/dbus-broker/releases/download/v%{version}/%{name}-%{version}.tar.xz Patch0001: backport-CVE-2022-31213.patch Patch0002: backport-CVE-2022-31212.patch Patch0003: enable-dbus-broker-to-reexecute.patch Patch0004: add-unit-test-for-dbus-broker.patch Patch0005: backport-bus-peer-fix-catching-OOM-when-linking-match-rules.patch Patch0006: backport-dbus-socket-set-msgheader-controllen-size-using-the-.patch Patch0007: backport-launch-config-avoid-expat.h-in-header.patch Patch0008: backport-util-fdlist-add-helper-to-return-list-size.patch Patch0009: backport-util-selinux-follow-permissive-mode.patch Patch0010: backport-util-selinux-provide-helper-to-check-enforcing-mode.patch Patch0011: backport-util-selinux-try-opening-the-status-page.patch Patch0012: backport-launch-config-use-AT_RANDOM-for-XML-hash-salt.patch BuildRequires: cmake gcc glibc-devel meson python-docutils dbus BuildRequires: pkgconfig(expat) pkgconfig(libsystemd) pkgconfig(libselinux) BuildRequires: pkgconfig(systemd) pkgconfig(audit) pkgconfig(libcap-ng) %description dbus-broker is an implementation of a message bus as defined by the D-Bus specification. Its aim is to provide high performance and reliability, while keeping compatibility to the D-Bus reference implementation. It is exclusively written for Linux systems, and makes use of many modern features provided by recent linux kernel releases. %prep %autosetup -n %{name}-%{version} -p1 %build CONFIGURE_OPTS=( -Daudit=true -Dselinux=true -Ddocs=true -Dsystem-console-users=gdm -Dlinux-4-17=true ) %meson "${CONFIGURE_OPTS[@]}" %meson_build %install %meson_install %check # Enable test-parallel export CRBTREE_TEST_PTRACE=1 %meson_test %pre # Add the "dbus" user and group getent group dbus > /dev/null || groupadd -f -g 81 -r dbus if ! getent passwd dbus > /dev/null ; then if ! getent passwd 81 > /dev/null ; then useradd -r -u 81 -c 'D-Bus' -g dbus -s /sbin/nologin -d %{_localstatedir}/run/dbus dbus else useradd -r -g dbus -c 'D-Bus' -s /sbin/nologin -d %{_localstatedir}/run/dbus dbus fi fi %preun %systemd_user_preun dbus-broker.service # Disable and stop dbus-broker.service after pre uninstalling if [ $1 == 0 ] && [ -x /usr/bin/systemctl ]; then systemctl disable dbus-broker.service &>/dev/null || : systemctl reset-failed dbus-broker.service &>/dev/null || : systemctl stop dbus-broker.service &>/dev/null || : fi %post %systemd_user_post dbus-broker.service # Enable after installing if [ $1 == 1 ] && [ -x /usr/bin/systemctl ]; then systemctl --no-reload enable dbus-broker.service &>/dev/null || : fi # Reexec after upgrading if [ $1 == 2 ]; then dbus-broker-launch --reexec &>/dev/null || : fi %postun %systemd_user_postun dbus-broker.service %files %license AUTHORS %license LICENSE %{_bindir}/dbus-broker* %{_journalcatalogdir}/dbus-broker*.catalog %{_mandir}/man1/dbus-broker*.1* %{_unitdir}/dbus-broker.service %{_userunitdir}/dbus-broker.service %changelog * Fri May 24 2024 huyubiao - 29-10 - fix enable-dbus-broker-to-reexecute.patch and backport-launch-config-use-AT_RANDOM-for-XML-hash-salt.patch * Sat Oct 7 2023 hongjinghao - 29-9 - Fix buffer leakage * Wed Aug 9 2023 hongjinghao - 29-8 - sync patches from dbus-broker community * Sun Jun 25 2023 hongjinghao - 29-7 - sync patches from dbus-broker community * Wed Jun 7 2023 hongjinghao - 29-6 - Enable dbus-broker to reexecute without disconnection * Thu Dec 01 2022 licunlong - 29-5 - Optimize installing and removing dbus-broker * Tue Nov 22 2022 hongjinghao - 29-4 - Fix CVE-2022-31212 and CVE-31213 * Tue Nov 08 2022 licunlong - 29-3 - Enable test-parallel * Tue Feb 22 2022 licunlong - 29-2 - Type:bugfix - CVE:NA - SUG:NA - DESC:don't enable/disable dbus.socket when install/uninstall dbus-broker. * Thu Dec 16 2021 licunlong - 29-1 - Type:enhance - CVE:NA - SUG:NA - DESC:update dbus-broker to v29 * Thu Aug 05 2021 openEuler BuildTeam - 28-1 - Package Init.