From: Simon McVittie Date: Fri, 7 Jul 2017 12:16:49 +0000 (+0100) Subject: Merge branch 'dbus-1.10' X-Git-Tag: dbus-1.12.0~78 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=15369dc956a0fbeeae3e63aac7b1d342dbf3f7ad;p=platform%2Fupstream%2Fdbus.git Merge branch 'dbus-1.10' --- 15369dc956a0fbeeae3e63aac7b1d342dbf3f7ad diff --cc NEWS index 02e845c,0c2547d..9111bc8 --- a/NEWS +++ b/NEWS @@@ -41,122 -22,13 +41,125 @@@ Fixes • Ensure that tests fail if they would otherwise have tried to connect to the real session bus (fd.o #101698, Simon McVittie) + • Make build-time tests cope with finding Python 3, but not Python 2 + (fd.o #101716, Simon McVittie) + -D-Bus 1.10.20 (2017-06-29) +Internal changes relevant to dbus developers: + +• DBusVariant is a new mechanism to copy single values from a message into + a buffer without copying the entire message (fd.o #101568, Simon McVittie) + +• DBUS_SYSTEM_LOG_FATAL has been replaced by DBUS_SYSTEM_LOG_ERROR. + Logging an ERROR message does not make the process exit; the caller + is responsible for calling abort() or exit(), whichever is more appropriate. + (fd.o #101568, Simon McVittie) + +• Better test coverage (fd.o #101568, Simon McVittie) + +D-Bus 1.11.14 (2017-06-29) == -The “suggesting a delivery gone horribly wrong” release. +The “irrational fear of bees” release. + +Dependencies: + +• Expat >= 2.1.0 is always required +• libselinux >= 2.0.86 is required if SELinux support is enabled +• GLib >= 2.40 is required if full test coverage is enabled + +Build-time configuration changes: + +• We now use pkg-config to find libexpat in Autotools builds. This requires + Expat 2.1.0 (March 2012) or later. In particular, this should remove the + need to configure with LDFLAGS=-L/usr/local/lib on OpenBSD, which can + itself cause compilation failures. + + As with all pkg-config-based configure checks, you can use + PKG_CONFIG_PATH=/whatever/lib/pkgconfig to find expat.pc in a + non-standard prefix, or EXPAT_CFLAGS="-I/whatever/include" and + EXPAT_LIBS="-L/whatever/lib -lexpat" to avoid needing a .pc file + at all. + + (fd.o #69801, Simon McVittie) + +• Similarly, we now use pkg-config to find libselinux. Version 2.0.86 + is required due to the removal of explicit refcounting for SIDs. + (fd.o #100912, Laurent Bigonville) + +Behaviour changes: + +• Previously, /etc/machine-id could be copied to /var/lib/dbus/machine-id + as a side-effect of a sufficiently privileged process merely reading the + machine ID. It is no longer copied as a side-effect of reading. + Running dbus-uuidgen --ensure, which should be done after installing dbus, + continues to copy /etc/machine-id to /var/lib/dbus/machine-id if the + former exists and the latter does not. + (fd.o #101257, Simon McVittie) + +• The undocumented Verbose interface, and the GetAllMatchRules method on + the undocumented Stats interface, must now be used via the object path + /org/freedesktop/DBus. Previously, they existed on all object paths. + (fd.o #101257, Simon McVittie) + +• AddMatch() with a match rule containing eavesdrop='true' will now fail + unless called by either the same user as the dbus-daemon, or Unix uid 0 + (root), matching the restrictions applied to the newer BecomeMonitor() + method. On the session bus this has no practical effect. On the system + bus this will prevent certain configurations that already did not + work well in practice. (fd.o #101567, Simon McVittie) + +Enhancements: + +• D-Bus Specification version 0.31 + · Don't require implementation-specific search paths to be lowest + priority + · Correct regex syntax for optionally-escaped bytes in addresses so it + includes hyphen-minus, forward slash and underscore as intended + · Describe all message bus methods in the same section + · Clarify the correct object path for method calls to the message bus + (/org/freedesktop/DBus, DBUS_PATH_DBUS in the reference implementation) + · Document that the message bus implements Introspectable, Peer and + Properties + · Add new Features and Interfaces properties for message bus + feature-discovery + · Add unix:dir=..., which resembles unix:tmpdir=... but never uses + abstract sockets + · Don't require eavesdrop='true' to be accepted from connections not + sufficiently privileged to use it successfully + · Formally deprecate eavesdropping in favour of BecomeMonitor + (fd.o #99825, #100686, #100795, #101256, #101257, #101567; + Simon McVittie, Tom Gundersen) + +• Implement the Properties and Peer interfaces in dbus-daemon + (fd.o #101257, Simon McVittie) + +• New function dbus_try_get_local_machine_id() is like + dbus_get_local_machine_id(), but returning a DBusError. Other code + that needs the machine ID will now report a recoverable error (instead + of logging to stderr and aborting) if no machine ID is available. + Generating a machine ID is still considered to be a required part of + installing dbus correctly. (fd.o #13194, Simon McVittie) + +• Implement GetConnectionSELinuxSecurityContext("org.freedesktop.DBus") + (fd.o #101315, Laurent Bigonville) + +• Avoid deprecated API calls when using SELinux + (fd.o #100912, Laurent Bigonville) + +• Switch a test from the deprecated g_test_trap_fork() to + g_test_trap_subprocess(), for Windows support and better robustness + on Unix (fd.o #101362, Simon McVittie) + +• On systemd systems, if ${localstatedir}/dbus/machine-id doesn't exist, + instruct systemd-tmpfiles to make it a symbolic link to /etc/machine-id. + This prevents the two files from going out of sync on stateless or live + images without needing to run dbus-uuidgen, and supports older D-Bus + implementations that do not necessarily read /etc/machine-id themselves. + (fd.o #101570, Simon McVittie) + +• Implement unix:dir=..., which resembles unix:tmpdir=... but never uses + abstract sockets. This is preferable when used with Linux containers. + (fd.o #101567, Simon McVittie) Fixes: