Hello community, here is the log from the commit of package bluez for openSUSE:Factory checked in at 2019-12-11 11:58:44 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/bluez (Old) and /work/SRC/openSUSE:Factory/.bluez.new.4691 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "bluez" Wed Dec 11 11:58:44 2019 rev:165 rq:754387 version:5.52 Changes: -------- --- /work/SRC/openSUSE:Factory/bluez/bluez.changes 2019-08-24 18:39:14.241798691 +0200 +++ /work/SRC/openSUSE:Factory/.bluez.new.4691/bluez.changes 2019-12-11 11:59:10.640890313 +0100 @@ -1,0 +2,75 @@ +Thu Nov 21 16:51:16 UTC 2019 - Stefan BrĂ¼ns <stefan.bru...@rwth-aachen.de> + +- BuildIgnore shared-mime-info, pulled in by libgio-2_0-0, not + required for building, but causes a build loop. +- Add bcond for mesh, also enable mesh on Leap 15.2/SLE15SP2. +- Properly conditionalize all files which are only built with enabled + mesh functionality, fixes build on Leap 15.1 and earlier. + +------------------------------------------------------------------- +Thu Nov 7 11:14:13 UTC 2019 - Stefan Seyfried <seife+...@b1-systems.com> + +- fix udev directory from %_libexecdir to %_prefix/lib + +------------------------------------------------------------------- +Mon Nov 4 21:22:20 UTC 2019 - Stefan Seyfried <seife+...@b1-systems.com> + +- update to version 5.52: + * Fix issue with AVDTP session disconnect timeout handling. + * Mark media endpoint APIs as stable interfaces. +- remove obsolete 0001-mesh-Fix-segmentation-fault-on-Join-call.patch +- disable one more segfaulting patch + +------------------------------------------------------------------- +Mon Oct 7 14:56:28 UTC 2019 - Stefan Seyfried <seife+...@b1-systems.com> + +- add 0001-mesh-Fix-segmentation-fault-on-Join-call.patch + (boo#1152672) + +------------------------------------------------------------------- +Sun Oct 6 13:24:51 UTC 2019 - Stefan Seyfried <seife+...@b1-systems.com> + +- add _service to use github.com/seifes-obs-packages/bluez.git + as source for the package + +------------------------------------------------------------------- +Fri Oct 4 10:50:15 UTC 2019 - Jan Engelhardt <jeng...@inai.de> + +- Combine multiple %service_* to reduce generated boilerplate. + +------------------------------------------------------------------- +Wed Oct 2 08:33:56 UTC 2019 - Stefan Seyfried <seife+...@b1-systems.com> + +- disable mesh service due to security concerns, see boo#1151518 +- add README-mesh.SUSE to explain the issue +- remove no longer necessary temporary-rpmlintrc + +------------------------------------------------------------------- +Fri Sep 20 19:32:43 UTC 2019 - Stefan Seyfried <seife+...@b1-systems.com> + +- update to version 5.51: + * Fix issue with first agent not being registered as default. + * Fix issue with loading devices without Service Changed CCC. + * Fix issue with GATT client and extended property reading. + * Fix issue with handling GATT client invalid read behavior. + * Fix issue with handling GATT disconnect handler removal. + * Fix issue with missing GATT/GAP service records for SDP. + * Fix issue with checking SDP continuation state length. + * Fix issue with HID device removal on HoG disconnect. + * Fix issue with AVDTP and session destroy handling. + * Fix issue with AVCTP and output MTU accounting. + * Fix issue with AVRCP and creating media items. + * Add support for GATT database caching feature. + * Add experimental support for Bluetooth Mesh Profile. +- removed obsoleted patches: + * 0001-obexd-use-AM_LDFLAGS-for-linking.patch + * 0001-policy-Add-logic-to-connect-a-Sink.patch + * 0001-tools-Fix-build-after-y2038-changes-in-glibc.patch + * bluez-5.50-a2dp-backports.patch + * bluez-5.50-gcc9.patch + * disable_some_obex_tests.patch + * bluez-5.45-disable-broken-tests.diff +- add bluez-disable-broken-tests.diff +- add temporary rpmlintrc until security team approves + +------------------------------------------------------------------- Old: ---- 0001-obexd-use-AM_LDFLAGS-for-linking.patch 0001-policy-Add-logic-to-connect-a-Sink.patch 0001-tools-Fix-build-after-y2038-changes-in-glibc.patch bluez-5.45-disable-broken-tests.diff bluez-5.50-a2dp-backports.patch bluez-5.50-gcc9.patch bluez-5.50.tar.xz disable_some_obex_tests.patch New: ---- README.md _service bluez-5.52.tar.xz bluez-disable-broken-tests.diff ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ bluez.spec ++++++ --- /var/tmp/diff_new_pack.0JCohX/_old 2019-12-11 11:59:11.476890086 +0100 +++ /var/tmp/diff_new_pack.0JCohX/_new 2019-12-11 11:59:11.476890086 +0100 @@ -1,8 +1,8 @@ # # spec file for package bluez # -# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany. -# Copyright (c) 2010-2017 B1 Systems GmbH, Vohburg, Germany +# Copyright (c) 2019 SUSE LLC +# Copyright (c) 2010-2019 B1 Systems GmbH, Vohburg, Germany # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -17,14 +17,25 @@ # +%if 0%{?suse_version} >= 1550 || 0%{?sle_version} >= 150200 +%bcond_without mesh +%else +%bcond_with mesh +%endif + +# maintained at https://github.com/seifes-opensuse-packages/bluez.git +# contributions via pull requests are welcome! +# Name: bluez -Version: 5.50 +Version: 5.52 Release: 0 Summary: Bluetooth Stack for Linux License: GPL-2.0-or-later Group: Hardware/Mobile -Url: http://www.bluez.org +URL: http://www.bluez.org Source: http://www.kernel.org/pub/linux/bluetooth/bluez-%{version}.tar.xz +# unused in the package, but allows to use "extract *.*" in source service +Source42: README.md Source5: baselibs.conf Source7: bluetooth.modprobe # fix some logitech HID devices, bnc#681049, bnc#850478 --seife+...@b1-systems.com @@ -33,21 +44,9 @@ # PATCH-FIX-UPSTREAM: find the cups dir in libexec not in libdir Patch3: bluez-cups-libexec.patch # workaround for broken tests (reported upstream but not yet fixed) -Patch4: bluez-5.45-disable-broken-tests.diff -# PATCH-FIX-UPSTREAM: obexd not compiled with -fpie -- seife+...@b1-systems.com -Patch5: 0001-obexd-use-AM_LDFLAGS-for-linking.patch -# disable tests for bypass boo#1078285 -Patch6: disable_some_obex_tests.patch -# PATCH-FIX-UPSTREAM: improve profile availability on some audio devices -Patch7: 0001-policy-Add-logic-to-connect-a-Sink.patch -# PATCH-FIX-UPSTREAM a2dp fixes for newer codecs -Patch8: bluez-5.50-a2dp-backports.patch -# PATCH-FIX-UPSTREAM tools: Fix build after y2038 changes in glibc -Patch9: 0001-tools-Fix-build-after-y2038-changes-in-glibc.patch +Patch4: bluez-disable-broken-tests.diff # Move 43xx firmware path for RPi3 bluetooth support bsc#1140688 Patch10: RPi-Move-the-43xx-firmware-into-lib-firmware.patch -# PATCH-FIX-UPSTREAM fix build with gcc 9, picked from upstream and rebased (boo#1121404, bko#202213) -Patch11: bluez-5.50-gcc9.patch # Upstream suggests to use btmon instead of hcidump and does not want those patches # => PATCH-FIX-OPENSUSE for those two :-) # fix some memory leak with malformed packet (reported upstream but not yet fixed) @@ -67,8 +66,13 @@ BuildRequires: pkgconfig(ell) >= 0.3 %endif BuildRequires: pkgconfig(glib-2.0) >= 2.28 +# libgio-2_0-0 has a runtime dependency on shared-mime-info, which is not +# required for building here, but causes a build loop +#!BuildIgnore: shared-mime-info +%if %{with mesh} # json-c is needed for --enable-mesh BuildRequires: pkgconfig(json-c) +%endif BuildRequires: pkgconfig(libcap-ng) BuildRequires: pkgconfig(libical) BuildRequires: pkgconfig(libudev) @@ -160,15 +164,7 @@ %patch2 -p1 %patch3 -p1 %patch4 -p1 -%patch5 -p1 -%ifarch ppc ppc64 ppc64le -%patch6 -p1 -%endif -%patch7 -p1 -%patch8 -p1 -%patch9 -p1 %patch10 -p1 -%patch11 -p1 %patch101 -p1 %patch102 -p1 mkdir dbus-apis @@ -191,7 +187,7 @@ --enable-library \ --enable-tools \ --enable-cups \ -%if 0%{?suse_version} >= 1550 +%if %{with mesh} --enable-mesh \ %endif --enable-midi \ @@ -238,7 +234,25 @@ chmod 0644 *.py *.xml *.dtd # fix python shebang -sed -i -e '1s/env p/p/' %{buildroot}%{_libdir}/bluez/test/example-gatt-{client,server} +sed -i -e '1s/env p/p/' %{buildroot}%{_libdir}/bluez/test/{example-gatt-{client,server},test-mesh} + +%if %{with mesh} +# boo#1151518 +mkdir -p %{buildroot}%{_defaultdocdir}/%{name} +mv %{buildroot}%{_sysconfdir}/dbus-1/system.d/bluetooth-mesh.conf %{buildroot}%{_defaultdocdir}/%{name} +mv %{buildroot}%{_datadir}/dbus-1/system-services/org.bluez.mesh.service %{buildroot}%{_defaultdocdir}/%{name} +cat > %{buildroot}%{_defaultdocdir}/%{name}/README-mesh.SUSE << EOF +The bluetooth-mesh dbus system config has been disabled due to security +concerns. See https://bugzilla.opensuse.org/show_bug.cgi?id=1151518 for +details. + +If you want to use this feature anyway, copy +bluetooth-mesh.conf to %{_sysconfdir}/dbus-1/systemd.d/ and +org.bluez.mesh.service to %{_datadir}/dbus-1/system-services/, +then reboot. +EOF +touch -r %{SOURCE0} %{buildroot}%{_defaultdocdir}/%{name}/README-mesh.SUSE +%endif %check %if ! 0%{?qemu_user_space_build} @@ -248,22 +262,22 @@ %endif %pre -%service_add_pre bluetooth.service +%service_add_pre bluetooth.service bluetooth-mesh.service %post %{?udev_rules_update:%udev_rules_update} # todo: check if this is still obeyed / needed with systemd %{fillup_only -n bluetooth} # We need the bluez systemd service enabled at any time. It won't start up -# on it's own, as it is triggered by udev in the end (bnc#796671) +# on its own, as it is triggered by udev in the end (bnc#796671) /bin/systemctl enable bluetooth.service 2>&1 || : /bin/systemctl daemon-reload >/dev/null 2>&1 || : %preun -%service_del_preun bluetooth.service +%service_del_preun bluetooth.service bluetooth-mesh.service %postun -%service_del_postun bluetooth.service +%service_del_postun bluetooth.service bluetooth-mesh.service %post -n libbluetooth3 -p /sbin/ldconfig %postun -n libbluetooth3 -p /sbin/ldconfig @@ -271,6 +285,9 @@ %files %defattr(-, root, root) %doc AUTHORS ChangeLog README dbus-apis src/main.conf +%if %{with mesh} +%doc %{_defaultdocdir}/%{name}/* +%endif %license COPYING %{_bindir}/bluemoon %{_bindir}/btattach @@ -289,15 +306,18 @@ %{_libdir}/bluetooth/plugins/sixaxis.so %dir %{_libexecdir}/bluetooth %{_libexecdir}/bluetooth/bluetoothd +%if %{with mesh} +%{_libexecdir}/bluetooth/bluetooth-meshd +%endif %{_libexecdir}/bluetooth/obexd %{_bindir}/bluetoothctl %{_bindir}/btmon -%if 0%{?suse_version} >= 1550 +%if %{with mesh} %{_bindir}/meshctl %endif %{_bindir}/hcidump %{_bindir}/bccmd -%{_libexecdir}/udev/ +%{_prefix}/lib/udev/ %{_mandir}/man1/btattach.1%{ext_man} %{_mandir}/man1/hcidump.1%{ext_man} %{_mandir}/man1/hciattach.1%{ext_man} @@ -312,12 +332,20 @@ %{_mandir}/man1/rfcomm.1%{ext_man} %{_mandir}/man1/rctest.1%{ext_man} %config %{_sysconfdir}/dbus-1/system.d/bluetooth.conf +# not packaged, boo#1151518 +###%%config %%{_sysconfdir}/dbus-1/system.d/bluetooth-mesh.conf %dir %{_localstatedir}/lib/bluetooth %dir %{_sysconfdir}/modprobe.d %config(noreplace) %{_sysconfdir}/modprobe.d/50-bluetooth.conf %{_unitdir}/bluetooth.service +%if %{with mesh} +%{_unitdir}/bluetooth-mesh.service +%endif %{_datadir}/dbus-1/system-services/org.bluez.service %{_datadir}/dbus-1/services/org.bluez.obex.service +# not packaged, boo#1151518 +###%%{_datadir}/dbus-1/system-services/org.bluez.mesh.service +%{_datadir}/zsh/site-functions/_bluetoothctl %files devel %defattr(-, root, root) ++++++ CVE-2016-9800-tool-hcidump-Fix-memory-leak-with-malformed-packet.patch ++++++ --- /var/tmp/diff_new_pack.0JCohX/_old 2019-12-11 11:59:11.492890082 +0100 +++ /var/tmp/diff_new_pack.0JCohX/_new 2019-12-11 11:59:11.492890082 +0100 @@ -1,3 +1,7 @@ +# Upstream suggests to use btmon instead of hcidump and does not want those patches +# => PATCH-FIX-OPENSUSE for those two :-) +# fix some memory leak with malformed packet (reported upstream but not yet fixed) + From 5ca9510314d15d562e9ef5515a5483be5f28258d Mon Sep 17 00:00:00 2001 From: "Cho, Yu-Chen" <a...@suse.com> Date: Wed, 21 Mar 2018 17:32:45 +0800 ++++++ CVE-2016-9804-tool-hcidump-Fix-memory-leak-with-malformed-packet.patch ++++++ --- /var/tmp/diff_new_pack.0JCohX/_old 2019-12-11 11:59:11.500890080 +0100 +++ /var/tmp/diff_new_pack.0JCohX/_new 2019-12-11 11:59:11.500890080 +0100 @@ -1,3 +1,7 @@ +# Upstream suggests to use btmon instead of hcidump and does not want those patches +# => PATCH-FIX-OPENSUSE for those two :-) +# fix some memory leak with malformed packet (reported upstream but not yet fixed) + From 00f50518f232c758855ac9884a841f707f41a301 Mon Sep 17 00:00:00 2001 From: "Cho, Yu-Chen" <a...@suse.com> Date: Thu, 3 May 2018 18:52:19 +0800 ++++++ README.md ++++++ # Build the openSUSE bluez package * copy the `_service` into your new OBS project directory * `osc service disabledrun` * `osc build` That's it. ++++++ _service ++++++ <services> <service name="obs_scm" mode="disabled"> <param name="url">https://github.com/seifes-opensuse-packages/bluez.git</param> <param name="scm">git</param> <param name="extract">*.*</param> <param name="version">_none_</param> </service> <service mode="disabled" name="download_files"/> </services> ++++++ bluez-5.11-logitech-hid2hci.patch ++++++ --- /var/tmp/diff_new_pack.0JCohX/_old 2019-12-11 11:59:11.556890065 +0100 +++ /var/tmp/diff_new_pack.0JCohX/_new 2019-12-11 11:59:11.556890065 +0100 @@ -1,3 +1,5 @@ +# fix some logitech HID devices, bnc#681049, bnc#850478 --seife+...@b1-systems.com + Apparently some Logitech devices need different rules. https://bugzilla.novell.com/show_bug.cgi?id=681049 https://bugzilla.novell.com/show_bug.cgi?id=850478 ++++++ bluez-5.50.tar.xz -> bluez-5.52.tar.xz ++++++ ++++ 129182 lines of diff (skipped) ++++++ bluez-cups-libexec.patch ++++++ --- /var/tmp/diff_new_pack.0JCohX/_old 2019-12-11 11:59:12.236889795 +0100 +++ /var/tmp/diff_new_pack.0JCohX/_new 2019-12-11 11:59:12.236889795 +0100 @@ -1,26 +1,26 @@ -Index: bluez-5.44/Makefile.in +Index: b/Makefile.in =================================================================== ---- bluez-5.44.orig/Makefile.in -+++ bluez-5.44/Makefile.in -@@ -2710,7 +2710,7 @@ unit_tests = $(am__append_48) unit/test- +--- a/Makefile.in ++++ b/Makefile.in +@@ -3439,7 +3439,7 @@ unit_tests = $(am__append_54) unit/test- @DEPRECATED_TRUE@@READLINE_TRUE@attrib_gatttool_LDADD = lib/libbluetooth-internal.la \ - @DEPRECATED_TRUE@@READLINE_TRUE@ src/libshared-glib.la @GLIB_LIBS@ -lreadline + @DEPRECATED_TRUE@@READLINE_TRUE@ src/libshared-glib.la $(GLIB_LIBS) -lreadline -@CUPS_TRUE@cupsdir = $(libdir)/cups/backend -+@CUPS_TRUE@cupsdir = $(libexecdir)/../cups/backend ++@CUPS_TRUE@cupsdir = $(libexecdir)/cups/backend @CUPS_TRUE@profiles_cups_bluetooth_SOURCES = profiles/cups/main.c \ @CUPS_TRUE@ profiles/cups/cups.h \ @CUPS_TRUE@ profiles/cups/sdp.c \ -Index: bluez-5.44/Makefile.tools +Index: b/Makefile.tools =================================================================== ---- bluez-5.44.orig/Makefile.tools -+++ bluez-5.44/Makefile.tools -@@ -388,7 +388,7 @@ endif +--- a/Makefile.tools ++++ b/Makefile.tools +@@ -441,7 +441,7 @@ endif endif if CUPS -cupsdir = $(libdir)/cups/backend -+cupsdir = $(libexecdir)/../cups/backend ++cupsdir = $(libexecdir)/cups/backend cups_PROGRAMS = profiles/cups/bluetooth ++++++ bluez-disable-broken-tests.diff ++++++ Index: b/Makefile.am =================================================================== --- a/Makefile.am +++ b/Makefile.am @@ -481,7 +481,8 @@ unit_test_lib_SOURCES = unit/test-lib.c unit_test_lib_LDADD = src/libshared-glib.la \ lib/libbluetooth-internal.la $(GLIB_LIBS) -unit_tests += unit/test-gatt +# hangs forever in OBS where AF_ALG is not supported. +#unit_tests += unit/test-gatt unit_test_gatt_SOURCES = unit/test-gatt.c unit_test_gatt_LDADD = src/libshared-glib.la \ @@ -511,7 +512,8 @@ unit_test_gattrib_LDADD = lib/libbluetoo $(GLIB_LIBS) $(DBUS_LIBS) -ldl -lrt if MIDI -unit_tests += unit/test-midi +# fails on i386??? or just random? +#unit_tests += unit/test-midi unit_test_midi_CPPFLAGS = $(AM_CPPFLAGS) $(ALSA_CFLAGS) -DMIDI_TEST unit_test_midi_SOURCES = unit/test-midi.c \ profiles/midi/libmidi.h \ @@ -521,7 +523,7 @@ unit_test_midi_LDADD = src/libshared-gli endif if MESH -unit_tests += unit/test-mesh-crypto +#unit_tests += unit/test-mesh-crypto unit_test_mesh_crypto_CPPFLAGS = $(ell_cflags) unit_test_mesh_crypto_SOURCES = unit/test-mesh-crypto.c \ mesh/crypto.h ell/internal ell/ell.h \