Hello community, here is the log from the commit of package dbus-1 for openSUSE:Factory checked in at 2017-03-05 17:57:33 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/dbus-1 (Old) and /work/SRC/openSUSE:Factory/.dbus-1.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "dbus-1" Sun Mar 5 17:57:33 2017 rev:144 rq:461743 version:1.10.16 Changes: -------- --- /work/SRC/openSUSE:Factory/dbus-1/dbus-1-x11.changes 2017-01-11 12:02:17.506101626 +0100 +++ /work/SRC/openSUSE:Factory/.dbus-1.new/dbus-1-x11.changes 2017-03-05 17:58:04.402182230 +0100 @@ -1,0 +2,37 @@ +Wed Mar 1 08:35:51 UTC 2017 - sfl...@suse.de + +- Update to 1.10.16 +Fixes: +* Prevent symlink attacks in the nonce-tcp transport on Unix that could + allow an attacker to overwrite a file named "nonce", in a directory + that the user running dbus-daemon can write, with a random value + known only to the user running dbus-daemon. This is unlikely to be + exploitable in practice, particularly since the nonce-tcp transport + is really only useful on Windows. + (fd.o #99828, Simon McVittie) (bsc#1025950) + +* Avoid symlink attacks in the "embedded tests", which are not enabled + by default and should never be enabled in production builds of dbus. + (fd.o #99828, Simon McVittie) (bsc#1025951) + +* Work around an undesired effect of the fix for CVE-2014-3637 + (fd.o #80559), in which processes that frequently send fds, such as + logind during a flood of new PAM sessions, can get disconnected for + continuously having at least one fd "in flight" for too long; + dbus-daemon interprets that as a potential denial of service attack. + The workaround is to disable that check for uid 0 process such as + logind, with a message in the system log. The bug remains open while + we look for a more general solution. + (fd.o #95263, LP#1591411; Simon McVittie) + +* Don't run the test test-dbus-launch-x11.sh if X11 autolaunching + was disabled at compile time. That test is not expected to work + in that configuration. (fd.o #98665, Simon McVittie) + +Enhancements: + +* Do the Travis-CI build in Docker containers for Ubuntu LTS, Debian + stable and Debian testing in addition to the older Ubuntu that is + the default (fd.o #98889, Simon McVittie) + +------------------------------------------------------------------- dbus-1.changes: same change Old: ---- dbus-1.10.12.tar.gz New: ---- dbus-1.10.16.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ dbus-1-x11.spec ++++++ --- /var/tmp/diff_new_pack.9AIhbo/_old 2017-03-05 17:58:17.900271691 +0100 +++ /var/tmp/diff_new_pack.9AIhbo/_new 2017-03-05 17:58:17.900271691 +0100 @@ -23,7 +23,7 @@ %endif %bcond_without selinux Name: dbus-1-x11 -Version: 1.10.12 +Version: 1.10.16 Release: 0 Summary: D-Bus Message Bus System License: GPL-2.0+ or AFL-2.1 dbus-1.spec: same change ++++++ dbus-1.10.12.tar.gz -> dbus-1.10.16.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dbus-1.10.12/NEWS new/dbus-1.10.16/NEWS --- old/dbus-1.10.12/NEWS 2016-10-10 11:19:15.000000000 +0200 +++ new/dbus-1.10.16/NEWS 2017-02-16 15:11:55.000000000 +0100 @@ -1,3 +1,58 @@ +D-Bus 1.10.16 (2017-02-16) +== + +The “super digging powers” release. + +The fixes in this release are arguably security fixes, but if they +affect you, please take this opportunity to rethink how you are +configuring dbus. + +Enhancements: + +• Do the Travis-CI build in Docker containers for Ubuntu LTS, Debian + stable and Debian testing in addition to the older Ubuntu that is + the default (fd.o #98889, Simon McVittie) + +Fixes: + +• Prevent symlink attacks in the nonce-tcp transport on Unix that could + allow an attacker to overwrite a file named "nonce", in a directory + that the user running dbus-daemon can write, with a random value + known only to the user running dbus-daemon. This is unlikely to be + exploitable in practice, particularly since the nonce-tcp transport + is really only useful on Windows. + + On Unix systems we strongly recommend using only the unix: and systemd: + transports, together with EXTERNAL authentication. These are the only + transports and authentication mechanisms enabled by default, + + (fd.o #99828, Simon McVittie) + +• Avoid symlink attacks in the "embedded tests", which are not enabled + by default and should never be enabled in production builds of dbus. + (fd.o #99828, Simon McVittie) + +D-Bus 1.10.14 (2016-11-28) +== + +The “Well, other bands know more than three chords” release. + +Fixes: + +• Work around an undesired effect of the fix for CVE-2014-3637 + (fd.o #80559), in which processes that frequently send fds, such as + logind during a flood of new PAM sessions, can get disconnected for + continuously having at least one fd "in flight" for too long; + dbus-daemon interprets that as a potential denial of service attack. + The workaround is to disable that check for uid 0 process such as + logind, with a message in the system log. The bug remains open while + we look for a more general solution. + (fd.o #95263, LP#1591411; Simon McVittie) + +• Don't run the test test-dbus-launch-x11.sh if X11 autolaunching + was disabled at compile time. That test is not expected to work + in that configuration. (fd.o #98665, Simon McVittie) + D-Bus 1.10.12 (2016-10-10) == diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dbus-1.10.12/build-aux/config.guess new/dbus-1.10.16/build-aux/config.guess --- old/dbus-1.10.12/build-aux/config.guess 2016-04-30 12:57:03.000000000 +0200 +++ new/dbus-1.10.16/build-aux/config.guess 2016-11-12 21:18:52.000000000 +0100 @@ -2,7 +2,7 @@ # Attempt to guess a canonical system name. # Copyright 1992-2016 Free Software Foundation, Inc. -timestamp='2016-04-02' +timestamp='2016-10-02' # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by @@ -186,9 +186,12 @@ *) machine=${UNAME_MACHINE_ARCH}-unknown ;; esac # The Operating System including object format, if it has switched - # to ELF recently, or will in the future. + # to ELF recently (or will in the future) and ABI. case "${UNAME_MACHINE_ARCH}" in - arm*|earm*|i386|m68k|ns32k|sh3*|sparc|vax) + earm*) + os=netbsdelf + ;; + arm*|i386|m68k|ns32k|sh3*|sparc|vax) eval $set_cc_for_build if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ | grep -q __ELF__ @@ -997,6 +1000,9 @@ eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'` test x"${CPU}" != x && { echo "${CPU}-unknown-linux-${LIBC}"; exit; } ;; + mips64el:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + exit ;; openrisc*:Linux:*:*) echo or1k-unknown-linux-${LIBC} exit ;; @@ -1029,6 +1035,9 @@ ppcle:Linux:*:*) echo powerpcle-unknown-linux-${LIBC} exit ;; + riscv32:Linux:*:* | riscv64:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + exit ;; s390:Linux:*:* | s390x:Linux:*:*) echo ${UNAME_MACHINE}-ibm-linux-${LIBC} exit ;; @@ -1408,18 +1417,17 @@ cat >&2 <<EOF $0: unable to guess system type -This script, last modified $timestamp, has failed to recognize -the operating system you are using. It is advised that you -download the most up to date version of the config scripts from +This script (version $timestamp), has failed to recognize the +operating system you are using. If your script is old, overwrite +config.guess and config.sub with the latest versions from: http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess and http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub -If the version you run ($0) is already up to date, please -send the following data and any information you think might be -pertinent to <config-patc...@gnu.org> in order to provide the needed -information to handle your system. +If $0 has already been updated, send the following data and any +information you think might be pertinent to config-patc...@gnu.org to +provide the necessary information to handle your system. config.guess timestamp = $timestamp diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dbus-1.10.12/build-aux/config.sub new/dbus-1.10.16/build-aux/config.sub --- old/dbus-1.10.12/build-aux/config.sub 2016-04-30 12:57:03.000000000 +0200 +++ new/dbus-1.10.16/build-aux/config.sub 2016-11-12 21:18:52.000000000 +0100 @@ -2,7 +2,7 @@ # Configuration validation subroutine script. # Copyright 1992-2016 Free Software Foundation, Inc. -timestamp='2016-03-30' +timestamp='2016-11-04' # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by @@ -117,7 +117,7 @@ nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ knetbsd*-gnu* | netbsd*-gnu* | netbsd*-eabi* | \ - kopensolaris*-gnu* | \ + kopensolaris*-gnu* | cloudabi*-eabi* | \ storm-chaos* | os2-emx* | rtmk-nova*) os=-$maybe_os basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` @@ -301,6 +301,7 @@ | open8 | or1k | or1knd | or32 \ | pdp10 | pdp11 | pj | pjl \ | powerpc | powerpc64 | powerpc64le | powerpcle \ + | pru \ | pyramid \ | riscv32 | riscv64 \ | rl78 | rx \ @@ -428,6 +429,7 @@ | orion-* \ | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \ + | pru-* \ | pyramid-* \ | riscv32-* | riscv64-* \ | rl78-* | romp-* | rs6000-* | rx-* \ @@ -643,6 +645,14 @@ basic_machine=m68k-bull os=-sysv3 ;; + e500v[12]) + basic_machine=powerpc-unknown + os=$os"spe" + ;; + e500v[12]-*) + basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` + os=$os"spe" + ;; ebmon29k) basic_machine=a29k-amd os=-ebmon @@ -1022,7 +1032,7 @@ ppc-* | ppcbe-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` ;; - ppcle | powerpclittle | ppc-le | powerpc-little) + ppcle | powerpclittle) basic_machine=powerpcle-unknown ;; ppcle-* | powerpclittle-*) @@ -1032,7 +1042,7 @@ ;; ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` ;; - ppc64le | powerpc64little | ppc64-le | powerpc64-little) + ppc64le | powerpc64little) basic_machine=powerpc64le-unknown ;; ppc64le-* | powerpc64little-*) @@ -1389,7 +1399,7 @@ | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ | -chorusos* | -chorusrdb* | -cegcc* \ | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ - | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \ + | -midipix* | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \ | -linux-newlib* | -linux-musl* | -linux-uclibc* \ | -uxpv* | -beos* | -mpeix* | -udk* | -moxiebox* \ | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ @@ -1399,7 +1409,7 @@ | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es* \ - | -onefs* | -tirtos*) + | -onefs* | -tirtos* | -phoenix* | -fuchsia*) # Remember, each alternative MUST END IN *, to match a version number. ;; -qnx*) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dbus-1.10.12/bus/activation.c new/dbus-1.10.16/bus/activation.c --- old/dbus-1.10.12/bus/activation.c 2016-10-10 11:06:26.000000000 +0200 +++ new/dbus-1.10.16/bus/activation.c 2017-02-16 14:46:23.000000000 +0100 @@ -2436,21 +2436,8 @@ static dbus_bool_t init_service_reload_test (DBusString *dir) { - DBusStat stat_buf; - - if (!_dbus_stat (dir, &stat_buf, NULL)) - { - if (!_dbus_create_directory (dir, NULL)) - return FALSE; - } - else - { - if (!test_remove_directory (dir)) - return FALSE; - - if (!_dbus_create_directory (dir, NULL)) - return FALSE; - } + if (!_dbus_create_directory (dir, NULL)) + return FALSE; /* Create one initial file */ if (!test_create_service_file (dir, SERVICE_FILE_1, SERVICE_NAME_1, "exec-1")) @@ -2638,6 +2625,9 @@ /* Do nothing? */ } + if (!cleanup_service_reload_test (&directory)) + goto out; + /* Do OOM tests */ if (!init_service_reload_test (&directory)) _dbus_assert_not_reached ("could not initiate service reload test"); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dbus-1.10.12/bus/connection.c new/dbus-1.10.16/bus/connection.c --- old/dbus-1.10.12/bus/connection.c 2015-11-23 22:53:42.000000000 +0100 +++ new/dbus-1.10.16/bus/connection.c 2017-02-01 12:09:18.000000000 +0100 @@ -671,6 +671,32 @@ pending_unix_fds_timeout_cb (void *data) { DBusConnection *connection = data; + BusConnectionData *d = BUS_CONNECTION_DATA (connection); + unsigned long uid; + int limit; + + _dbus_assert (d != NULL); + limit = bus_context_get_pending_fd_timeout (d->connections->context); + + if (dbus_connection_get_unix_user (connection, &uid) && uid == 0) + { + bus_context_log (d->connections->context, DBUS_SYSTEM_LOG_WARNING, + "Connection \"%s\" (%s) has had Unix fds pending for " + "too long (pending_fd_timeout=%dms); tolerating it, " + "because it has uid 0", + d->name != NULL ? d->name : "(null)", + bus_connection_get_loginfo (connection), + limit); + return TRUE; + } + + bus_context_log (d->connections->context, DBUS_SYSTEM_LOG_WARNING, + "Connection \"%s\" (%s) has had Unix fds pending for too long, " + "closing it (pending_fd_timeout=%d ms)", + d->name != NULL ? d->name : "(null)", + bus_connection_get_loginfo (connection), + limit); + dbus_connection_close (connection); return TRUE; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dbus-1.10.12/configure new/dbus-1.10.16/configure --- old/dbus-1.10.12/configure 2016-10-10 11:24:11.000000000 +0200 +++ new/dbus-1.10.16/configure 2017-02-16 14:47:19.000000000 +0100 @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for dbus 1.10.12. +# Generated by GNU Autoconf 2.69 for dbus 1.10.16. # # Report bugs to <https://bugs.freedesktop.org/enter_bug.cgi?product=dbus>. # @@ -591,8 +591,8 @@ # Identity of this package. PACKAGE_NAME='dbus' PACKAGE_TARNAME='dbus' -PACKAGE_VERSION='1.10.12' -PACKAGE_STRING='dbus 1.10.12' +PACKAGE_VERSION='1.10.16' +PACKAGE_STRING='dbus 1.10.16' PACKAGE_BUGREPORT='https://bugs.freedesktop.org/enter_bug.cgi?product=dbus' PACKAGE_URL='' @@ -699,6 +699,8 @@ HAVE_LD_VERSION_SCRIPT_TRUE DBUS_X_LIBS DBUS_X_CFLAGS +DBUS_ENABLE_X11_AUTOLAUNCH_FALSE +DBUS_ENABLE_X11_AUTOLAUNCH_TRUE X_EXTRA_LIBS X_LIBS X_PRE_LIBS @@ -1551,7 +1553,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures dbus 1.10.12 to adapt to many kinds of systems. +\`configure' configures dbus 1.10.16 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1626,7 +1628,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of dbus 1.10.12:";; + short | recursive ) echo "Configuration of dbus 1.10.16:";; esac cat <<\_ACEOF @@ -1839,7 +1841,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -dbus configure 1.10.12 +dbus configure 1.10.16 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -2615,7 +2617,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by dbus $as_me 1.10.12, which was +It was created by dbus $as_me 1.10.16, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -3558,7 +3560,7 @@ # Define the identity of the package. PACKAGE='dbus' - VERSION='1.10.12' + VERSION='1.10.16' cat >>confdefs.h <<_ACEOF @@ -3858,7 +3860,7 @@ ## increment any time the source changes; set to ## 0 if you increment CURRENT -LT_REVISION=8 +LT_REVISION=10 ## increment if any interfaces have been added; set to 0 ## if any interfaces have been changed or removed. removal has @@ -3873,8 +3875,8 @@ DBUS_MAJOR_VERSION=1 DBUS_MINOR_VERSION=10 -DBUS_MICRO_VERSION=12 -DBUS_VERSION=1.10.12 +DBUS_MICRO_VERSION=16 +DBUS_VERSION=1.10.16 @@ -22742,6 +22744,14 @@ $as_echo "#define DBUS_ENABLE_X11_AUTOLAUNCH 1" >>confdefs.h fi + if test "x$enable_x11_autolaunch" = xyes; then + DBUS_ENABLE_X11_AUTOLAUNCH_TRUE= + DBUS_ENABLE_X11_AUTOLAUNCH_FALSE='#' +else + DBUS_ENABLE_X11_AUTOLAUNCH_TRUE='#' + DBUS_ENABLE_X11_AUTOLAUNCH_FALSE= +fi + @@ -22913,9 +22923,10 @@ $as_echo "$flag_ok" >&6; } - for tp_flag in $DISABLE_UNUSED_WARNINGS \ + for tp_flag in $DISABLE_UNUSED_WARNINGS \ deprecated-declarations \ missing-field-initializers \ + misleading-indentation \ unused-parameter \ pointer-sign \ type-limits \ @@ -24469,6 +24480,10 @@ as_fn_error $? "conditional \"HAVE_LIBAUDIT\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi +if test -z "${DBUS_ENABLE_X11_AUTOLAUNCH_TRUE}" && test -z "${DBUS_ENABLE_X11_AUTOLAUNCH_FALSE}"; then + as_fn_error $? "conditional \"DBUS_ENABLE_X11_AUTOLAUNCH\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi if test -z "${HAVE_LD_VERSION_SCRIPT_TRUE}" && test -z "${HAVE_LD_VERSION_SCRIPT_FALSE}"; then as_fn_error $? "conditional \"HAVE_LD_VERSION_SCRIPT\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 @@ -24910,7 +24925,7 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by dbus $as_me 1.10.12, which was +This file was extended by dbus $as_me 1.10.16, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -24976,7 +24991,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -dbus config.status 1.10.12 +dbus config.status 1.10.16 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dbus-1.10.12/configure.ac new/dbus-1.10.16/configure.ac --- old/dbus-1.10.12/configure.ac 2016-10-10 11:19:35.000000000 +0200 +++ new/dbus-1.10.16/configure.ac 2017-02-16 14:46:56.000000000 +0100 @@ -3,7 +3,7 @@ m4_define([dbus_major_version], [1]) m4_define([dbus_minor_version], [10]) -m4_define([dbus_micro_version], [12]) +m4_define([dbus_micro_version], [16]) m4_define([dbus_version], [dbus_major_version.dbus_minor_version.dbus_micro_version]) AC_INIT([dbus],[dbus_version],[https://bugs.freedesktop.org/enter_bug.cgi?product=dbus],[dbus]) @@ -38,7 +38,7 @@ ## increment any time the source changes; set to ## 0 if you increment CURRENT -LT_REVISION=8 +LT_REVISION=10 ## increment if any interfaces have been added; set to 0 ## if any interfaces have been changed or removed. removal has @@ -1336,6 +1336,8 @@ if test "x$enable_x11_autolaunch" = xyes ; then AC_DEFINE([DBUS_ENABLE_X11_AUTOLAUNCH], [1], [Define to enable X11 auto-launch]) fi +AM_CONDITIONAL([DBUS_ENABLE_X11_AUTOLAUNCH], + [test "x$enable_x11_autolaunch" = xyes]) AC_SUBST([DBUS_X_CFLAGS]) AC_SUBST([DBUS_X_LIBS]) @@ -1381,6 +1383,8 @@ dnl checking or not asserting dnl - missing field initializers being 0 is a C feature, not a bug dnl - unused-parameter is to make writing callbacks less annoying + dnl - misleading-indentation is disabled for this stable branch because + dnl gcc can't cope with inconsistent tab/space indentation dnl dnl To be fixed one day: dnl - pointer-sign is a workaround for fd.o #15522 @@ -1389,6 +1393,7 @@ [$DISABLE_UNUSED_WARNINGS \ deprecated-declarations \ missing-field-initializers \ + misleading-indentation \ unused-parameter \ pointer-sign \ type-limits \ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dbus-1.10.12/dbus/dbus-keyring.c new/dbus-1.10.16/dbus/dbus-keyring.c --- old/dbus-1.10.12/dbus/dbus-keyring.c 2015-09-30 16:48:40.000000000 +0200 +++ new/dbus-1.10.16/dbus/dbus-keyring.c 2017-02-16 14:46:23.000000000 +0100 @@ -807,7 +807,7 @@ * unless someone else manages to create it */ dbus_error_init (&tmp_error); - if (!_dbus_create_directory (&keyring->directory, + if (!_dbus_ensure_directory (&keyring->directory, &tmp_error)) { _dbus_verbose ("Creating keyring directory: %s\n", diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dbus-1.10.12/dbus/dbus-sysdeps-unix.c new/dbus-1.10.16/dbus/dbus-sysdeps-unix.c --- old/dbus-1.10.12/dbus/dbus-sysdeps-unix.c 2016-08-15 20:55:42.000000000 +0200 +++ new/dbus-1.10.16/dbus/dbus-sysdeps-unix.c 2017-02-16 14:46:23.000000000 +0100 @@ -2953,7 +2953,7 @@ * @returns #TRUE on success */ dbus_bool_t -_dbus_create_directory (const DBusString *filename, +_dbus_ensure_directory (const DBusString *filename, DBusError *error) { const char *filename_c; @@ -2970,6 +2970,35 @@ dbus_set_error (error, DBUS_ERROR_FAILED, "Failed to create directory %s: %s\n", filename_c, _dbus_strerror (errno)); + return FALSE; + } + else + return TRUE; +} + +/** + * Creates a directory. Unlike _dbus_ensure_directory(), this only succeeds + * if the directory is genuinely newly-created. + * + * @param filename directory filename + * @param error initialized error object + * @returns #TRUE on success + */ +dbus_bool_t +_dbus_create_directory (const DBusString *filename, + DBusError *error) +{ + const char *filename_c; + + _DBUS_ASSERT_ERROR_IS_CLEAR (error); + + filename_c = _dbus_string_get_const_data (filename); + + if (mkdir (filename_c, 0700) < 0) + { + dbus_set_error (error, DBUS_ERROR_FAILED, + "Failed to create directory %s: %s\n", + filename_c, _dbus_strerror (errno)); return FALSE; } else diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dbus-1.10.12/dbus/dbus-sysdeps-win.c new/dbus-1.10.16/dbus/dbus-sysdeps-win.c --- old/dbus-1.10.12/dbus/dbus-sysdeps-win.c 2015-11-23 22:53:42.000000000 +0100 +++ new/dbus-1.10.16/dbus/dbus-sysdeps-win.c 2017-02-16 14:46:23.000000000 +0100 @@ -2224,6 +2224,35 @@ } /** + * Creates a directory. Unlike _dbus_ensure_directory(), this only succeeds + * if the directory is genuinely newly-created. + * + * @param filename directory filename + * @param error initialized error object + * @returns #TRUE on success + */ +dbus_bool_t +_dbus_create_directory (const DBusString *filename, + DBusError *error) +{ + const char *filename_c; + + _DBUS_ASSERT_ERROR_IS_CLEAR (error); + + filename_c = _dbus_string_get_const_data (filename); + + if (!CreateDirectoryA (filename_c, NULL)) + { + dbus_set_error (error, DBUS_ERROR_FAILED, + "Failed to create directory %s: %s\n", + filename_c, _dbus_strerror_from_errno ()); + return FALSE; + } + else + return TRUE; +} + +/** * Creates a directory; succeeds if the directory * is created or already existed. * @@ -2232,7 +2261,7 @@ * @returns #TRUE on success */ dbus_bool_t -_dbus_create_directory (const DBusString *filename, +_dbus_ensure_directory (const DBusString *filename, DBusError *error) { const char *filename_c; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dbus-1.10.12/dbus/dbus-sysdeps.h new/dbus-1.10.16/dbus/dbus-sysdeps.h --- old/dbus-1.10.12/dbus/dbus-sysdeps.h 2016-07-11 12:15:34.000000000 +0200 +++ new/dbus-1.10.16/dbus/dbus-sysdeps.h 2017-02-16 14:46:23.000000000 +0100 @@ -421,6 +421,9 @@ dbus_bool_t _dbus_create_directory (const DBusString *filename, DBusError *error); DBUS_PRIVATE_EXPORT +dbus_bool_t _dbus_ensure_directory (const DBusString *filename, + DBusError *error); +DBUS_PRIVATE_EXPORT dbus_bool_t _dbus_delete_directory (const DBusString *filename, DBusError *error); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dbus-1.10.12/doc/Makefile.in new/dbus-1.10.16/doc/Makefile.in --- old/dbus-1.10.12/doc/Makefile.in 2016-10-10 11:24:09.000000000 +0200 +++ new/dbus-1.10.16/doc/Makefile.in 2017-02-16 14:47:18.000000000 +0100 @@ -723,8 +723,8 @@ maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." -@DBUS_DOXYGEN_DOCS_ENABLED_FALSE@uninstall-local: @DBUS_DOXYGEN_DOCS_ENABLED_FALSE@install-data-local: +@DBUS_DOXYGEN_DOCS_ENABLED_FALSE@uninstall-local: clean: clean-am clean-am: clean-generic clean-libtool clean-local mostlyclean-am diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dbus-1.10.12/test/Makefile.am new/dbus-1.10.16/test/Makefile.am --- old/dbus-1.10.12/test/Makefile.am 2016-08-15 20:55:42.000000000 +0200 +++ new/dbus-1.10.16/test/Makefile.am 2017-02-01 12:09:18.000000000 +0100 @@ -172,8 +172,13 @@ if DBUS_ENABLE_EMBEDDED_TESTS dist_installable_test_scripts += \ test-dbus-launch-eval.sh \ + $(NULL) + +if DBUS_ENABLE_X11_AUTOLAUNCH +dist_installable_test_scripts += \ test-dbus-launch-x11.sh \ $(NULL) +endif DBUS_ENABLE_X11_AUTOLAUNCH endif DBUS_ENABLE_EMBEDDED_TESTS endif DBUS_UNIX diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dbus-1.10.12/test/Makefile.in new/dbus-1.10.16/test/Makefile.in --- old/dbus-1.10.12/test/Makefile.in 2016-10-10 11:24:09.000000000 +0200 +++ new/dbus-1.10.16/test/Makefile.in 2017-02-16 14:47:18.000000000 +0100 @@ -96,7 +96,7 @@ @DBUS_WITH_GLIB_TRUE@ test-utils-glib.h \ @DBUS_WITH_GLIB_TRUE@ $(NULL) -TESTS = $(am__append_3) $(am__EXEEXT_12) $(am__EXEEXT_13) +TESTS = $(am__append_3) $(am__EXEEXT_13) $(am__EXEEXT_14) @DBUS_ENABLE_EMBEDDED_TESTS_TRUE@@DBUS_UNIX_TRUE@am__append_2 = test-bus-launch-helper.sh \ @DBUS_ENABLE_EMBEDDED_TESTS_TRUE@@DBUS_UNIX_TRUE@ test-bus-system.sh @DBUS_ENABLE_EMBEDDED_TESTS_TRUE@am__append_3 = $(wrap_bus_tests) $(wrap_dbus_tests) @@ -131,20 +131,23 @@ # Testing dbus-launch relies on special code in that binary. @DBUS_ENABLE_EMBEDDED_TESTS_TRUE@@DBUS_UNIX_TRUE@@DBUS_WITH_GLIB_TRUE@am__append_9 = \ @DBUS_ENABLE_EMBEDDED_TESTS_TRUE@@DBUS_UNIX_TRUE@@DBUS_WITH_GLIB_TRUE@ test-dbus-launch-eval.sh \ -@DBUS_ENABLE_EMBEDDED_TESTS_TRUE@@DBUS_UNIX_TRUE@@DBUS_WITH_GLIB_TRUE@ test-dbus-launch-x11.sh \ @DBUS_ENABLE_EMBEDDED_TESTS_TRUE@@DBUS_UNIX_TRUE@@DBUS_WITH_GLIB_TRUE@ $(NULL) -@DBUS_WITH_GLIB_TRUE@am__append_10 = \ +@DBUS_ENABLE_EMBEDDED_TESTS_TRUE@@DBUS_ENABLE_X11_AUTOLAUNCH_TRUE@@DBUS_UNIX_TRUE@@DBUS_WITH_GLIB_TRUE@am__append_10 = \ +@DBUS_ENABLE_EMBEDDED_TESTS_TRUE@@DBUS_ENABLE_X11_AUTOLAUNCH_TRUE@@DBUS_UNIX_TRUE@@DBUS_WITH_GLIB_TRUE@ test-dbus-launch-x11.sh \ +@DBUS_ENABLE_EMBEDDED_TESTS_TRUE@@DBUS_ENABLE_X11_AUTOLAUNCH_TRUE@@DBUS_UNIX_TRUE@@DBUS_WITH_GLIB_TRUE@ $(NULL) + +@DBUS_WITH_GLIB_TRUE@am__append_11 = \ @DBUS_WITH_GLIB_TRUE@ manual-authz \ @DBUS_WITH_GLIB_TRUE@ $(NULL) -@DBUS_ENABLE_MODULAR_TESTS_TRUE@am__append_11 = $(installable_tests) @DBUS_ENABLE_MODULAR_TESTS_TRUE@am__append_12 = $(installable_tests) -@DBUS_ENABLE_INSTALLED_TESTS_TRUE@@DBUS_ENABLE_MODULAR_TESTS_TRUE@am__append_13 = $(installable_tests) $(installable_manual_tests) -@DBUS_ENABLE_INSTALLED_TESTS_TRUE@@DBUS_ENABLE_MODULAR_TESTS_TRUE@am__append_14 = $(dist_installable_test_scripts) -@DBUS_ENABLE_INSTALLED_TESTS_TRUE@@DBUS_ENABLE_MODULAR_TESTS_TRUE@am__append_15 = $(installable_test_meta) \ +@DBUS_ENABLE_MODULAR_TESTS_TRUE@am__append_13 = $(installable_tests) +@DBUS_ENABLE_INSTALLED_TESTS_TRUE@@DBUS_ENABLE_MODULAR_TESTS_TRUE@am__append_14 = $(installable_tests) $(installable_manual_tests) +@DBUS_ENABLE_INSTALLED_TESTS_TRUE@@DBUS_ENABLE_MODULAR_TESTS_TRUE@am__append_15 = $(dist_installable_test_scripts) +@DBUS_ENABLE_INSTALLED_TESTS_TRUE@@DBUS_ENABLE_MODULAR_TESTS_TRUE@am__append_16 = $(installable_test_meta) \ @DBUS_ENABLE_INSTALLED_TESTS_TRUE@@DBUS_ENABLE_MODULAR_TESTS_TRUE@ $(installable_test_meta_with_config) -@DBUS_ENABLE_INSTALLED_TESTS_FALSE@@DBUS_ENABLE_MODULAR_TESTS_TRUE@am__append_16 = $(installable_tests) $(installable_manual_tests) +@DBUS_ENABLE_INSTALLED_TESTS_FALSE@@DBUS_ENABLE_MODULAR_TESTS_TRUE@am__append_17 = $(installable_tests) $(installable_manual_tests) subdir = test ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/as-ac-expand.m4 \ @@ -586,10 +589,10 @@ RECHECK_LOGS = $(TEST_LOGS) @DBUS_UNIX_TRUE@@DBUS_WITH_GLIB_TRUE@am__EXEEXT_10 = \ @DBUS_UNIX_TRUE@@DBUS_WITH_GLIB_TRUE@ test-dbus-daemon-fork.sh -@DBUS_ENABLE_EMBEDDED_TESTS_TRUE@@DBUS_UNIX_TRUE@@DBUS_WITH_GLIB_TRUE@am__EXEEXT_11 = test-dbus-launch-eval.sh \ -@DBUS_ENABLE_EMBEDDED_TESTS_TRUE@@DBUS_UNIX_TRUE@@DBUS_WITH_GLIB_TRUE@ test-dbus-launch-x11.sh -am__EXEEXT_12 = $(am__EXEEXT_10) $(am__EXEEXT_11) -@DBUS_ENABLE_MODULAR_TESTS_TRUE@am__EXEEXT_13 = $(am__EXEEXT_4) +@DBUS_ENABLE_EMBEDDED_TESTS_TRUE@@DBUS_UNIX_TRUE@@DBUS_WITH_GLIB_TRUE@am__EXEEXT_11 = test-dbus-launch-eval.sh +@DBUS_ENABLE_EMBEDDED_TESTS_TRUE@@DBUS_ENABLE_X11_AUTOLAUNCH_TRUE@@DBUS_UNIX_TRUE@@DBUS_WITH_GLIB_TRUE@am__EXEEXT_12 = test-dbus-launch-x11.sh +am__EXEEXT_13 = $(am__EXEEXT_10) $(am__EXEEXT_11) $(am__EXEEXT_12) +@DBUS_ENABLE_MODULAR_TESTS_TRUE@am__EXEEXT_14 = $(am__EXEEXT_4) TEST_SUITE_LOG = test-suite.log LOG_COMPILE = $(LOG_COMPILER) $(AM_LOG_FLAGS) $(LOG_FLAGS) am__set_b = \ @@ -916,14 +919,14 @@ manual_tcp_LDADD = $(top_builddir)/dbus/libdbus-internal.la testexecdir = $(libexecdir)/installed-tests/dbus testmetadir = $(datadir)/installed-tests/dbus -dist_testexec_SCRIPTS = $(am__append_14) -testmeta_DATA = $(am__append_15) +dist_testexec_SCRIPTS = $(am__append_15) +testmeta_DATA = $(am__append_16) installable_tests = test-shell test-printf $(NULL) $(am__append_6) \ $(am__append_7) installable_manual_tests = manual-dir-iter manual-tcp $(NULL) \ - $(am__append_5) $(am__append_10) + $(am__append_5) $(am__append_11) dist_installable_test_scripts = $(NULL) $(am__append_8) \ - $(am__append_9) + $(am__append_9) $(am__append_10) installable_test_meta = \ $(dist_installable_test_scripts:=.test) \ $(installable_tests:=.test) \ @@ -934,7 +937,7 @@ $(installable_tests:=_with_config.test) \ $(NULL) -installcheck_tests = $(dist_installable_test_scripts) $(am__append_12) +installcheck_tests = $(dist_installable_test_scripts) $(am__append_13) installcheck_environment = \ export XDG_RUNTIME_DIR=@abs_top_builddir@/test/XDG_RUNTIME_DIR; \ export DBUS_TEST_DAEMON=$(DESTDIR)$(DBUS_DAEMONDIR)/dbus-daemon$(EXEEXT); \