Ralf Habacker [Thu, 25 Feb 2010 17:12:47 +0000 (18:12 +0100)]
fixed compile break introduced in commit
e1c31c73074513d96fa22b5c0355107c42720597
Colin Walters [Mon, 22 Feb 2010 14:48:45 +0000 (09:48 -0500)]
Merge branch 'dbus-1.2'
Conflicts:
bus/bus.c
bus/selinux.c
configure.in
Colin Walters [Fri, 19 Feb 2010 21:34:47 +0000 (16:34 -0500)]
[dbus-string] Sync up UNICODE_VALID with glib, add documentation
See https://bugzilla.gnome.org/show_bug.cgi?id=107427 for rationale
behind the first change.
The documentation was derived from an IRC conversation with
Behdad Esfahbod.
Colin Walters [Fri, 19 Feb 2010 17:39:56 +0000 (12:39 -0500)]
Finish moving file-related functions from dbus-sysdeps-unix to dbus-file-unix
Colin Walters [Thu, 18 Feb 2010 20:33:28 +0000 (15:33 -0500)]
Monitor service directories for changes
It's not expected to have to manually SIGHUP the bus after installing
a new .service file. Since our directory monitoring is already set
up to queue a full reload which includes service activation, simply
monitor the servicedirs too.
https://bugs.freedesktop.org/show_bug.cgi?id=23846
Brian Cameron [Thu, 18 Feb 2010 15:38:42 +0000 (10:38 -0500)]
Fix dummy file monitoring backend compilation
https://bugs.freedesktop.org/show_bug.cgi?id=26421
Colin Walters [Thu, 18 Feb 2010 15:09:20 +0000 (10:09 -0500)]
Revert "_dbus_string_to_lower(): new function"
This reverts commit
39aa8090241b2588eeb2df05880d71abaf8c526e.
Ralf Habacker [Fri, 12 Feb 2010 07:47:33 +0000 (08:47 +0100)]
_dbus_string_to_lower(): new function
Ralf Habacker [Fri, 12 Feb 2010 07:46:10 +0000 (08:46 +0100)]
Merge branch 'master' of ssh://git.freedesktop.org/git/dbus/dbus
Marcus Brinkmann [Thu, 11 Feb 2010 16:04:10 +0000 (17:04 +0100)]
Enable dbus-launch for Windows target.
Ralf Habacker [Wed, 10 Feb 2010 12:03:19 +0000 (13:03 +0100)]
added some docs for windows and updated the documentation index
Ralf Habacker [Wed, 10 Feb 2010 08:26:52 +0000 (09:26 +0100)]
fixed xml doc generating for cmake build system - supported docbook generator is currently kde's meinproc4, xmlto may also work but need still some checks
Ralf Habacker [Tue, 9 Feb 2010 18:44:12 +0000 (19:44 +0100)]
Merge branch 'master' of ssh://git.freedesktop.org/git/dbus/dbus
Ralf Habacker [Tue, 9 Feb 2010 07:37:50 +0000 (08:37 +0100)]
fixed bug on win32 not been able to use session bus with --config-file option
Internal setup of session bus type was bound to the presence of the --session
command line parameter which prevents to use the --config-file parameter for
session bus setup.
Cyril Brulebois [Mon, 8 Feb 2010 17:21:35 +0000 (12:21 -0500)]
Fix compilation of kqueue file monitoring on FreeBSD
Romain Pokrzywka [Fri, 5 Feb 2010 08:54:16 +0000 (09:54 +0100)]
variable name fix (DBUS_DAEMON_NAME instead of DAEMON_NAME)
Romain Pokrzywka [Fri, 5 Feb 2010 00:36:57 +0000 (16:36 -0800)]
apply remaining unapplied parts of
eeedba5b2f5b008819619764943caddd52441adf in dbus4win
Romain Pokrzywka [Fri, 5 Feb 2010 00:13:14 +0000 (16:13 -0800)]
not needed anymore. Builds fine without for both msvc and mingw
Romain Pokrzywka [Thu, 4 Feb 2010 23:20:40 +0000 (15:20 -0800)]
add new symbols from 1.3 to the exports
Romain Pokrzywka [Thu, 4 Feb 2010 21:49:39 +0000 (13:49 -0800)]
move dbus-1.def.cmake to the cmake subdir, as it's cmake specific
Romain Pokrzywka [Thu, 4 Feb 2010 01:31:50 +0000 (17:31 -0800)]
add the LIBRARY header in the .def file, but for mingw only, msvc doesn't support it anymore. It's still needed when creating a .lib from a mingw-built dll
Romain Pokrzywka [Wed, 3 Feb 2010 20:27:47 +0000 (12:27 -0800)]
remove DBUS_DAEMON_EXECUTABLE_NAME, we already have DBUS_DAEMON_NAME, and use the specified name for the executable when building with cmake
Romain Pokrzywka [Wed, 3 Feb 2010 19:32:37 +0000 (11:32 -0800)]
remove the debug postfix for the executables, it only makes sense for the lib
Romain Pokrzywka [Wed, 3 Feb 2010 01:48:55 +0000 (17:48 -0800)]
and another .def.in for the verbose mode handling
Romain Pokrzywka [Wed, 3 Feb 2010 01:31:43 +0000 (17:31 -0800)]
commented bits cleanup
Romain Pokrzywka [Wed, 3 Feb 2010 01:18:17 +0000 (17:18 -0800)]
disable cmake options that don't apply (for cmake-gui)
Romain Pokrzywka [Tue, 2 Feb 2010 23:24:48 +0000 (15:24 -0800)]
fixed the TODO, the if block didn't make sense indeed. Also make it clearer which dirs in the summary are installation dirs
Romain Pokrzywka [Tue, 2 Feb 2010 23:12:30 +0000 (15:12 -0800)]
fixed and simplified install prefix handling with cmake
Romain Pokrzywka [Tue, 2 Feb 2010 21:52:58 +0000 (13:52 -0800)]
dbus-spawn.h is internal, it shouldn't be installed
Romain Pokrzywka [Tue, 2 Feb 2010 20:31:31 +0000 (12:31 -0800)]
now fix the build for the tests; turns out we need another set of exports, since some tests are compiled in the client lib and some are in the internal lib...
Romain Pokrzywka [Tue, 2 Feb 2010 19:13:26 +0000 (11:13 -0800)]
refactor the cmake build to match with autotools: only export client symbols in dbus-1 and use and internal library for the rest. Currently this library is statically linked to the apps but it can be made dynamic if wanted
Romain Pokrzywka [Tue, 2 Feb 2010 00:24:34 +0000 (16:24 -0800)]
oops, this symbol belongs to the client exports
Romain Pokrzywka [Sat, 30 Jan 2010 03:18:37 +0000 (19:18 -0800)]
split the symbols into separate files matching the client/shared/util sections of the code, and generate the final .def file dynamically
Romain Pokrzywka [Sat, 30 Jan 2010 01:49:37 +0000 (17:49 -0800)]
make the def handling simpler with cmake, we don't need to specify the library name anyway
Ralf Habacker [Sat, 6 Feb 2010 23:32:13 +0000 (00:32 +0100)]
win32 fix: _dbus_get_install_root(): there are more places to fix case insensitive pattern search
Ralf Habacker [Sat, 6 Feb 2010 23:29:10 +0000 (00:29 +0100)]
win32 fix: _dbus_get_install_root(): to catch all cases perform case insensitive pattern search
Colin Walters [Wed, 3 Feb 2010 17:13:38 +0000 (12:13 -0500)]
Release 1.2.20
Colin Walters [Tue, 2 Feb 2010 17:37:17 +0000 (12:37 -0500)]
Fix inotify shutdown
We were incorrectly passing NULL for a DBusList when the usage expected
is a pointer to a NULL DBusList pointer. Also during dbus_shutdown
we need to actually close the inotify fd, and remove our watch.
Move the shutdown handler out of bus.c and into inotify where we
can do all of this cleanly.
(cherry picked from commit
90fe96b1875350f86a4a773d4a0a22009950dd4d)
Ralf Habacker [Wed, 3 Feb 2010 13:14:03 +0000 (14:14 +0100)]
linux cmake build system related compile fix
Colin Walters [Wed, 3 Feb 2010 07:36:38 +0000 (08:36 +0100)]
Fix compilation in --disable-selinux case
_dbus_change_to_daemon_user moved into selinux.c for the --with-selinux
(and audit) case because that's where all of the relevant libcap headers
were being used. However in the --disable-selinux case this didn't
compile and wasn't very clean.
If we don't have libaudit, use the legacy direct setgid/setuid bits
we had before in dbus-sysdeps-util-unix.c.
Colin Walters [Tue, 2 Feb 2010 19:57:47 +0000 (14:57 -0500)]
Fix compilation in --disable-selinux case
_dbus_change_to_daemon_user moved into selinux.c for the --with-selinux
(and audit) case because that's where all of the relevant libcap headers
were being used. However in the --disable-selinux case this didn't
compile and wasn't very clean.
If we don't have libaudit, use the legacy direct setgid/setuid bits
we had before in dbus-sysdeps-util-unix.c.
Colin Walters [Tue, 2 Feb 2010 17:37:17 +0000 (12:37 -0500)]
Fix inotify shutdown
We were incorrectly passing NULL for a DBusList when the usage expected
is a pointer to a NULL DBusList pointer. Also during dbus_shutdown
we need to actually close the inotify fd, and remove our watch.
Move the shutdown handler out of bus.c and into inotify where we
can do all of this cleanly.
Colin Walters [Tue, 2 Feb 2010 16:00:09 +0000 (11:00 -0500)]
Merge branch 'my-dbus-1.2'
Conflicts:
configure.in
Colin Walters [Tue, 2 Feb 2010 15:31:28 +0000 (10:31 -0500)]
Release 1.2.18
Tom Hughes [Sun, 13 Dec 2009 21:30:09 +0000 (13:30 -0800)]
Use monotonic clock for _dbus_get_current_time() if it's available.
_dbus_get_current_time() is used for timeouts, but uses gettimeofday(), which
relies on the wall clock time, which can change. If the time is changed forwards
or backwards, the timeouts are no longer valid, so the monotonic clock must be used.
https://bugs.freedesktop.org/show_bug.cgi?id=25624
Signed-off-by: Colin Walters <walters@verbum.org>
Ralf Habacker [Tue, 2 Feb 2010 13:26:50 +0000 (14:26 +0100)]
win32 fix: provide separate def file for cmake until there is full splitlib support for cmake
Ralf Habacker [Tue, 2 Feb 2010 13:14:20 +0000 (14:14 +0100)]
win32 fix for commit
8a9880ffd2b81df38bb0e3492bda7a9636ac0280 - Clean up inotify watch handling
Colin Walters [Mon, 1 Feb 2010 22:38:25 +0000 (17:38 -0500)]
Don't crash when reloading if we haven't loaded user database yet
The user database is populated on-demand, but the cache dropping
code assumed it had been initialized. Simply check for NULL.
https://bugs.freedesktop.org/show_bug.cgi?id=26182
Colin Walters [Mon, 1 Feb 2010 22:27:26 +0000 (17:27 -0500)]
Merge branch 'my-dbus-1.2'
Colin Walters [Mon, 1 Feb 2010 21:45:48 +0000 (16:45 -0500)]
Move system-activation.txt into non-conditional EXTRA_DIST
It doesn't depend on the XML doc generation.
Colin Walters [Thu, 28 Jan 2010 21:26:39 +0000 (16:26 -0500)]
Clean up inotify watch handling
Substantially based on a patch by Matthias Clasen <mclasen@redhat.com>
kqueue implementation by Joe Marcus Clarke <marcus@freebsd.org>
Previously, when we detected a configuration change (which included
the set of config directories to monitor for changes), we would
simply drop all watches, then readd them.
The problem with this is that it introduced a race condition where
we might not be watching one of the config directories for changes.
Rather than dropping and readding, change the OS-dependent monitoring
API to simply take a new set of directories to monitor. Implicit
in this is that the OS-specific layer needs to keep track of the
previously monitored set.
Ralf Habacker [Fri, 29 Jan 2010 22:57:07 +0000 (23:57 +0100)]
_dbus_change_to_daemon_user() is platform related and commit
0a3905d7f3b2ff43b09479863775939f9c8acad4 broke windows builds
Ralf Habacker [Fri, 29 Jan 2010 22:48:34 +0000 (23:48 +0100)]
reverted
2aea64fbb69287f52bb9910e89b6732854f47be8 because it breaks msvc2008 builds
Colin Walters [Thu, 28 Jan 2010 22:31:36 +0000 (17:31 -0500)]
Update messagebus.in init script to start earlier
Patch from Fedora.
Colin Walters [Thu, 28 Jan 2010 22:28:25 +0000 (17:28 -0500)]
[doc] diagram.[svg,png] to EXTRA_DIST
These files are part of the docs and should appear in tarballs.
Colin Walters [Thu, 28 Jan 2010 22:09:15 +0000 (17:09 -0500)]
Merge branch 'my-dbus-1.2'
Conflicts:
bus/Makefile.am
dbus/dbus-sysdeps-util-unix.c
dbus/dbus-transport.c
test/test-service.c
Colin Walters [Thu, 28 Jan 2010 20:04:14 +0000 (15:04 -0500)]
Don't drop pending activations when reloading configuration
The reload handling for activation simply dropped all knowledge
of pending activations, which was clearly wrong. Refactor things
so that reload only reloads directories, server address etc.
Based on a patch originally from Matthias Clasen <mclasen@redhat.com>
Colin Walters [Thu, 28 Jan 2010 00:38:44 +0000 (19:38 -0500)]
Switch to libcap-ng, avoid linking libdbus against libcap[-ng]
(Commit message written by Colin Walters <walters@verbum.org>)
A current Fedora goal is to convert projects to libcap-ng which
more easily allows dropping Linux capabilities. For software
which also links to libdbus, it's problematic to link against
libcap as well.
Though really, libdbus should have never linked against libcap
in the first place, which is another thing this patch changes
by moving the libcap-using bits out of dbus/ and into bus/.
https://bugzilla.redhat.com/show_bug.cgi?id=518541
Colin Walters [Fri, 15 Jan 2010 21:57:39 +0000 (16:57 -0500)]
Add Will Thompson and Simon McVittie to reviewers, add emails to all
The reviewer list was sorely lacking actual email addresses; fix this.
Also add Will and Simon.
Colin Walters [Mon, 14 Dec 2009 23:12:24 +0000 (18:12 -0500)]
Ignore exit code zero from activated services
A variety of system components have migrated from legacy init into DBus
service activation. Many of these system components "daemonize", which
involves forking. The DBus activation system treated an exit as an
activation failure, assuming that the child process which grabbed the
DBus name didn't run first.
While we're in here, also differentiate in this code path between the
servicehelper (system) versus direct activation (session) paths. In
the session activation path our error message mentioned a helper
process which was confusing, since none was involved.
Based on a patch and debugging research from Ray Strode <rstrode@redhat.com>
Will Thompson [Wed, 28 Oct 2009 19:40:38 +0000 (19:40 +0000)]
Print all-printable-ASCII byte arrays as strings
In practice, ay seems to be used mostly for binary data (in which case,
hex output is fine) or for Unix file paths (because they may be
non-UTF-8) and similar human-readable strings. So let's print the latter
similarly to strings.
Will Thompson [Wed, 9 Sep 2009 19:58:53 +0000 (20:58 +0100)]
Print byte arrays as nicely-formatted hex.
Will Thompson [Sat, 8 Aug 2009 13:29:12 +0000 (14:29 +0100)]
Add an accessor for the loader's corruption reason
Will Thompson [Sat, 8 Aug 2009 12:57:11 +0000 (13:57 +0100)]
Include reason when reporting corrupt messages
It would have been much easier to diagnose fd.o#19723 if the error
message had said more than just "Message is corrupted".
Will Thompson [Sat, 8 Aug 2009 13:03:46 +0000 (14:03 +0100)]
Forbid zero serial numbers
Will Thompson [Wed, 9 Sep 2009 19:35:13 +0000 (20:35 +0100)]
Make array-printing code easier to follow
Previously dbus_message_iter_get_arg_type() was called twice: once in
the loop condition to update 'current_type', and once to check if the
loop will run again. This patch moves updating current_type to the end
of the loop body.
James Westby [Thu, 1 Oct 2009 14:09:54 +0000 (15:09 +0100)]
Correct timeout handling
The timeout handling code subtracts the elapsed time from the timeout
each time a message is received, which drastically reduces the timeout
in circumstances such as service activation.
Correct so that the timeout is never modified, and the elapsed time
instead subtracted where necessary.
Signed-off-by: James Westby <jw+debian@jameswestby.net>
Signed-off-by: Scott James Remnant <scott@ubuntu.com>
Marcus Brinkmann [Mon, 25 Jan 2010 14:57:04 +0000 (15:57 +0100)]
Allow to override test tool path for cross compilation setup.
Hendrik Buschmeier [Thu, 28 Jan 2010 10:22:32 +0000 (11:22 +0100)]
Bug 23502 - corrected wrong verbose-output
Marcus Brinkmann [Fri, 15 Jan 2010 16:57:58 +0000 (17:57 +0100)]
Invoke AC_PROG_MKDIR_P to make sure MKDIR_P is defined.
Marcus Brinkmann [Fri, 15 Jan 2010 16:54:40 +0000 (17:54 +0100)]
Only list those symbols that can be exported (new toolchain barfs on undefined symbols in export list).
Marcus Brinkmann [Fri, 15 Jan 2010 16:53:43 +0000 (17:53 +0100)]
Include errno.h.
Marcus Brinkmann [Wed, 20 Jan 2010 12:24:35 +0000 (13:24 +0100)]
Fix buffer underrun and clarify condition.
Colin Walters [Fri, 15 Jan 2010 21:57:39 +0000 (16:57 -0500)]
Add Will Thompson and Simon McVittie to reviewers, add emails to all
The reviewer list was sorely lacking actual email addresses; fix this.
Also add Will and Simon.
Romain Pokrzywka [Thu, 14 Jan 2010 07:59:22 +0000 (08:59 +0100)]
fixes bug where sometimes objects were not unregistered from dbus
although their app had exited. As it turns out it was a missing
implementation of the method _dbus_fd_set_close_on_exec() for windows.
It's been tested with msvc2005, msvc2008, and mingw, and solves
all the unregistering issues on many kde apps.
Will Thompson [Thu, 3 Sep 2009 14:33:32 +0000 (15:33 +0100)]
Rename DBusConnection *disconnected param to connection
Will Thompson [Thu, 30 Jul 2009 09:49:33 +0000 (10:49 +0100)]
Group match rules by their interface.
In my informal studies of "normal" sets of match rules, only checking
match rules with the appropriate interface for the message reduces the
number that need to be checked by almost 100x on average (ranging from
halving for messages from the bus daemon, to a >200x reduction in many
cases). This reduces the overhead added to dispatching each message by
having lots of irrelevant match rules.
Will Thompson [Wed, 29 Jul 2009 19:03:40 +0000 (20:03 +0100)]
Extract rule_list_remove_by_connection
Will Thompson [Wed, 29 Jul 2009 17:52:28 +0000 (18:52 +0100)]
Extract freeing a DBusList<BusMatchRule>
Will Thompson [Wed, 29 Jul 2009 16:53:37 +0000 (17:53 +0100)]
Don't bother re-matching features we've checked.
This is currently not a big deal, but will make more of a difference
once the set of match rules is partitioned by more features than just
the message type.
Will Thompson [Wed, 29 Jul 2009 16:48:21 +0000 (17:48 +0100)]
Index match rules by message type
This avoids scanning all the signal matches while dispatching method
calls and returns, which are rarely matched against.
Will Thompson [Wed, 29 Jul 2009 16:47:04 +0000 (17:47 +0100)]
Add a constant for the number of message types
Ralf Habacker [Wed, 23 Dec 2009 22:28:48 +0000 (23:28 +0100)]
added tranport address format to dbus specification
Ralf Habacker [Wed, 23 Dec 2009 10:09:42 +0000 (11:09 +0100)]
added initial tcp transport section
Ralf Habacker [Wed, 23 Dec 2009 09:40:48 +0000 (10:40 +0100)]
nonce tcp support requires _dbus_string_equal_len also when build without tests
Ralf Habacker [Tue, 22 Dec 2009 09:07:37 +0000 (10:07 +0100)]
fixed install root when using msvc ide
Ralf Habacker [Sun, 20 Dec 2009 10:24:32 +0000 (11:24 +0100)]
moved out dbus file related functions from sysdeps into separate files - tested on windows
Ralf Habacker [Sun, 20 Dec 2009 09:45:08 +0000 (10:45 +0100)]
win32 fix: disabled some tests, they may be not intendent for windows or need to be implemented
Ralf Habacker [Sat, 19 Dec 2009 19:51:54 +0000 (20:51 +0100)]
let dbus_verbose print file name, line number and function name if available; this eases debugging.
Matthias Clasen [Fri, 18 Dec 2009 19:29:40 +0000 (14:29 -0500)]
Bug 25697 - Fix memory leak in policy reload
Signed-off-by: Colin Walters <walters@verbum.org>
Ralf Habacker [Fri, 18 Dec 2009 16:40:44 +0000 (17:40 +0100)]
removed local definition of _DBUS_GNUC_PRINTF, it is already in dbus-macro.h
Ralf Habacker [Fri, 18 Dec 2009 16:35:43 +0000 (17:35 +0100)]
DBusPipe related unix compile fix
Ralf Habacker [Fri, 18 Dec 2009 15:54:44 +0000 (16:54 +0100)]
added pipe related files real
Ralf Habacker [Fri, 18 Dec 2009 15:46:11 +0000 (16:46 +0100)]
Merge branch 'master' of ssh://git.freedesktop.org/git/dbus/dbus
Ralf Habacker [Fri, 18 Dec 2009 15:45:50 +0000 (16:45 +0100)]
windows does not support fork, skip it
Ralf Habacker [Fri, 18 Dec 2009 12:32:37 +0000 (13:32 +0100)]
moved out DBusPipe implementation into separate files
Ralf Habacker [Fri, 18 Dec 2009 12:32:37 +0000 (13:32 +0100)]
moved out DBusPipe implementation from into separate files
Colin Walters [Mon, 14 Dec 2009 23:12:24 +0000 (18:12 -0500)]
Ignore exit code zero from activated services
A variety of system components have migrated from legacy init into DBus
service activation. Many of these system components "daemonize", which
involves forking. The DBus activation system treated an exit as an
activation failure, assuming that the child process which grabbed the
DBus name didn't run first.
While we're in here, also differentiate in this code path between the
servicehelper (system) versus direct activation (session) paths. In
the session activation path our error message mentioned a helper
process which was confusing, since none was involved.
Based on a patch and debugging research from Ray Strode <rstrode@redhat.com>
Ralf Habacker [Mon, 14 Dec 2009 22:31:38 +0000 (23:31 +0100)]
added new variable DBUS_BUILD_TIMESTAMP
Ralf Habacker [Mon, 7 Dec 2009 09:16:10 +0000 (10:16 +0100)]
fixed memory leak