Benjamin Reed [Sun, 19 Jul 2009 15:45:34 +0000 (11:45 -0400)]
Enable launchd.
This patch enables support for Mac OS X's launch daemon
for startup as well as sharing of the DBus session bus
environment. It includes a LaunchAgent plist for automatic
start of the session bus.
Colin Walters [Wed, 11 Jun 2008 22:01:16 +0000 (18:01 -0400)]
Added a test-autolaunch.
* test/name-test/test-autolaunch.c: New file,
unsets DBUS_SESSION_BUS_ADDRESS so we should
fall back to autolaunch:.
* test/name-test/run-test.sh: Run it.
* test/name-test/Makefile.am: Build it.
Ralf Habacker [Fri, 29 Oct 2010 09:46:33 +0000 (11:46 +0200)]
Service dir related bug fix on windows.
The code for accessing services requires absolute pathes, which are based
on DBUS_DATADIR. DBUS_DATADIR on windows is defined relative. This patch
makes sure that those pathes are absolute.
Tentative workaround for the random hangs on windows.
The problem seems to be a race condition with winsock's
internal threads for the non-blocking mode of the sockets,
but I haven't had time to try a standalone test case yet
to confirm it. Anyway, I found a workaround that fixes it
in all cases, so it's good enough for now.
Will Thompson [Thu, 9 Sep 2010 12:15:57 +0000 (13:15 +0100)]
Move uploading docs into build system.
This uploads a doc tarball, and its contents, to the appropriate
location on dbus.freedesktop.org. It also uploads the DTDs to the
appropriate location on specifications.freedesktop.org.
I believe this uploads the same files as the old update-dbus-docs.sh
script did.
Will Thompson [Wed, 8 Sep 2010 21:12:00 +0000 (22:12 +0100)]
Report correct result of doxygen/xml doc checks
Previously the configure output always said these were enabled during
the 'Checking for...' stage, even if they weren't. The summary at the
end of configure was correct, though.
Will Thompson [Wed, 8 Sep 2010 21:10:47 +0000 (22:10 +0100)]
Move manpages to doc/
This will make integrating the building of HTML versions of these
manpages into the build system way easier, at the cost of keeping
manpages in a different directory to the source for the program they
describe. I think this is an acceptable trade-off.
Will Thompson [Wed, 8 Sep 2010 19:58:05 +0000 (20:58 +0100)]
Build Doxygen documentation for `make all`.
This depends on GNU Make for the wildcard dependency on all the source
files in dbus/. If anyone objects very strongly to this, I'd welcome
suggestions of a more portable way to do this.
Colin Walters [Fri, 3 Sep 2010 14:18:25 +0000 (10:18 -0400)]
Make dbus-uuidgen atomic
A Red Hat QA engineer hit in practice a race condition in dbus-uuidgen
where it could leave an empty file.
dbus-uuidgen (_dbus_create_uuid_file_exclusively) formerly created an
empty file in the path to the uuid, then filled it in. At some point,
the internal libdbus _dbus_string_save_to_file became atomic on Unix
at least (doing the save to temp file, fsync(), rename() dance).
So _dbus_create_uuid_file_exclusively doesn't need to create the file
beforehand anymore. However, it *does* need the file to be
world-readable, unlike all other consumers of
_dbus_string_save_to_file. So add a "world_readable" argument.
man: add documentation for four new switches to dbus-daemon
This adds explanations for --address and --systemd-activation which have
recently been added to the daemon. Also adds coumentation for --nofork
and --introspect which has been previously forgotten.
Colin Walters [Fri, 9 Jul 2010 15:48:53 +0000 (11:48 -0400)]
Fix use of $servicename in status
See https://bugzilla.redhat.com/show_bug.cgi?id=521797
We have two init scripts, and commit 05283235632bc8891aaa3047563cb4
patched the "wrong" (i.e. slackware) one. Patch one that ships
with real operating systems too.
This is a pretty straightforward implementation of systemd-style socket
activation using the reference implementation of the
$LISTEN_FDS/$LISTEN_PID env var parsing as supplied by systemd upstream.
Thiago Macieira [Tue, 22 Jun 2010 13:13:23 +0000 (15:13 +0200)]
Fix the reentrancy issue reported on bug 17754.
Patch based on patch by Havoc Pennington, with the references that
this is temporary removed.
Patch based on one from Olivier Hochreutiner <olivier.hochreutiner
gmail.com>
* dbus/dbus-connection.c (protected_change_timeout): remove the
elaborate nonworking hack to try to drop locks and just keep the
locks; this isn't right either, but at least is correct, though
it puts restrictions on apps.
* dbus/dbus-connection.c (protected_change_watch): make the same
change as for timeouts
* dbus/dbus-connection.c (dbus_connection_set_timeout_functions):
don't drop the lock here; add documentation of the problem to API
docs
(dbus_connection_set_watch_functions): same
* dbus/dbus-connection.c (dbus_connection_get_data)
(dbus_connection_set_data): introduce a separate slot_mutex
protecting connection->slot_list so these two functions can be
called inside watch and timeout functions. Not sure this
is going to be a good idea.
* dbus/dbus-connection.c (dbus_connection_unref)
(dbus_connection_ref): avoid using connection lock in ref/unref
so these can also be used in watch and timeout functions
pkg-config: add a couple of additional variables to .pc
We already export the session services dir in the .pc file, add the
system services dir too, as well as the interfaces dir, so that packages
can drop their files into the right place.
Eventually we need to move the system-services dir to a place that is
relocatable to /lib/dbus, and this change makes the location queriable
for other projects, as a first step towards that goal.
Will Thompson [Thu, 17 Jun 2010 13:45:16 +0000 (14:45 +0100)]
Fix dbus-sysdeps.h on amd64, again.
HAVE_STDINT_H is defined in config.h, but that's not much use if
config.h isn't included. The new file dbus/dbus-config.c includes this
header without including config.h first, so fails to build.
Since dbus-sysdeps.h is internal, we can include config.h with impunity,
rather than relying on our callers to do so. Also, there's no need to
include stdint.h twice.