Commit graph

184 commits

Author SHA1 Message Date
Simon McVittie
194f6f7589 Prepare 1.8.6 in advance 2014-06-30 14:18:03 +01:00
Simon McVittie
3488de849d reset version 2014-06-10 18:43:40 +01:00
Simon McVittie
c3650785fe Prepare embargoed security release 2014-06-05 14:54:36 +01:00
Simon McVittie
416898324d development version 2014-04-30 20:58:39 +01:00
Simon McVittie
789800af43 1.8.2 2014-04-30 20:14:51 +01:00
Cristian Onet
3dbd8edc35 Fix of 'dbus-daemon can only handle 64 simultaneous connections on Windows'.
[Slightly modified by -rh]

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=71297
Reviewed-by: Ralf Habacker <ralf.habacker@freenet.de>
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
2014-01-27 19:32:41 +01:00
Simon McVittie
469ef6e082 1.8.1 2014-01-20 16:11:58 +00:00
Simon McVittie
6528b0973b D-Bus 1.8.0 2014-01-20 14:25:48 +00:00
Simon McVittie
d511fd96e6 start 1.7.11 2014-01-06 20:17:05 +00:00
Simon McVittie
127ef144f3 1.7.10 2014-01-06 18:40:26 +00:00
Chengwei Yang
ee4f946d05 Do not install systemd unit files if build without systemd
If dbus buid without systemd (--disable-systemd or no systemd libs
available when building), we expect not to install dbus systemd unit
files because they're only for systemd environment.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=71818
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
2014-01-06 16:42:45 +00:00
Chengwei Yang
00993d3702 Remove duplicate checking for pkg-config
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=71985
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
2013-11-27 15:05:01 +00:00
Simon McVittie
c92dffe6ab start on 1.7.10 2013-11-01 20:17:52 +00:00
Simon McVittie
fc7f0fa642 1.7.8 2013-11-01 19:17:02 +00:00
Chengwei Yang
5be1e77829 Handle activated child stdout/stderr correctly in systemd environment
In systemd environment, dbus-daemon will run as no-fork mode since this
is the recommended practice of systemd.

In that scenario, child activated by dbus-daemon will inherit
dbus-daemon standard streams, includes stdin/stdout/stderr. stdin will
be redirected to /dev/null by systemd and stdout/stderr will be catched
by systemd log subsystem. Since the child inherit stdout/stderr from
dbus-daemon, so from systemd journal log, the child log output will be
identified with dbus-daemon identifier. So it's a little confusing.

This patch redirects the child stdout/stderr to systemd journal stream,
and with its owned service name as identifier. However, thing not fixed
perfectly due to the socket ucred of the child is owned by dbus-daemon,
so the pid isn't the real pid of the chile.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=68559
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
2013-11-01 12:41:02 +00:00
Ralf Habacker
9f0366019d Use TEST_LISTEN in incoming-listen.conf.in instead of unix only hardcoded address
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=68506
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
2013-10-10 15:38:50 +02:00
Simon McVittie
bb024108b2 start 1.7.8 2013-10-09 18:47:14 +01:00
Simon McVittie
9e4f0bf0e1 D-Bus 1.7.6, spec 0.22 2013-10-09 11:34:14 +01:00
Chengwei Yang
47df159cc5 Unify the way to find dbus-daemon test binary
There are two ways to find the dbus-daemon for testing. The first one is
defined as string at compile stage and the second one is export it from
test environment.

The first way has limitation that after defined, it's static string, so
it's impossible to run installable check. So let's unify to the second
way.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=37849
[added missing "}" -smcv]
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
2013-10-08 16:08:57 +01:00
Simon McVittie
57dc720b9f Add support for configuring --with-valgrind=auto
This is the configuration I'd like to use for the "debug build" of dbus
on Debian - if we use --with-valgrind=yes, we have to hard-code knowledge
of which architectures do and don't have Valgrind in two places instead
of just one.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=56925
Reviewed-by: Chengwei Yang <chengwei.yang@intel.com>
2013-10-08 11:06:19 +01:00
Simon McVittie
b47d50623b Remove support for platforms with no 64-bit integer type
This has been a soft requirement since 1.5.0; anyone on such platforms
would have had to configure --without-64-bit, provoking a warning that
instructed them to report a D-Bus bug with details of their platform.
Nobody has done so, so if anyone still lacks a 64-bit integer type,
they're on their own.

(Also, I tried the build with --without-64-bit and it's full of
fatal compiler warnings, so it's not clear that we're actually
losing anything by removing this "feature".)

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=65429
Reviewed-by: Chengwei Yang <chengwei.yang@intel.com>
2013-09-16 15:31:02 +01:00
Simon McVittie
3b9c2817e9 dbus-sysdeps-win: don't include wspiapi.h
This block provoked a warning on mingw-w64 because we were redefining
_inline. According to Ralf's research, it was introduced in 452ff68a:
Windows 2000 doesn't have getaddrinfo and related functions in
ws2tcpip.h, but does have a shim implementation in wspiapi.h.

At the time of 452ff68a, mingw32 didn't have wspiapi.h, so it's unclear
why there was a __GNUC__ code path here. The "#define _inline" on that
code path looks likely to be some sort of workaround for a faulty version
of wspiapi.h? Current mingw-w64 does have wspiapi.h, so we enter the
__GNUC__ code path and get the redefinition.

dbus no longer supports Windows 2000, so we no longer need wspiapi.h
at all, and can rely on XP or later. (Ralf's policy is to only support
versions of Windows that are still supported by Microsoft, and Windows 2000
reached the end of its life-cycle in 2010.)

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=68852
Reviewed-by: Ralf Habacker
2013-09-16 12:35:35 +01:00
Chengwei Yang
ba58504ad2 Make userdb cache as a built-in feature
The disable-userdb-cache code path is never been fine tested and you
could expect an extramely slow bus if you did that. And there are known
bugs on fd.o if build without userdb cache. So to prevent user from
using bus without userdb cache, it changed to a built-in feature, no
longer optional now.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=66947
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=15589
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
2013-09-13 14:59:20 +01:00
Chengwei Yang
ee0f28f6a5 Use test binaries in build dir to do test
When do autolaunch testing, libdbus will try to start dbus-launch in
installed direcotry, if fail then fall back to dbus-launch in $PATH.
dbus-launch does a relative better thing to start dbus-daemon in build
directory, however, in most of case, the build $prefix is different from
the real prefix where dbus-daemon installed. So dbus-daemon will fail to
start due to can't find its config file. And then dbus-launch will fall
back to finally the installed dbus-daemon.

This patch fix this behavior and will start dbus-launch and dbus-daemon
in build directory in test environment.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=37849
2013-09-13 14:29:45 +01:00
Simon McVittie
30e7a81302 Tests: allow dbus-glib to be replaced with use of libdbus-internal
We only use dbus-glib for its main loop; within dbus, DBusLoop is
available as an alternative, although it isn't thread-safe and
isn't public API.

For tests that otherwise only use libdbus public API, it's desirable to
be able to avoid DBusLoop, so we can run them against an installed
libdbus as an integration test. However, if we don't have dbus-glib,
we're going to have to use an in-tree main loop, which might as well
be DBusLoop.

The major disadvantage of using dbus-glib is that it isn't safe to
link both dbus-1 and dbus-internal at the same time. This is awkward
for a future test case that wants to use _dbus_getsid() in dbus-daemon.c,
but only on Windows (fd.o #54445). If we use the same API wrapper around
both dbus-glib and DBusLoop, we can compile that test against dbus-glib
or against DBusLoop, depending on the platform.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=68852
Reviewed-by: Ralf Habacker <ralf.habacker@freenet.de>
2013-09-03 12:00:51 +01:00
Chengwei Yang
014ea55625 Ignore more unused staff if build with tests but without asserts
https://bugs.freedesktop.org/show_bug.cgi?id=66069
Signed-off-by: Chengwei Yang <chengwei.yang@intel.com>
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
2013-08-22 20:03:06 +01:00
Chengwei Yang
134701b758 tests to embedded tests: replaced in automake files
Signed-off-by: Chengwei Yang <chengwei.yang@intel.com>
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=66291
2013-06-28 12:17:15 +01:00
Chengwei Yang
1f9e5d70c7 dir-watch: remove dnotify backend
dnotify as a dir watch backend is broken since Jan 2010 (almost 3.5
years). According to fd.o: #33001, it's no harm to remove dnotify from
this project.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=33001
Signed-off-by: Chengwei Yang <chengwei.yang@intel.com>
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
2013-06-28 11:53:29 +01:00
Chengwei Yang
e632ceab0a Explicitly define macros to get less confusing conditions
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=65990
Signed-off-by: Chengwei Yang <chengwei.yang@intel.com>
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
2013-06-25 12:26:59 +01:00
Simon McVittie
1a69f641fb Start on 1.7.5, add release name for 1.7.4 2013-06-13 13:47:19 +01:00
Simon McVittie
46d73712ab Prepare 1.7.4 for tomorrow 2013-06-12 19:49:44 +01:00
Chengwei Yang
049a132b86 Fix a typo: enable_x11 -> have_x11
From git history, enable_x11 was used to track have_x11, but it's
useless now.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=65443
Signed-off-by: Chengwei Yang <chengwei.yang@intel.com>
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
2013-06-06 13:04:38 +01:00
Chengwei Yang
46602768c5 XML: hard depends on expat and delete libxml
[The libxml code path has been broken for at least 2.5 years, and Expat
is tiny, so there seems no point in supporting both. -smcv]

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=20253
Signed-off-by: Chengwei Yang <chengwei.yang@intel.com>
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
2013-06-06 13:02:24 +01:00
Simon McVittie
59acbc4854 Put dbus-run-session through doclifter and adjust to match other man pages 2013-06-05 17:58:51 +01:00
Simon McVittie
657a589a98 start 1.7.4 development 2013-05-02 14:50:34 +01:00
Simon McVittie
7ff0cd0640 prepare version 1.7.2 and spec 0.21 2013-04-25 13:12:15 +01:00
Simon McVittie
2872422718 Rename default_message_unix_fds to DEFAULT_MESSAGE_UNIX_FDS
As Ralf pointed out, we usually use upper-case when substituting
variables (apart from "somethingdir", which Autoconf conventionally
makes lower-case for some reason).

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=63682
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Ralf Habacker <ralf.habacker@freenet.de>
2013-04-18 19:21:51 +01:00
Matt Fischer
977293549d Set default maximum number of Unix fds according to OS
QNX has an arbitrary limit to the number of file descriptors
which may be passed in a message, which is smaller than the
current default.  This patch therefore changes the default from
a hardcoded constant to a macro, which is determined at configure
time by looking at the host operating system.

[This reduces the limit from 4096 (session)/1024 (system) to 128 fds
per message on QNX, and 1024 fds per message on other operating systems.
I think the reduced session bus limit on other OSs is a reasonable change
too, given that the default hard/soft ulimits in Linux are only 4096/1024
fds per process. -smcv]

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=61176
Reviewed-by: Simon McVittie <simon.mcvittie.collabora.co.uk>
2013-04-11 13:34:55 +01:00
Simon McVittie
3b1ad7f7c5 Merge branch 'dbus-1.6'
Conflicts:
	NEWS
	configure.ac
2013-04-05 13:00:22 +01:00
Simon McVittie
540e5692e0 Allow use of GLib 2.32 functionality, which we do conditionally 2013-04-05 12:54:57 +01:00
Simon McVittie
c052230fff Don't warn for functions deprecated since GLib 2.26
Also warn if we inadvertently use a function introduced since then.

Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=59971
Reviewed-by: Colin Walters <walters@verbum.org>
2013-04-05 12:48:23 +01:00
Ralf Habacker
8159956ed4 Add function _dbus_get_peer_pid_from_tcp_handle() which returns pid and sid from tcp connection peer.
This function is called by _dbus_read_credentials_socket() to fetch client credentials.

Because Wine is used to check cross compiled dbus for windows, in calls to GetExtendedTcpTable()
we use table class TCP_TABLE_OWNER_PID_ALL instead of TCP_TABLE_OWNER_PID_CONNECTIONS.
This class is the only one which is available since wine 1.5.3.

https://bugs.freedesktop.org/show_bug.cgi?id=61787
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
2013-04-05 11:17:26 +02:00
Simon McVittie
89c1ecdd7c Merge branch 'dbus-1.6' 2013-04-03 12:22:24 +01:00
Dagobert Michelsen
6485fafbca If alloca.h is available it is required (e.g. on Solaris 10)
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=63071
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
2013-04-03 12:17:44 +01:00
Simon McVittie
4d41d120d8 bump version to 1.7.1 2013-02-22 21:01:07 +00:00
Simon McVittie
60c1b41fbf Prepare release 1.7.0 (and specification 0.20) 2013-02-22 14:47:07 +00:00
Simon McVittie
0e90efd5b2 Don't warn for functions deprecated since GLib 2.26
Also warn if we inadvertently use a function introduced since then.

Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=59971
Reviewed-by: Colin Walters <walters@verbum.org>
2013-02-22 13:08:11 +00:00
Simon McVittie
3f2286f13a Turn all man pages' source into configure-generated files
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=59805
Reviewed-by: Ralf Habacker <ralf.habacker@freenet.de>
[dropped whitespace changes per Ralf's review -smcv]
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
2013-02-14 13:27:54 +00:00
Simon McVittie
af96b13d57 Use Docbook XML as the source for all man pages
This means we no longer need man2html, which is nice.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=59805
Reviewed-by: Ralf Habacker <ralf.habacker@freenet.de>
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
2013-02-14 13:27:48 +00:00
Simon McVittie
277675a40e configure: redo pthread check to check for more things
In principle, anything in the pthread namespace might either be in the
platform-specific thread library (libpthread or libpthreads or libthreads
or ...), or in libc.

In particular, it seems that pthread_mutexattr_init and
pthread_mutexattr_settype are in libpthread, not libc, on Linux. We
previously didn't (intentionally) look for them in libpthread, only
in libc; so this check deserved to fail.

However, a faulty configure check for pthread_cond_timedwait
worked around this on Linux by checking for -lpthread and adding it
to THREAD_LIBS if pthread_cond_timedwait *was* found in libc (even
though that behaviour makes no sense).

The practical impact was that D-Bus would fail to compile on platforms
where pthread_cond_timedwait is in a special threading library that
is not linked by default, and at least one of
(pthread_mutexattr_init, pthread_mutexattr_settype) is also in a
special threading library. This is the case on at least OpenBSD
(fd.o #54416).

So far I've only added checks for the new symbols introduced by
using recursive pthreads mutexes. If we get reports of compilation
failures on weird platforms, we can check for more symbols.

Also clarify the indentation, which was turning into quite a mess,
and use AS_IF instead of if/elif/else/fi in accordance with Autoconf
best-practice.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=47239
Reviewed-by: Colin Walters <walters@verbum.org>
2012-11-19 15:13:42 +00:00