platform/upstream/dbus.git
12 years agoPrepare dbus 1.5.12 dbus-1.5.12
Simon McVittie [Tue, 27 Mar 2012 16:25:25 +0000 (17:25 +0100)]
Prepare dbus 1.5.12

12 years agoBuild _dbus_string_starts_with_c_str even if not building tests
Simon McVittie [Tue, 27 Mar 2012 16:19:44 +0000 (17:19 +0100)]
Build _dbus_string_starts_with_c_str even if not building tests

It's used by the own_prefix implementation.

12 years agoMerge remote-tracking branch 'alban/own_prefix2'
Simon McVittie [Tue, 27 Mar 2012 14:05:51 +0000 (15:05 +0100)]
Merge remote-tracking branch 'alban/own_prefix2'

Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=46273

12 years agoMerge branch 'dbus-1.4'
Simon McVittie [Tue, 27 Mar 2012 13:52:24 +0000 (14:52 +0100)]
Merge branch 'dbus-1.4'

Conflicts:
NEWS
configure.ac

12 years agoStart 1.4.21
Simon McVittie [Tue, 27 Mar 2012 13:25:49 +0000 (14:25 +0100)]
Start 1.4.21

12 years agoPrepare version 1.4.20 dbus-1.4.20
Simon McVittie [Tue, 27 Mar 2012 12:00:19 +0000 (13:00 +0100)]
Prepare version 1.4.20

12 years agoFix duplicate case value compiling with mingw-w64
Andoni Morales Alastruey [Wed, 14 Mar 2012 20:59:04 +0000 (21:59 +0100)]
Fix duplicate case value compiling with mingw-w64

In mingw-w64 both ESOMETHING and WSASOMETHING are defined,
leading to a duplicate case in the switch.

Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=47321

12 years agoPort to glib 2.31.x g_thread API
Martin Pitt [Mon, 23 Jan 2012 11:11:24 +0000 (11:11 +0000)]
Port to glib 2.31.x g_thread API

g_thread_init() is deprecated since glib 2.24, call g_type_init() instead.
Bump glib requirement accordingly.

g_thread_create is deprecated since 2.31, use g_thread_new() instead. When
building with a glib earlier than 2.31, provide a backwards compatibility shim.

[Added a comment about why we're using g_type_init() in a test that
doesn't otherwise use GObject -smcv]

[Applied to 1.4 despite just being a deprecation fix because it also fixes
linking with GLib 2.32, in which gthread has been removed from gobject's
Requires and moved to Requires.private, Debian #665665 -smcv]

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=44413
Bug-Debian: http://bugs.debian.org/665665
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
12 years agotest: enforce own_prefix policy rules
Alban Crequy [Wed, 21 Mar 2012 19:05:42 +0000 (19:05 +0000)]
test: enforce own_prefix policy rules

After parsing [allow|deny] rules with own_prefix, check they are enforced
correctly.

https://bugs.freedesktop.org/show_bug.cgi?id=46886

12 years agotest: parse own_prefix policy rules
Alban Crequy [Sun, 4 Mar 2012 15:11:45 +0000 (15:11 +0000)]
test: parse own_prefix policy rules

Just check that the parser accept [allow|deny] rules with own_prefix

https://bugs.freedesktop.org/show_bug.cgi?id=46886

12 years agopolicy: remove unused parameter
Alban Crequy [Wed, 21 Mar 2012 17:55:18 +0000 (17:55 +0000)]
policy: remove unused parameter

12 years agodoc: update documentation with own_prefix policy rules
Alban Crequy [Sun, 4 Mar 2012 15:18:38 +0000 (15:18 +0000)]
doc: update documentation with own_prefix policy rules

https://bugs.freedesktop.org/show_bug.cgi?id=46886

12 years agotransport: add new unixexec transport on Unix
Lennart Poettering [Fri, 11 Mar 2011 21:35:16 +0000 (22:35 +0100)]
transport: add new unixexec transport on Unix

The "unixexec:" transport will create a local AF_UNIX socket with
socketpair(), then fork and execute a binary on one side with STDIN and
STDOUT connected to it and then use the other side.

This is useful to implement D-Bus tunneling schemes, for example to get
a D-Bus connection to the system bus on a different host, similar how
udisks is already doing it. (udisks uses SSH TCP tunneling for this,
which is a bit ugly and less secure than this solution).

Suggested use is with connection strings like the following:

  unixexec:path=ssh,argv1=foobar,argv2=system-bus-bridge

or:

  unixexec:path=pkexec,argv1=system-bus-bridge

or even:

  unixexec:path=sudo,argv1=system-bus-bridge

The first line would execute the binary 'system-bus-bridge' on host
'foobar' and then pass D-Bus traffic to it. This (hypothetical) bridge
binary would then forward the information to the local system bus.

The second and third line use this scheme locally to acquire a
privileged connection through pkexec resp. sudo: instead of connecting
directly to the bus, they use the same bridge binary which will forward
all information to the system bus.

The arguments of the protocol are 'path' for the first execlp()
argument, and argv0, argv1, and so on for the following arguments. argv0
can be left out in which case path will be used.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=35230
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
12 years agosysdeps-unix: introduce dbus_close_all() and make use of it where appropriate
Lennart Poettering [Thu, 28 Jul 2011 03:33:46 +0000 (05:33 +0200)]
sysdeps-unix: introduce dbus_close_all() and make use of it where appropriate

This is optimized on Linux and enumerates through /proc/self/fd with a
fallback on brute-force closing of fds, in case /proc is not available.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=35230
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
12 years agospec: document unixexec transports
Lennart Poettering [Thu, 2 Feb 2012 04:46:09 +0000 (05:46 +0100)]
spec: document unixexec transports

This adds a specification text for the new unixexec: transport.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=35230
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
12 years agoFix spelling errors in dbus-launch(1)
John Bradshaw [Mon, 12 Mar 2012 13:53:05 +0000 (13:53 +0000)]
Fix spelling errors in dbus-launch(1)

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=47076
Bug-Fedora: https://bugzilla.redhat.com/show_bug.cgi?id=675491
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
12 years agoMerge branch 'dbus-1.4'
Simon McVittie [Mon, 12 Mar 2012 11:55:27 +0000 (11:55 +0000)]
Merge branch 'dbus-1.4'

12 years agoEnumerate data files used in the build rather than using find(1)
Simon McVittie [Mon, 26 Sep 2011 10:20:41 +0000 (11:20 +0100)]
Enumerate data files used in the build rather than using find(1)

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=33840
Reviewed-by: Will Thompson <will.thompson@collabora.co.uk>
12 years agopolicy: enforce policy on "allow own_prefix"
Alban Crequy [Sun, 4 Mar 2012 14:56:02 +0000 (14:56 +0000)]
policy: enforce policy on "allow own_prefix"

https://bugs.freedesktop.org/show_bug.cgi?id=46886

12 years agoconfig parser: add own_prefix
Alban Crequy [Sun, 4 Mar 2012 14:36:56 +0000 (14:36 +0000)]
config parser: add own_prefix

https://bugs.freedesktop.org/show_bug.cgi?id=46882

12 years agoUpdate NEWS
Simon McVittie [Tue, 28 Feb 2012 12:51:26 +0000 (12:51 +0000)]
Update NEWS

12 years agoMake dbus-daemon.exe --print-address work under Windows
Simon McVittie [Mon, 13 Feb 2012 19:54:52 +0000 (19:54 +0000)]
Make dbus-daemon.exe --print-address work under Windows

The DBusPipe code was broken by commit 6e214b5b3c2837, which switched
from C runtime API to Win32 API for WinCE's benefit. In a DBusPipe,
fd_or_handle is in fact always a C runtime file descriptor, which can't
be used with the Win32 API (which expects a HANDLE).

This commit goes back to the C runtime API. It might cause WinCE support
to regress, but at least dbus-daemon.exe --print-address works again.

This is enough to make a few tests work under Wine when cross-compiling
from Linux to mingw-w64: in particular, this now works:

    DBUS_TEST_DAEMON=bus/dbus-daemon.exe DBUS_TEST_DATA=test/data \
    wine test/test-dbus-daemon.exe -p /echo/session

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=46049
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Ralf Habacker <ralf.habacker@freenet.de>
12 years agoAdd a regression test for validating various string types with the public API
Simon McVittie [Fri, 24 Feb 2012 12:44:14 +0000 (12:44 +0000)]
Add a regression test for validating various string types with the public API

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=39549
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Will Thompson <will.thompson@collabora.co.uk>
12 years agoAdd dbus-syntax.[ch]
Simon McVittie [Fri, 24 Feb 2012 12:43:55 +0000 (12:43 +0000)]
Add dbus-syntax.[ch]

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=39549
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Will Thompson <will.thompson@collabora.co.uk>
12 years agoDBusBasicValue: add bool_val and fd members to complete the set
Simon McVittie [Tue, 15 Nov 2011 13:11:03 +0000 (13:11 +0000)]
DBusBasicValue: add bool_val and fd members to complete the set

dbus_bool_t is the same as dbus_uint32_t, but if we have a separate
bool_val member, it's more obvious that people are getting it right.
It's not called bool because that's a keyword in C++.

int (for file descriptors) doesn't appear in the D-Bus message wire
format, but then again neither does char *, and
dbus_message_iter_get_basic() and friends can return an int (due to
internal index-into-array-of-fds -> fd remapping in libdbus).
In theory int might not be the same size as any of the dbus_intNN_t
types, and anyway it's easier to see that people are getting it right
if we make it explicit.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=11191
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Will Thompson <will.thompson@collabora.co.uk>
12 years agoPromote DBusBasicValue and DBus8ByteStruct to be API
Simon McVittie [Mon, 10 Oct 2011 10:20:31 +0000 (11:20 +0100)]
Promote DBusBasicValue and DBus8ByteStruct to be API

In practice, D-Bus bindings end up reinventing DBusBasicValue anyway,
so it might as well be API.

Also stop claiming that all basic-typed values are guaranteed to fit in
8 bytes - this is not true if your platform has more than 8-byte pointers
(I'm not aware of any such platform now, but let's not rule it out).

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=11191
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Will Thompson <will.thompson@collabora.co.uk>
12 years agoDevelopment version
Simon McVittie [Tue, 21 Feb 2012 20:23:55 +0000 (20:23 +0000)]
Development version

12 years agoPrepare 1.5.10 dbus-1.5.10
Simon McVittie [Tue, 21 Feb 2012 17:03:14 +0000 (17:03 +0000)]
Prepare 1.5.10

12 years agoMark shell-test as modular and installable
Simon McVittie [Wed, 9 Nov 2011 17:19:19 +0000 (17:19 +0000)]
Mark shell-test as modular and installable

This test needs non-public API and so is statically linked, but is OK
to install.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=42811
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
12 years agoAllow a reduced set of installable tests (none yet) to be built without GLib
Simon McVittie [Wed, 9 Nov 2011 17:18:36 +0000 (17:18 +0000)]
Allow a reduced set of installable tests (none yet) to be built without GLib

--enable-modular-tests=auto will build as many as possible, perhaps
excluding the GLib ones. --enable-modular-tests=yes or --enable-tests=yes
will insist on having GLib, to be able to run everything.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=42811
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
12 years agodbus-memory: add optional checking for system malloc() (etc.) failing
Simon McVittie [Thu, 23 Jun 2011 10:43:33 +0000 (11:43 +0100)]
dbus-memory: add optional checking for system malloc() (etc.) failing

If tests are enabled and DBUS_MALLOC_CANNOT_FAIL is set, abort on system
malloc() failures (as GLib's g_malloc does). This can be used in
conjunction with a resource limit, to turn runaway memory leaks into a
debuggable core-dump.

Reviewed-by: Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=41048

12 years agodbus_realloc: don't crash if realloc() returns NULL while using guards
Simon McVittie [Thu, 23 Jun 2011 10:26:38 +0000 (11:26 +0100)]
dbus_realloc: don't crash if realloc() returns NULL while using guards

Reviewed-by: Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=41048

12 years agoTurn the non-valgrind code path into inline functions to avoid compiler warnings
Simon McVittie [Tue, 21 Feb 2012 14:52:49 +0000 (14:52 +0000)]
Turn the non-valgrind code path into inline functions to avoid compiler warnings

Recent gcc will warn if you have a statement that's just a macro
expanding to (0), but not if you have an inline stub function that
always returns 0, so let's do the latter.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=37286
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
12 years agoDBusTransport: don't include dbus-marshal-header.h either
Simon McVittie [Wed, 22 Jun 2011 10:10:00 +0000 (11:10 +0100)]
DBusTransport: don't include dbus-marshal-header.h either

No longer needed.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=46095
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
12 years agoMove _dbus_check_fdleaks_enter to dbus-message-internal.h
Simon McVittie [Wed, 22 Jun 2011 10:06:30 +0000 (11:06 +0100)]
Move _dbus_check_fdleaks_enter to dbus-message-internal.h

This means the bus test can use them without needing
dbus-message-private.h, reducing its view of message internals.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=46095
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
12 years agoDBusTransport: don't use dbus-message-private.h
Simon McVittie [Wed, 22 Jun 2011 10:00:58 +0000 (11:00 +0100)]
DBusTransport: don't use dbus-message-private.h

It seems it's no longer needed here.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=46095
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
12 years agoZero-initialize DBusCounter at allocation
Simon McVittie [Mon, 19 Sep 2011 14:17:26 +0000 (15:17 +0100)]
Zero-initialize DBusCounter at allocation

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=46095
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
12 years agoDo not AC_SUBST systemd flags from PKG_CHECK_MODULES
Simon McVittie [Mon, 13 Feb 2012 17:59:06 +0000 (17:59 +0000)]
Do not AC_SUBST systemd flags from PKG_CHECK_MODULES

They're automatically substituted already.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=46095
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
12 years agoInvoke PKG_PROG_PKG_CONFIG early in configure.ac
Simon McVittie [Mon, 13 Feb 2012 17:58:29 +0000 (17:58 +0000)]
Invoke PKG_PROG_PKG_CONFIG early in configure.ac

Otherwise, autoconf can generate wrong code, because our first use of
PKG_CHECK_MODULES is conditional.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=46095
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
12 years agointernal_bus_get: centralize error handling
Simon McVittie [Tue, 22 Feb 2011 18:47:51 +0000 (18:47 +0000)]
internal_bus_get: centralize error handling

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=46095
Reviewed-by: Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
12 years agoAdd a macro to centralize checking for string-like types
Simon McVittie [Wed, 16 Feb 2011 17:52:03 +0000 (17:52 +0000)]
Add a macro to centralize checking for string-like types

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=46095
Reviewed-by: Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
12 years agoRemove declaration of _dbus_type_is_fixed, no longer exists
Simon McVittie [Thu, 14 Jul 2011 10:37:38 +0000 (11:37 +0100)]
Remove declaration of _dbus_type_is_fixed, no longer exists

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=46095
Reviewed-by: Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
12 years ago_dbus_verbose_real: tidy conditional prototype to not break nesting
Simon McVittie [Tue, 26 Jul 2011 15:03:20 +0000 (16:03 +0100)]
_dbus_verbose_real: tidy conditional prototype to not break nesting

The mismatched opening parenthesis caused vim syntax highlighting to
consider every subsequent brace in the file to be an error, which was
pretty annoying.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=46095
Reviewed-by: Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
12 years agoRemove _dbus_condvar_wake_all and both of its implementations
Simon McVittie [Mon, 20 Feb 2012 12:56:01 +0000 (12:56 +0000)]
Remove _dbus_condvar_wake_all and both of its implementations

Neither was used, and the Windows version could lead to live-locks.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=43744
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=44609
Reviewed-by: Thiago Macieira <thiago@kde.org>
12 years agoNever use non-libdbus threading primitives
Simon McVittie [Mon, 20 Feb 2012 15:20:41 +0000 (15:20 +0000)]
Never use non-libdbus threading primitives

This lets us simplify considerably, by assuming that we always have both
recursive and suitable-for-condition-variable mutexes.

The Windows implementation has been compiled (on 32-bit mingw-w64)
but not tested. Justification for the approach used on Windows,
and in particular, using the existing "non-recursive" locks as if
they were recursive:

* We've been using them in conjunction with condition variables all
  along, so they'd better be suitable

* On fd.o #36204, Ralf points out that mutexes created via CreateMutex
  are, in fact, recursive

* Havoc's admonitions about requiring "Java-style" recursive locking
  (waiting for a condition variable while holding a recursive lock
  requires releasing that lock n times) turn out not to apply to
  either of our uses of DBusCondVar in DBusConnection, because the
  lock is only held for a short time, without calling into user code;
  indeed, our Unix implementation isn't recursive anyway, so if
  the Windows implementation reaches the deadlocking situation
  somehow (waiting for condition variable while locked more than once),
  the Unix implementation would already have deadlocked on the same
  code path (trying to lock more than once)

One possible alternative to a CreateMutex mutex for use with condition
variables would be a CRITICAL_SECTION. I'm not going to implement this,
but Windows developers are welcome to do so.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=36204
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=43744
Reviewed-by: Thiago Macieira <thiago@kde.org>
12 years agodbus-threads: improve documentation
Simon McVittie [Wed, 15 Feb 2012 11:49:06 +0000 (11:49 +0000)]
dbus-threads: improve documentation

This reinstates documentation for _dbus_mutex_new() and
_dbus_mutex_free(), and fixes some typos spotted during review.
It also documents the newly-introduced functions.

Reviewed-by: Thiago Macieira <thiago@kde.org>
12 years agoUse actual recursive pthreads mutexes, rather than NIH'ing them, wrong
Simon McVittie [Tue, 14 Feb 2012 19:02:20 +0000 (19:02 +0000)]
Use actual recursive pthreads mutexes, rather than NIH'ing them, wrong

Very loosely based on a patch from Sigmund Augdal.

For the moment, we make PTHREAD_MUTEX_RECURSIVE a hard requirement:
it's required by POSIX 2008 Base and SUSv2.

If your (non-Windows) platform doesn't have PTHREAD_MUTEX_RECURSIVE,
please report a bug on freedesktop.org bugzilla with details of the
platform in question.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=43744
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Thiago Macieira <thiago@kde.org>
12 years agoAllow both recursive and non-recursive mutexes to be supplied
Simon McVittie [Tue, 14 Feb 2012 18:38:48 +0000 (18:38 +0000)]
Allow both recursive and non-recursive mutexes to be supplied

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=43744
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Thiago Macieira <thiago@kde.org>
12 years agoDistinguish between two flavours of mutex
Simon McVittie [Tue, 14 Feb 2012 19:58:56 +0000 (19:58 +0000)]
Distinguish between two flavours of mutex

dbus-threads.h warns that recursive pthreads mutexes are not compatible
with our expectations for condition variables. However, the only two
condition variables we actually use only have their corresponding
mutexes locked briefly (and we don't call out to user code from there),
so the mutexes don't need to be recursive anyway. That's just as well,
because it turns out our implementation of recursive mutexes on
pthreads is broken!

The goal here is to be able to distinguish between "cmutexes" (mutexes
compatible with a condition variable) and "rmutexes" (mutexes which
are recursive if possible, to avoid deadlocking if we hold them while
calling user code).

This is complicated by the fact that callers are not guaranteed to have
provided us with both versions of mutexes, so we might have to implement
one by using the other (in particular, DBusRMutex *aims to be*
recursive, it is not *guaranteed to be* recursive).

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=43744
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Thiago Macieira <thiago@kde.org>
12 years agoMake _dbus_mutex_new, _dbus_mutex_free static
Simon McVittie [Tue, 14 Feb 2012 19:39:41 +0000 (19:39 +0000)]
Make _dbus_mutex_new, _dbus_mutex_free static

They're only called within their module.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=43744
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Thiago Macieira <thiago@kde.org>
12 years agoFixed runtime error caused by using uninitialized variable detected with msvc build.
Ralf Habacker [Mon, 20 Feb 2012 12:06:19 +0000 (13:06 +0100)]
Fixed runtime error caused by using uninitialized variable detected with msvc build.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=46335
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
12 years agoMerge branch 'dbus-1.4'
Simon McVittie [Mon, 20 Feb 2012 11:32:44 +0000 (11:32 +0000)]
Merge branch 'dbus-1.4'

Conflicts:
NEWS

12 years agoNEWS for 1.4
Simon McVittie [Mon, 20 Feb 2012 11:31:53 +0000 (11:31 +0000)]
NEWS for 1.4

12 years agodbus-protocol.h: compile under C++11
Marc Mutz [Thu, 16 Feb 2012 07:43:40 +0000 (08:43 +0100)]
dbus-protocol.h: compile under C++11

C++11 compilers have a feature called 'user-defined string literals' which
allow arbitrary string suffixes to have user-defined meaning.

This makes code that concatenates macros with string literals without
intervening whitespace illegal under C++11. Fortunately, string literal
concatenation has allowed intervening whitespace since the dawn of time,
so the solution is to simply pad with spaces.

Tested (header) with GCC 4.7 (trunk).

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=46147
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
12 years agoNEWS
Simon McVittie [Tue, 14 Feb 2012 16:31:39 +0000 (16:31 +0000)]
NEWS

12 years agodbus-send.1: document --reply-timeout
Simon McVittie [Wed, 8 Feb 2012 14:14:17 +0000 (14:14 +0000)]
dbus-send.1: document --reply-timeout

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=14005
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Lennart Poettering <lennart@poettering.net>
12 years agodbus-send.1, dbus-send: document --print-reply=literal consistently
Simon McVittie [Wed, 8 Feb 2012 14:14:01 +0000 (14:14 +0000)]
dbus-send.1, dbus-send: document --print-reply=literal consistently

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=14005
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Lennart Poettering <lennart@poettering.net>
12 years agodbus-send.1: use bold and italic type consistently
Simon McVittie [Wed, 8 Feb 2012 14:09:20 +0000 (14:09 +0000)]
dbus-send.1: use bold and italic type consistently

According to man-pages(7)

* bold is for literal text, the name of the thing being documented,
  or the name of another man page

* italic is for replaceable text, usually in all-caps

* normal type (in the SYNOPSIS) is for special syntax like the []
  indicating optional things

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=14005
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Lennart Poettering <lennart@poettering.net>
12 years agomore NEWS
Simon McVittie [Mon, 13 Feb 2012 17:57:23 +0000 (17:57 +0000)]
more NEWS

12 years agoadd and use _dbus_connection_trace_ref
Simon McVittie [Tue, 26 Jul 2011 15:35:57 +0000 (16:35 +0100)]
add and use _dbus_connection_trace_ref

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=37286
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Lennart Poettering <lennart@poettering.net>
12 years agoadd and use _dbus_server_trace_ref
Simon McVittie [Tue, 26 Jul 2011 15:28:41 +0000 (16:28 +0100)]
add and use _dbus_server_trace_ref

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=37286
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Lennart Poettering <lennart@poettering.net>
12 years agoadd and use _dbus_pending_call_trace_ref
Simon McVittie [Tue, 26 Jul 2011 15:16:28 +0000 (16:16 +0100)]
add and use _dbus_pending_call_trace_ref

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=37286
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Lennart Poettering <lennart@poettering.net>
12 years agoAdd and use _dbus_message_trace_ref
Simon McVittie [Mon, 19 Sep 2011 14:57:02 +0000 (15:57 +0100)]
Add and use _dbus_message_trace_ref

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=37286
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Lennart Poettering <lennart@poettering.net>
12 years agoProvide a hook to allow refcounting to be traced
Simon McVittie [Tue, 26 Jul 2011 14:52:56 +0000 (15:52 +0100)]
Provide a hook to allow refcounting to be traced

This is designed to be used from a wrapper function, partly to supply
the same arguments every time for a particular class of object, and partly
to provide a more specific gdb breakpoint. It has several purposes:

* when under gdb, provide a function which can be used in breakpoints
* when not under valgrind and DBUS_MESSAGE_TRACE=1 is set, emit a
  _dbus_verbose when a message's refcount changes
* when under valgrind and DBUS_MESSAGE_TRACE=1 is set, emit a
  VALGRIND_PRINTF_BACKTRACE when a message's refcount changes,
  which lets you see the complete history of each message to track down
  reference leaks

Compile-time support is currently conditional on DBUS_ENABLE_VERBOSE_MODE,
but could be separated out if desired.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=37286
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Lennart Poettering <lennart@poettering.net>
12 years agodbus_message_cache_or_finalize: allow message cache to be disabled at runtime
Simon McVittie [Thu, 12 May 2011 12:01:32 +0000 (13:01 +0100)]
dbus_message_cache_or_finalize: allow message cache to be disabled at runtime

This should make it easier to diagnose message-related ref leaks,
use-after-free, etc. with Valgrind: for optimal results (and pessimal
performance), we want to avoid re-using memory blocks for as long as
possible.

For now this is conditional on DBUS_BUILD_TESTS. It could get its own
conditional if desired.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=37286
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Lennart Poettering <lennart@poettering.net>
12 years agoDBusMemPool: inform valgrind what we're up to
Simon McVittie [Thu, 12 May 2011 11:56:22 +0000 (12:56 +0100)]
DBusMemPool: inform valgrind what we're up to

If we tell valgrind what we're doing, it can give better diagnostics.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=37286
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Lennart Poettering <lennart@poettering.net>
12 years agoAdd support for inserting (a subset of) Valgrind client requests
Simon McVittie [Mon, 13 Feb 2012 17:53:51 +0000 (17:53 +0000)]
Add support for inserting (a subset of) Valgrind client requests

If valgrind support is disabled, we define stub versions of the
Valgrind client requests I plan to use, so the actual code doesn't
need #ifdef hell.

[With unnecessary AC_SUBST removed as per Lennart's review -smcv]

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=37286
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Lennart Poettering <lennart@poettering.net>
12 years agoReplace a series of booleans, all (apparently) alike, with flags
Simon McVittie [Fri, 10 Feb 2012 12:44:19 +0000 (12:44 +0000)]
Replace a series of booleans, all (apparently) alike, with flags

This makes it a bit clearer what's going on.

Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Lennart Poettering <lennart@poettering.net>
12 years agoNEWS
Simon McVittie [Mon, 13 Feb 2012 17:37:56 +0000 (17:37 +0000)]
NEWS

12 years ago_dbus_string_append_double, _dbus_string_parse_double: remove
Simon McVittie [Fri, 10 Feb 2012 13:56:13 +0000 (13:56 +0000)]
_dbus_string_append_double, _dbus_string_parse_double: remove

They're unused, except by their own regression tests.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=39759
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Lennart Poettering <lennart@poettering.net>
12 years ago_dbus_string_append_unichar, _dbus_string_get_unichar: remove
Simon McVittie [Fri, 10 Feb 2012 14:51:44 +0000 (14:51 +0000)]
_dbus_string_append_unichar, _dbus_string_get_unichar: remove

These are unused (except by their regression test!) and not visible to
external callers.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=39759
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Lennart Poettering <lennart@poettering.net>
12 years ago_dbus_list_pop_last_link: remove, unused
Simon McVittie [Fri, 10 Feb 2012 14:32:01 +0000 (14:32 +0000)]
_dbus_list_pop_last_link: remove, unused

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=39759
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Lennart Poettering <lennart@poettering.net>
12 years agoMerge branch 'dbus-1.4'
Simon McVittie [Mon, 13 Feb 2012 17:36:51 +0000 (17:36 +0000)]
Merge branch 'dbus-1.4'

Conflicts:
NEWS
configure.ac

12 years agoBack to development status
Simon McVittie [Mon, 13 Feb 2012 17:19:13 +0000 (17:19 +0000)]
Back to development status

12 years agoRelease D-Bus 1.4.18 dbus-1.4.18
Simon McVittie [Mon, 13 Feb 2012 16:23:50 +0000 (16:23 +0000)]
Release D-Bus 1.4.18

12 years agodbus-daemon: fix forgotten counter increase while copying configured auth mechanisms
Pavel Strashkin [Mon, 23 Jan 2012 10:20:48 +0000 (10:20 +0000)]
dbus-daemon: fix forgotten counter increase while copying configured auth mechanisms

Previously, only one auth mechanism was used.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=45106
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
12 years agoRevert "dbus-daemon: fix forgotten counter increase while copying configured auth...
Simon McVittie [Mon, 13 Feb 2012 16:18:11 +0000 (16:18 +0000)]
Revert "dbus-daemon: fix forgotten counter increase while copying configured auth mechanisms"

This reverts commit 26b57efe43c991616186db5c499f729a900c6544.
It was incorrectly attributed.

12 years ago_dbus_connection_queue_received_message: remove, unused
Simon McVittie [Wed, 22 Jun 2011 18:17:35 +0000 (19:17 +0100)]
_dbus_connection_queue_received_message: remove, unused

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=39759
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Lennart Poettering <lennart@poettering.net>
12 years agoDBUS_HASH_TWO_STRINGS, DBUS_HASH_POINTER: remove, unused
Simon McVittie [Wed, 22 Jun 2011 15:04:57 +0000 (16:04 +0100)]
DBUS_HASH_TWO_STRINGS, DBUS_HASH_POINTER: remove, unused

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=39759
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Lennart Poettering <lennart@poettering.net>
12 years ago_dbus_list_insert_before: remove, unused
Simon McVittie [Wed, 22 Jun 2011 15:05:18 +0000 (16:05 +0100)]
_dbus_list_insert_before: remove, unused

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=39759
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Lennart Poettering <lennart@poettering.net>
12 years ago_dbus_header_field_to_string: remove, unused
Simon McVittie [Wed, 22 Jun 2011 15:05:08 +0000 (16:05 +0100)]
_dbus_header_field_to_string: remove, unused

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=39759
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Lennart Poettering <lennart@poettering.net>
12 years agoRemove unused _dbus_string_append_4_aligned, _dbus_string_append_8_aligned
Simon McVittie [Fri, 10 Feb 2012 14:37:41 +0000 (14:37 +0000)]
Remove unused _dbus_string_append_4_aligned, _dbus_string_append_8_aligned

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=39759
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Lennart Poettering <lennart@poettering.net>
12 years ago_dbus_getgid: remove, unused
Simon McVittie [Tue, 2 Aug 2011 11:55:09 +0000 (12:55 +0100)]
_dbus_getgid: remove, unused

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=39759
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Lennart Poettering <lennart@poettering.net>
12 years agoNEWS
Simon McVittie [Fri, 10 Feb 2012 13:49:00 +0000 (13:49 +0000)]
NEWS

12 years agospec: document systemd transport
Lennart Poettering [Thu, 2 Feb 2012 04:15:24 +0000 (05:15 +0100)]
spec: document systemd transport

This adds a short section about the systemd transport to the
specification.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=35232
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
12 years agoNEWS for recently-merged branches
Simon McVittie [Fri, 10 Feb 2012 10:28:59 +0000 (10:28 +0000)]
NEWS for recently-merged branches

12 years agoMerge branch 'system-search-paths-21620'
Simon McVittie [Fri, 10 Feb 2012 10:10:36 +0000 (10:10 +0000)]
Merge branch 'system-search-paths-21620'

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=21620
Reviewed-by: Lennart Poettering <lennart@poettering.net>
12 years agoMerge branch 'doc-search-paths-35306'
Simon McVittie [Fri, 10 Feb 2012 10:10:12 +0000 (10:10 +0000)]
Merge branch 'doc-search-paths-35306'

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=35306
Reviewed-by: Lennart Poettering <lennart@poettering.net>
12 years agoMerge branch 'reversed-dns-37095'
Simon McVittie [Fri, 10 Feb 2012 10:09:09 +0000 (10:09 +0000)]
Merge branch 'reversed-dns-37095'

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=37095
Reviewed-by: Lennart Poettering <lennart@poettering.net>
12 years agobus: introduce --nopidfile switch to disable writing of PID files
Lennart Poettering [Thu, 2 Feb 2012 01:25:11 +0000 (02:25 +0100)]
bus: introduce --nopidfile switch to disable writing of PID files

When used with init systems such as systemd (where PID files are
redundant) this allows us to disable PID files even if a path is
configured for them in the normal bus configuration files.

Make use of this new switch in the systemd unit file.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=45520
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
12 years agoWindows compile fix
Ralf Habacker [Thu, 9 Feb 2012 13:58:43 +0000 (14:58 +0100)]
Windows compile fix

BUG: https://bugs.freedesktop.org/show_bug.cgi?id=45832

12 years agoNEWS
Simon McVittie [Wed, 8 Feb 2012 19:34:37 +0000 (19:34 +0000)]
NEWS

12 years ago_dbus_get_environment: move from shared library to dbus-sysdeps-util
Simon McVittie [Wed, 22 Jun 2011 14:22:09 +0000 (15:22 +0100)]
_dbus_get_environment: move from shared library to dbus-sysdeps-util

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=34976
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Reviewed-by: Cosimo Alfarano <cosimo.alfarano@collabora.co.uk>
12 years agoNEWS
Simon McVittie [Wed, 8 Feb 2012 19:13:19 +0000 (19:13 +0000)]
NEWS

12 years agodbus-marshal-recursive: make some internal functions static
Simon McVittie [Mon, 6 Jun 2011 16:40:41 +0000 (17:40 +0100)]
dbus-marshal-recursive: make some internal functions static

Having a disabled type writer, comparing type readers by position, and
performing a single step of copying from a reader to a writer all seem pretty
obscure, and were only used within dbus-marshal-recursive.c (to realign
after insertion).

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=38285
Reviewed-by: Cosimo Alfarano <cosimo.alfarano@collabora.co.uk>
12 years agofind_field_for_modification: document where the readers are left pointing
Simon McVittie [Fri, 10 Jun 2011 09:39:10 +0000 (10:39 +0100)]
find_field_for_modification: document where the readers are left pointing

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=38285
Reviewed-by: Cosimo Alfarano <cosimo.alfarano@collabora.co.uk>
12 years agoReinstate the recursive marshalling test but skip the later parts by default
Simon McVittie [Mon, 19 Sep 2011 13:14:49 +0000 (14:14 +0100)]
Reinstate the recursive marshalling test but skip the later parts by default

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=38285
Reviewed-by: Cosimo Alfarano <cosimo.alfarano@collabora.co.uk>
12 years agodbus-test: only test for memleaks if we actually ran the test
Simon McVittie [Thu, 9 Jun 2011 11:39:38 +0000 (12:39 +0100)]
dbus-test: only test for memleaks if we actually ran the test

This reduces output spam if you're only running one part.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=38285
Reviewed-by: Cosimo Alfarano <cosimo.alfarano@collabora.co.uk>
12 years agoMerge branch 'dbus-1.4'
Simon McVittie [Wed, 8 Feb 2012 19:06:51 +0000 (19:06 +0000)]
Merge branch 'dbus-1.4'

Conflicts:
NEWS

12 years agoNEWS
Simon McVittie [Wed, 8 Feb 2012 19:06:30 +0000 (19:06 +0000)]
NEWS