Commit feb31a33 authored by Simon McVittie's avatar Simon McVittie

Merge branch 'dbus-1.4' and update NEWS for master

Conflicts:
	NEWS
parents 377051ee 006dbd48
SUBDIRS=dbus bus doc tools test
DIST_SUBDIRS=dbus bus doc tools test
SUBDIRS=dbus bus tools test doc
pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA = dbus-1.pc
......
D-Bus 1.5.6 (UNRELEASED)
==
Fixes:
Potentially incompatible (Bustle and similar debugging tools will need
changes to work as intended):
• Do not allow match rules to "eavesdrop" (receive messages intended for a
different recipient) by mistake: eavesdroppers must now opt-in to this
behaviour by putting "eavesdrop='true'" in the match rule, which will
not have any practical effect on buses where eavesdropping is not allowed
(fd.o #37890, Cosimo Alfarano)
Other changes:
• Use DBUS_ERROR_OBJECT_PATH_IN_USE if dbus_connection_try_register_object_path
or dbus_connection_try_register_fallback fails, not ...ADDRESS_IN_USE,
and simplify object-path registration (fd.o #38874, Jiří Klimeš)
• Consistently use atomic operations on the refcounts of DBusPendingCall
and DBusServer, as was done for DBusConnection in 1.4.12 (fd.o #38005,
Simon McVittie)
• Fix a file descriptor leak when connecting to a TCP socket (fd.o #37258,
Simon McVittie)
• Make "make check" in a clean tree work, by not running tests until
test data has been set up (fd.o #34405, Simon McVittie)
• The dbus-daemon no longer busy-loops if it has a very large number of file
descriptors (fd.o #23194, Simon McVittie)
• Some cmake fixes (Ralf Habacker)
• Remove dead code, mainly from DBusString (fd.o #38570, Simon McVittie)
• Stop storing two extra byte order indicators in each D-Bus message
(fd.o #38287, Simon McVittie)
• Add an optional Stats interface which can be used to get statistics from
a running dbus-daemon if enabled at configure time with --enable-stats
(fd.o #34040, Simon McVittie)
• Documentation (fd.o #36156, Simon McVittie):
· let xsltproc be overridden as usual: ./configure XSLTPROC=myxsltproc
· install more documentation automatically, including man2html output
· put dbus.devhelp in the right place (it must go in ${htmldir})
• Unix-specific (fd.o #33465, Simon McVittie):
· opt-in to fd passing on Solaris
• Windows-specific (Ralf Habacker):
· fix use of a mutex for autolaunch server detection
· don't crash on malloc failure in _dbus_printf_string_upper_bound
D-Bus 1.5.4 (2011-06-10)
==
......@@ -14,7 +60,7 @@ Security (local denial of service):
• Byte-swap foreign-endian messages correctly, preventing a long-standing
local DoS if foreign-endian messages are relayed through the dbus-daemon
(backporters: this is git commit c3223ba6c401ba81df1305851312a47c485e6cd7)
(fd.o #38120, Debian #629938, no CVE number yet; Simon McVittie)
(CVE-2011-2200, fd.o #38120, Debian #629938; Simon McVittie)
New things:
......
......@@ -148,25 +148,27 @@ bus_test_launch_helper_CPPFLAGS= -DDBUS_STATIC_BUILD \
-DACTIVATION_LAUNCHER_TEST \
-DACTIVATION_LAUNCHER_DO_OOM
## we use noinst_PROGRAMS not check_PROGRAMS so that we build
## even when not doing "make check"
noinst_PROGRAMS = $(TESTS)
noinst_PROGRAMS =
dbus_daemon_exec_PROGRAMS = dbus-daemon
if DBUS_UNIX
libexec_PROGRAMS = dbus-daemon-launch-helper
endif DBUS_UNIX
## note that TESTS has special meaning (stuff to use in make check)
## so if adding tests not to be run in make check, don't add them to
## TESTS
TESTS =
## Note that TESTS has special meaning (stuff to use in make check).
## We don't actually want to run any of these tests until test/ has been
## compiled, so we don't put them in TESTS here; we run them in test/
## instead.
if DBUS_BUILD_TESTS
TESTS_ENVIRONMENT=DBUS_TEST_DATA=$(top_builddir)/test/data DBUS_TEST_HOMEDIR=$(top_builddir)/dbus DBUS_FATAL_WARNINGS=1 DBUS_BLOCK_ON_ABORT=1
TESTS += bus-test bus-test-system
## we use noinst_PROGRAMS not check_PROGRAMS so that we build
## even when not doing "make check"
# run as a test by test/Makefile.am
noinst_PROGRAMS += bus-test bus-test-system
if DBUS_UNIX
TESTS += bus-test-launch-helper
# run as a test by test/Makefile.am
noinst_PROGRAMS += bus-test-launch-helper
# this is used by the tests but is not,itself, a test
noinst_PROGRAMS += dbus-daemon-launch-helper-test
endif DBUS_UNIX
......
......@@ -1256,6 +1256,9 @@ case $host_os in
solaris*)
# Solaris' C library apparently needs these runes to be threadsafe...
CFLAGS="$CFLAGS -D_POSIX_PTHREAD_SEMANTICS -D_REENTRANT"
# ... and this opt-in to get file descriptor passing support
CFLAGS="$CFLAGS -D_XOPEN_SOURCE=500"
;;
esac
### Doxygen Documentation
......@@ -1287,9 +1290,8 @@ fi
AM_CONDITIONAL(DBUS_DOXYGEN_DOCS_ENABLED, test x$enable_doxygen_docs = xyes)
AC_MSG_RESULT($enable_doxygen_docs)
XSLTPROC=false
AC_CHECK_PROGS([XSLTPROC], [xsltproc])
AM_CONDITIONAL(DBUS_HAVE_XSLTPROC, test "$XSLTPROC" != false)
AM_CONDITIONAL([DBUS_HAVE_XSLTPROC], [test "x$XSLTPROC" != "x"])
### XML Documentation
......
......@@ -269,20 +269,13 @@ libdbus_internal_la_CPPFLAGS = -DDBUS_STATIC_BUILD
libdbus_internal_la_LIBADD=$(DBUS_CLIENT_LIBS)
libdbus_internal_la_LDFLAGS=$(export_symbols_internal) @R_DYNAMIC_LDFLAG@
## note that TESTS has special meaning (stuff to use in make check)
## so if adding tests not to be run in make check, don't add them to
## TESTS
noinst_PROGRAMS =
if DBUS_BUILD_TESTS
TESTS_ENVIRONMENT=DBUS_TEST_DATA=$(top_builddir)/test/data DBUS_TEST_HOMEDIR=$(top_builddir)/dbus
TESTS=dbus-test
else
TESTS=
# We can't actually run this til we've reached test/
noinst_PROGRAMS += dbus-test
endif
## we use noinst_PROGRAMS not check_PROGRAMS so that we build
## even when not doing "make check"
noinst_PROGRAMS=$(TESTS)
dbus_test_SOURCES= \
dbus-test-main.c
......
......@@ -619,7 +619,7 @@ process_test_subdir (const DBusString *test_base_dir,
{
if (_dbus_string_ends_with_c_str (&filename, ".message"))
{
_dbus_warn ("Could not load %s, message builder language no longer supported\n",
printf ("SKIP: Could not load %s, message builder language no longer supported\n",
_dbus_string_get_const_data (&filename));
}
......
......@@ -135,7 +135,7 @@ dbus_internal_do_not_use_run_tests (const char *test_data_dir, const char *speci
check_memleaks ();
#else
_dbus_warn ("recursive marshal tests disabled\n");
printf ("SKIP: recursive marshal tests disabled\n");
#endif
run_test ("byteswap", specific_test, _dbus_marshal_byteswap_test);
......
......@@ -28,16 +28,18 @@ DTDS = \
busconfig.dtd \
introspect.dtd
STATIC_DOCS = \
dist_doc_DATA = \
diagram.png \
diagram.svg \
system-activation.txt
STATIC_DOCS = \
dbus-faq.xml \
dbus-specification.xml \
dbus-test-plan.xml \
dbus-tutorial.xml \
dcop-howto.txt \
introspect.xsl \
system-activation.txt \
$(DTDS)
EXTRA_DIST = \
......@@ -46,17 +48,18 @@ EXTRA_DIST = \
$(STATIC_DOCS) \
$(MAN_IN_FILES)
HTML_FILES= \
html_DATA =
# we distribute these in the tarball so users don't necessarily need xmlto
dist_html_DATA = $(XMLTO_OUTPUT)
XMLTO_OUTPUT= \
dbus-faq.html \
dbus-specification.html \
dbus-test-plan.html \
dbus-tutorial.html
if DBUS_XML_DOCS_ENABLED
all-local:: $(HTML_FILES)
EXTRA_DIST += $(HTML_FILES)
dbus-specification.html: dbus-specification.xml
$(XMLTO) html-nochunks $<
......@@ -68,7 +71,6 @@ dbus-tutorial.html: dbus-tutorial.xml
dbus-faq.html: dbus-faq.xml
$(XMLTO) html-nochunks $<
endif
if DBUS_DOXYGEN_DOCS_ENABLED
......@@ -79,7 +81,7 @@ doxygen.stamp: $(wildcard $(top_srcdir)/dbus/*.[ch])
@touch $@
if DBUS_HAVE_XSLTPROC
api_DATA = dbus.devhelp
html_DATA += dbus.devhelp
dbus.devhelp: $(srcdir)/doxygen_to_devhelp.xsl doxygen.stamp
$(XSLTPROC) -o $@ $< api/xml/index.xml
......@@ -95,12 +97,16 @@ uninstall-local::
rm -f $(DESTDIR)$(apidir)/*.html
rm -f $(DESTDIR)$(apidir)/*.png
rm -f $(DESTDIR)$(apidir)/*.css
rm -f $(DESTDIR)$(htmldir)/*.html
rm -f $(DESTDIR)$(docdir)/*.txt
rm -f $(DESTDIR)$(docdir)/*.png
rm -f $(DESTDIR)$(docdir)/*.svg
rmdir --ignore-fail-on-non-empty $(DESTDIR)$(apidir) || \
rmdir $(DESTDIR)$(apidir)
endif
if DBUS_HAVE_MAN2HTML
all-local:: $(MAN_HTML_FILES)
html_DATA += $(MAN_HTML_FILES)
%.1.html: %.1
$(AM_V_GEN)( $(MAN2HTML) $< > $@.tmp && mv $@.tmp $@ )
......@@ -115,11 +121,12 @@ BONUS_FILES = \
$(top_srcdir)/COPYING \
$(top_srcdir)/ChangeLog
dbus-docs: $(STATIC_DOCS) $(HTML_FILES) $(MAN_HTML_FILES) $(BONUS_FILES) doxygen.stamp
dbus-docs: $(STATIC_DOCS) $(dist_doc_DATA) $(dist_html_DATA) $(MAN_HTML_FILES) $(BONUS_FILES) doxygen.stamp
$(AM_V_at)rm -rf $@
$(AM_V_GEN)$(MKDIR_P) $@/api
$(AM_V_at)cp $(STATIC_DOCS) $@
$(AM_V_at)cp $(HTML_FILES) $@
$(AM_V_at)cp $(dist_doc_DATA) $@
$(AM_V_at)cp $(dist_html_DATA) $@
$(AM_V_at)cp $(MAN_HTML_FILES) $@
$(AM_V_at)cp $(BONUS_FILES) $@
$(AM_V_at)cp -r api/html $@/api
......@@ -147,10 +154,11 @@ maintainer-upload-docs:
endif
clean-local:
rm -f $(html_DATA)
rm -rf api
rm -rf dbus-docs
rm -f *.1.html
rm -f doxygen.stamp
maintainer-clean-local:
rm -f $(HTML_FILES)
rm -f $(XMLTO_OUTPUT)
......@@ -13,15 +13,42 @@ noinst_LTLIBRARIES = libdbus-testutils.la
if DBUS_BUILD_TESTS
## break-loader removed for now
## most of these binaries are used in tests but are not themselves tests
TEST_BINARIES=test-service test-names test-shell-service shell-test spawn-test test-segfault test-exit test-sleep-forever
TEST_BINARIES = \
shell-test \
spawn-test \
test-exit \
test-names \
test-segfault \
test-service \
test-shell-service \
test-sleep-forever \
$(NULL)
## these are the things to run in make check (i.e. they are actual tests)
## (binaries in here must also be in TEST_BINARIES)
TESTS=shell-test
else
TESTS = \
shell-test \
$(NULL)
## These are conceptually part of directories that come earlier in SUBDIRS
## order, but we don't want to run them til we arrive in this directory,
## since they depend on stuff from this directory
TESTS += \
../bus/bus-test$(EXEEXT) \
../bus/bus-test-system$(EXEEXT) \
../dbus/dbus-test$(EXEEXT) \
$(NULL)
if DBUS_UNIX
TESTS += ../bus/bus-test-launch-helper$(EXEEXT)
endif
else !DBUS_BUILD_TESTS
TEST_BINARIES=
TESTS=
endif
endif !DBUS_BUILD_TESTS
noinst_PROGRAMS= $(TEST_BINARIES)
......@@ -91,8 +118,12 @@ installcheck_environment = \
DBUS_TEST_SYSCONFDIR=$(DESTDIR)$(sysconfdir)
TESTS_ENVIRONMENT = \
DBUS_BLOCK_ON_ABORT=1 \
DBUS_FATAL_WARNINGS=1 \
DBUS_TEST_DAEMON=@abs_top_builddir@/bus/dbus-daemon$(EXEEXT) \
DBUS_TEST_DATA=@abs_top_builddir@/test/data
DBUS_TEST_DATA=@abs_top_builddir@/test/data \
DBUS_TEST_HOMEDIR=@abs_top_builddir@/dbus \
$(NULL)
test_corrupt_SOURCES = corrupt.c
test_corrupt_CPPFLAGS = $(GLIB_CFLAGS) $(DBUS_GLIB_CFLAGS)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment