Dirk Mueller
6a83c1aecf
* Fix an incorrect assertion that could be used to crash dbus-daemon or other users of DBusServer prior to authentication, if libdbus was compiled with assertions enabled. We recommend that production builds of dbus, for example in OS distributions, should be compiled with checks but without assertions. * When connected to a dbus-broker, stop dbus-monitor from incorrectly replying to Peer method calls that were sent to the dbus-broker with a NULL destination * Fix out-of-bounds varargs read in the dbus-daemon's config- parser. This is not attacker-triggerable and appears to be harmless in practice, but is technically undefined behaviour and is detected as such by AddressSanitizer. * Avoid a data race in multi-threaded use of DBusCounter * Fix a crash with some glibc versions when non-auditable SELinux events are logged (dbus!386, Jeremi Piotrowski) * If dbus_message_demarshal() runs out of memory while validating a message, report it as NoMemory rather than InvalidArgs (dbus#420, Simon McVittie) * Use C11 _Alignof if available, for better standards- compliance * Stop including an outdated copy of pkg.m4 in the git tree * Documentation: * Fix the test-apparmor-activation test after dbus#416 * Internal changes: * Fix CI builds with recent git versions (dbus#447, Simon McVittie) - switch to using multibuild OBS-URL: https://build.opensuse.org/package/show/Base:System/dbus-1?expand=0&rev=328
126 lines
4.1 KiB
RPMSpec
126 lines
4.1 KiB
RPMSpec
#
|
|
# spec file for package dbus-1-x11
|
|
#
|
|
# Copyright (c) 2023 SUSE LLC
|
|
#
|
|
# All modifications and additions to the file contributed by third parties
|
|
# remain the property of their copyright owners, unless otherwise agreed
|
|
# upon. The license for this file, and modifications and additions to the
|
|
# file, is the same license as for the pristine package itself (unless the
|
|
# license for the pristine package is not an Open Source License, in which
|
|
# case the license is the MIT License). An "Open Source License" is a
|
|
# license that conforms to the Open Source Definition (Version 1.9)
|
|
# published by the Open Source Initiative.
|
|
|
|
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
|
#
|
|
|
|
|
|
%define _name dbus
|
|
%define _libname libdbus-1-3
|
|
%if 0%{?suse_version} <= 1320
|
|
%define _userunitdir %{_prefix}/lib/systemd/user
|
|
%endif
|
|
%bcond_without selinux
|
|
Name: dbus-1-x11
|
|
Version: 1.14.6
|
|
Release: 0
|
|
Summary: D-Bus Message Bus System
|
|
License: AFL-2.1 OR GPL-2.0-or-later
|
|
URL: https://dbus.freedesktop.org/
|
|
Source0: https://dbus.freedesktop.org/releases/dbus/%{_name}-%{version}.tar.xz
|
|
Source1: https://dbus.freedesktop.org/releases/dbus/%{_name}-%{version}.tar.xz.asc
|
|
Source2: dbus-1.keyring
|
|
Source3: baselibs.conf
|
|
Source4: dbus-1.desktop
|
|
|
|
# PATCH-FEATURE-OPENSUSE feature-suse-log-deny.patch
|
|
Patch0: feature-suse-log-deny.patch
|
|
# PATCH-FIX-OPENSUSE coolo@suse.de -- force a feature configure won't accept without x11 in buildrequires
|
|
Patch1: feature-suse-do-autolaunch.patch
|
|
# PATCH-FEATURE-OPENSUSE sflees@suse.de, users shouldn't be allowed to start / stop the dbus service.
|
|
Patch2: feature-suse-refuse-manual-start-stop.patch
|
|
|
|
BuildRequires: alts
|
|
BuildRequires: autoconf-archive
|
|
BuildRequires: libcap-ng-devel
|
|
BuildRequires: libexpat-devel >= 2.1.0
|
|
BuildRequires: libtool
|
|
BuildRequires: pkgconfig
|
|
BuildRequires: pkgconfig(libsystemd) >= 209
|
|
BuildRequires: pkgconfig(x11)
|
|
|
|
Requires: alts
|
|
Supplements: (dbus-1 and libX11-6)
|
|
Provides: dbus-launch
|
|
%if %{with selinux}
|
|
BuildRequires: libselinux-devel
|
|
%endif
|
|
|
|
%description
|
|
D-Bus contains some tools that require Xlib to be installed, those are
|
|
in this separate package so server systems need not install X.
|
|
|
|
%prep
|
|
%setup -q -n %{_name}-%{version}
|
|
%autopatch -p1
|
|
|
|
%build
|
|
echo 'HTML_TIMESTAMP=NO' >> Doxyfile.in
|
|
# We use -fpie/-pie for the whole build; this is the recommended way to harden
|
|
# the build upstream, see discussion in fdo#46570
|
|
export CFLAGS="%{optflags} -fno-strict-aliasing -fPIC -fpie"
|
|
export LDFLAGS="-pie"
|
|
export CXXFLAGS="%{optflags} -fno-strict-aliasing"
|
|
export V=1
|
|
# --with-x=auto is a workaround until https://gitlab.freedesktop.org/dbus/dbus/-/merge_requests/263
|
|
# is included (1.14.1+)
|
|
%configure \
|
|
--disable-static \
|
|
--disable-asserts \
|
|
--runstatedir=%{_rundir} \
|
|
--libexecdir=%{_libexecdir}/dbus-1 \
|
|
--enable-inotify \
|
|
--disable-doxygen-docs \
|
|
%if %{with selinux}
|
|
--enable-selinux \
|
|
%endif
|
|
--enable-systemd \
|
|
--enable-user-session \
|
|
--enable-libaudit \
|
|
--with-console-auth-dir=/run/dbus/at_console/ \
|
|
--with-system-pid-file=/run/dbus/pid \
|
|
--with-system-socket=/run/dbus/system_bus_socket \
|
|
--with-systemdsystemunitdir=%{_unitdir} \
|
|
--with-systemduserunitdir=%{_userunitdir} \
|
|
--with-x=auto
|
|
%make_build
|
|
|
|
%install
|
|
tdir=$(mktemp -d)
|
|
make DESTDIR=$tdir install
|
|
mkdir -p %{buildroot}/%{_bindir}
|
|
mv $tdir/%{_bindir}/dbus-launch %{buildroot}/%{_bindir}/dbus-launch.x11
|
|
# create entries for libalternatives
|
|
ln -sf %{_bindir}/alts %{buildroot}%{_bindir}/dbus-launch
|
|
mkdir -p %{buildroot}%{_datadir}/libalternatives/dbus-launch
|
|
cat > %{buildroot}%{_datadir}/libalternatives/dbus-launch/20.conf <<EOF
|
|
binary=%{_bindir}/dbus-launch.x11
|
|
group=dbus-launch
|
|
EOF
|
|
|
|
%pre
|
|
# removing old update-alternatives entries
|
|
if [ "$1" -gt 0 ] && [ -f %{_sbindir}/update-alternatives ] ; then
|
|
%{_sbindir}/update-alternatives --remove dbus-launch %{_bindir}/dbus-launch.x11
|
|
fi
|
|
|
|
%files
|
|
%dir %{_datadir}/libalternatives
|
|
%dir %{_datadir}/libalternatives/dbus-launch
|
|
%{_datadir}/libalternatives/dbus-launch/20.conf
|
|
%{_bindir}/dbus-launch
|
|
%{_bindir}/dbus-launch.x11
|
|
|
|
%changelog
|