platform/upstream/dbus.git
13 years agoAdd support for building "modular" tests, which require GLib and dbus-glib
Simon McVittie [Tue, 22 Feb 2011 11:43:11 +0000 (11:43 +0000)]
Add support for building "modular" tests, which require GLib and dbus-glib

For the moment, the CMake build system only knows about the existing
"embedded tests"; make it define both symbols, though.

We use GLib because it has GTester (and life's too short to write yet another
JUnit clone), and dbus-glib for the main-loop integration only (see
fd.o #31515 for thoughts on incorporating just those two functions in a
separate library in the dbus tarball).

I'm not using DBusLoop for the main loop because I specifically don't
want to use non-public API or ABI of libdbus in the modular tests. If we make
sure they work against a shared libdbus, we can use them to test the
installed system, with "make installcheck".

Reviewed-by: Will Thompson <will.thompson@collabora.co.uk>
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=34570

13 years agoDon't disable GLib assertions when disabling our own assertions
Simon McVittie [Tue, 22 Feb 2011 11:39:23 +0000 (11:39 +0000)]
Don't disable GLib assertions when disabling our own assertions

We no longer use GLib internally, and assertions are how it'll report test
failures when we add GTest-based tests.

Reviewed-by: Will Thompson <will.thompson@collabora.co.uk>
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=34570

13 years agodbus_message_demarshal_bytes_needed: correct a wrong assertion
Simon McVittie [Thu, 9 Jun 2011 17:35:43 +0000 (18:35 +0100)]
dbus_message_demarshal_bytes_needed: correct a wrong assertion

It's entirely possible for a message to indicate how many bytes we need,
without actually being complete.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=38120
Reviewed-by: Will Thompson <will.thompson@collabora.co.uk>
13 years ago_dbus_header_byteswap: change the first byte of the message, not just the struct...
Simon McVittie [Thu, 9 Jun 2011 16:52:10 +0000 (17:52 +0100)]
_dbus_header_byteswap: change the first byte of the message, not just the struct member

This has been wrong approximately forever, for instance see:
http://lists.freedesktop.org/archives/dbus/2007-March/007357.html

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=38120
Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=629938
Reviewed-by: Will Thompson <will.thompson@collabora.co.uk>
13 years agoConsistently use atomic operations for all access to DBusConnection refcount
Simon McVittie [Fri, 10 Jun 2011 17:08:11 +0000 (18:08 +0100)]
Consistently use atomic operations for all access to DBusConnection refcount

Trying to mix atomic operations with locked non-atomic operations is
broken: the atomic ops aren't necessarily atomic with respect to the
locked non-atomic ops, and the non-atomic ops aren't protected by the
lock because the atomic ops can change the refcount behind their back.

In theory we could use the connection lock if atomic ops aren't supported
(making a per-connection lock cheaper than the global lock used to
implement atomic ops) *and* our mutexes are recursive (making it safe
against deadlocks)... but life's too short.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=38005
Tested-by: Will Manley <freedesktop williammanley net>
Reviewed-by: Will Thompson <will.thompson@collabora.co.uk>
13 years agoNEWS
Simon McVittie [Wed, 8 Jun 2011 10:35:22 +0000 (11:35 +0100)]
NEWS

13 years agobus: use ln -fs to enable dbus in systemd, not $(LN_S)
Simon McVittie [Tue, 7 Jun 2011 13:01:39 +0000 (14:01 +0100)]
bus: use ln -fs to enable dbus in systemd, not $(LN_S)

Using $(LN_S) is inappropriate because it could in theory mean either
ln -s, ln or cp -p depending on autoconf checks.

Not using -f breaks reinstallation directly from source (DESTDIR unset),
because the symlinks will already exist.

Because systemd isn't currently portable to non-Linux, let alone
non-SUS-compliant systems, it seems safe to assume that ln -fs behaves
as specified by SUS if systemd was found.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=37870
Reviewed-by: Colin Walters <walters@verbum.org>
13 years agoNEWS
Simon McVittie [Tue, 7 Jun 2011 13:36:15 +0000 (14:36 +0100)]
NEWS

13 years agoRemove support for -Wl,--gc-sections altogether
Simon McVittie [Mon, 6 Jun 2011 08:59:37 +0000 (09:59 +0100)]
Remove support for -Wl,--gc-sections altogether

Packagers should only enable this flag if they have confirmed that it
actually works on their toolchain (it's the sort of rarely used feature
that frequently regresses on obscure architectures/OSs without anyone
noticing), and also confirmed that it is actually a significant size win
for their configuration.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=33466
Reviewed-by: Colin Walters <walters@verbum.org>
13 years agodon't try to build dbus-daemon-launch-helper for Windows
Mark Brand [Wed, 1 Jun 2011 21:51:21 +0000 (23:51 +0200)]
don't try to build dbus-daemon-launch-helper for Windows

Fixed regression in b0acded which breaks build for Windows.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=37838
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
13 years agoUse #!/bin/sh for run-with-tmp-session-bus.sh
Simon McVittie [Wed, 1 Jun 2011 17:36:16 +0000 (18:36 +0100)]
Use #!/bin/sh for run-with-tmp-session-bus.sh

It doesn't seem to have any bashisms, and bash isn't in /bin on *BSD.

Suggested by Timothy Redaelli.

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

13 years agoadd a release name here too
Simon McVittie [Wed, 1 Jun 2011 16:04:27 +0000 (17:04 +0100)]
add a release name here too

13 years agoDevelopment version
Simon McVittie [Wed, 1 Jun 2011 11:16:53 +0000 (12:16 +0100)]
Development version

13 years agoPrepare version 1.4.10 dbus-1.4.10
Simon McVittie [Wed, 1 Jun 2011 11:01:58 +0000 (12:01 +0100)]
Prepare version 1.4.10

13 years agoNEWS
Simon McVittie [Wed, 25 May 2011 17:17:53 +0000 (18:17 +0100)]
NEWS

13 years agobus_context_log: divert messages to stderr if we're not using syslog
Simon McVittie [Wed, 16 Mar 2011 14:52:39 +0000 (14:52 +0000)]
bus_context_log: divert messages to stderr if we're not using syslog

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=35358
Reviewed-by: Colin Walters <walters@verbum.org>
13 years agoprocess_config_first_time_only: initialize syslog as intended.
Simon McVittie [Tue, 15 Mar 2011 15:42:56 +0000 (15:42 +0000)]
process_config_first_time_only: initialize syslog as intended.

On Linux, we previously called openlog() (with different options!) while
initializing SELinux; leave SELinux messages as LOG_USER|LOG_INFO in case
anyone was relying on that, but let the rest of our log messages come
out as LOG_DAEMON.

Also enable LOG_PERROR (copy syslog messages to stderr) unconditionally;
we can make this an autoconf check if anyone's pet Unix doesn't have
LOG_PERROR.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=35358
Reviewed-by: Colin Walters <walters@verbum.org>
13 years ago_dbus_init_system_log: remove FIXME on Windows
Simon McVittie [Tue, 15 Mar 2011 15:32:02 +0000 (15:32 +0000)]
_dbus_init_system_log: remove FIXME on Windows

We don't need any initialization here, so there's nothing to fix.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=35358
Reviewed-by: Colin Walters <walters@verbum.org>
13 years agobus_context_check_security_policy: syslog if we hit the outgoing quota
Simon McVittie [Tue, 15 Mar 2011 14:16:18 +0000 (14:16 +0000)]
bus_context_check_security_policy: syslog if we hit the outgoing quota

In practice, nothing copes with missing broadcast signals, so the least
we can do is make the failure mode visible.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=35358
Reviewed-by: Colin Walters <walters@verbum.org>
13 years agobus_context_check_security_policy: for SELinux denials, share code to set errors
Simon McVittie [Tue, 15 Mar 2011 14:02:06 +0000 (14:02 +0000)]
bus_context_check_security_policy: for SELinux denials, share code to set errors

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=35358
Reviewed-by: Colin Walters <walters@verbum.org>
13 years agobus_context_check_security_policy: factor out complain_about_message
Simon McVittie [Tue, 15 Mar 2011 13:05:23 +0000 (13:05 +0000)]
bus_context_check_security_policy: factor out complain_about_message

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=35358
Reviewed-by: Colin Walters <walters@verbum.org>
13 years agoCheck for X even if X11 autolaunching is disabled
Simon McVittie [Fri, 25 Feb 2011 12:49:54 +0000 (12:49 +0000)]
Check for X even if X11 autolaunching is disabled

DBUS_ENABLE_X11_AUTOLAUNCH obviously requires DBUS_BUILD_X11. However,
the converse is not true.

If DBUS_BUILD_X11 is defined, dbus-launch will be able to connect to
the X server to determine when the session ends; most distributors will
want this, but it can be disabled with the standard Autoconf option
--without-x.

If DBUS_ENABLE_X11_AUTOLAUNCH is *also* defined, dbus-launch and libdbus
will be willing to perform autolaunch. Again, most distributors will want
this, but it can be disabled with --disable-x11-autolaunch.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=19997
Reviewed-by: Colin Walters <walters@verbum.org>
13 years agotest-autolaunch: don't expect autolaunching to work if X11 is disabled
Simon McVittie [Fri, 25 Feb 2011 12:34:38 +0000 (12:34 +0000)]
test-autolaunch: don't expect autolaunching to work if X11 is disabled

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=19997
Reviewed-by: Colin Walters <walters@verbum.org>
13 years agoNEWS
Simon McVittie [Wed, 25 May 2011 16:00:07 +0000 (17:00 +0100)]
NEWS

13 years agoWhen checking for __sync_sub_and_fetch, don't underquote, to shut up recent autoconf
Simon McVittie [Mon, 9 May 2011 17:49:54 +0000 (18:49 +0100)]
When checking for __sync_sub_and_fetch, don't underquote, to shut up recent autoconf

Without the correct number of levels of quoting, autoconf mistakenly
believes we didn't use AC_LANG_SOURCE where required. (In fact,
AC_LANG_PROGRAM calls AC_LANG_SOURCE.)

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=19681
Reviewed-by: Colin Walters <walters@verbum.org>
13 years agoWhen checking for va_copy, use AC_LANG_SOURCE to shut up recent autoconf
Simon McVittie [Mon, 9 May 2011 17:48:52 +0000 (18:48 +0100)]
When checking for va_copy, use AC_LANG_SOURCE to shut up recent autoconf

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=19681
Reviewed-by: Colin Walters <walters@verbum.org>
13 years agoUse TP_ADD_COMPILER_FLAG to simplify application of warning-like CFLAGS
Simon McVittie [Mon, 9 May 2011 18:03:12 +0000 (19:03 +0100)]
Use TP_ADD_COMPILER_FLAG to simplify application of warning-like CFLAGS

This also means we check for support for them.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=19681
Reviewed-by: Colin Walters <walters@verbum.org>
13 years agoUse TP_COMPILER_WARNINGS for all -Wfoo options
Simon McVittie [Mon, 9 May 2011 18:02:46 +0000 (19:02 +0100)]
Use TP_COMPILER_WARNINGS for all -Wfoo options

This consistently checks whether all these options actually work in the
current version of gcc.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=19681
Reviewed-by: Colin Walters <walters@verbum.org>
13 years agoImport tp-compiler-flag.m4 and tp-compiler-warnings.m4 from telepathy-glib
Simon McVittie [Mon, 9 May 2011 17:32:51 +0000 (18:32 +0100)]
Import tp-compiler-flag.m4 and tp-compiler-warnings.m4 from telepathy-glib

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=19681
Reviewed-by: Colin Walters <walters@verbum.org>
13 years agoNEWS
Simon McVittie [Wed, 25 May 2011 15:50:09 +0000 (16:50 +0100)]
NEWS

13 years agohandle_server_data_anonymous_mech: remove unnecessary debug output
Simon McVittie [Tue, 18 Jan 2011 16:34:12 +0000 (16:34 +0000)]
handle_server_data_anonymous_mech: remove unnecessary debug output

Doing a malloc and a hex-encoding pass just to produce a _dbus_verbose
message (i.e. a message that, in practice, nobody will see) seems like
overkill, and this block had incorrect error handling (not checking the
result of _dbus_string_init) which upsets static analysis tools.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=29881
Bug-NB: NB#180486
Reviewed-by: Cosimo Alfarano <cosimo.alfarano@collabora.co.uk>
13 years agodbus-launch: pass_info: always free strings on OOM
Simon McVittie [Tue, 18 Jan 2011 16:29:53 +0000 (16:29 +0000)]
dbus-launch: pass_info: always free strings on OOM

This doesn't really do anything, because we're about to exit anyway, but
it placates static analysis tools.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=29881
Bug-NB: NB#180486
Reviewed-by: Cosimo Alfarano <cosimo.alfarano@collabora.co.uk>
13 years agodbus-send: remove minor dead code
Simon McVittie [Wed, 26 Jan 2011 18:40:49 +0000 (18:40 +0000)]
dbus-send: remove minor dead code

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=33128
Reviewed-by: Cosimo Alfarano <cosimo.alfarano@collabora.co.uk>
13 years agodbus_connection_dispatch: remove dead code
Simon McVittie [Wed, 26 Jan 2011 18:38:01 +0000 (18:38 +0000)]
dbus_connection_dispatch: remove dead code

There's no way pending can be non-NULL here; if it was, we'd have jumped
straight past this block (getting filters from the connection), because
replies to pending calls don't go through filters.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=33128
Reviewed-by: Cosimo Alfarano <cosimo.alfarano@collabora.co.uk>
13 years agoSpelling fix.
Ralf Habacker [Sun, 22 May 2011 18:33:47 +0000 (20:33 +0200)]
Spelling fix.

13 years agoDefinition is obsolate with commit e0fc90bdf2c60a4c77fffaf490d6f06b2bd6999d
Ralf Habacker [Sun, 22 May 2011 14:53:48 +0000 (16:53 +0200)]
Definition is obsolate with commit e0fc90bdf2c60a4c77fffaf490d6f06b2bd6999d

13 years agoTo avoid double dbus version definitions take values from configure.ac.
Ralf Habacker [Sun, 22 May 2011 11:02:34 +0000 (13:02 +0200)]
To avoid double dbus version definitions take values from configure.ac.

13 years agoDBusNonceFile: don't always fail when use_subdir=TRUE, i.e. on Unix
Simon McVittie [Tue, 22 Feb 2011 13:42:46 +0000 (13:42 +0000)]
DBusNonceFile: don't always fail when use_subdir=TRUE, i.e. on Unix

In shell-like pseudocode, the desired result is:

if $use_subdir
  dir = $tmpdir/dbus_nonce-$random
  path = $dir/nonce
  mkdir $dir
  write file at $path
else
  dir = $user_owned_place
  path = $dir/dbus_nonce-$random
  write file at $path

However, /nonce was accidentally appended to $dir instead of $path,
resulting in an attempt to mkdir /tmp/dbus_nonce-XXXX/nonce when
dbus_nonce-XXXX hadn't been created yet.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=34569
Tested-by: David Zeuthen <davidz@redhat.com>
Reviewed-by: David Zeuthen <davidz@redhat.com>
13 years agoRelax review criteria for the review cabal themselves, as discussed on-list
Simon McVittie [Wed, 25 May 2011 15:02:43 +0000 (16:02 +0100)]
Relax review criteria for the review cabal themselves, as discussed on-list

Colin agreed in principle and nobody actually objected, so here we go...

13 years agoAdd davidz to the review cabal
Simon McVittie [Wed, 25 May 2011 15:01:57 +0000 (16:01 +0100)]
Add davidz to the review cabal

Acked-by: Will Thompson <will.thompson@collabora.co.uk>
Acked-by: Colin Walters <walters@verbum.org>
13 years agodbus_connection_can_send_type: clarify that invalid codes are allowed here
Simon McVittie [Thu, 3 Mar 2011 17:02:23 +0000 (17:02 +0000)]
dbus_connection_can_send_type: clarify that invalid codes are allowed here

This is sufficiently unusual that it seems worth saying explicitly

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=35182
Reviewed-by: Will Thompson <will.thompson@collabora.co.uk>
13 years agoNEWS
Simon McVittie [Fri, 29 Apr 2011 14:44:35 +0000 (15:44 +0100)]
NEWS

13 years agominotaur: bail if asked to monitor >1 bus
Will Thompson [Fri, 12 Feb 2010 19:19:05 +0000 (19:19 +0000)]
minotaur: bail if asked to monitor >1 bus

A coworker was just tripped up by `dbus-monitor --session --system` only
monitoring the system bus. This patch would have saved him reproducing a
tricky bug several times!

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=26548
Reviewed-by: Colin Walters <walters@verbum.org>
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
13 years agoNEWS for 1.4
Simon McVittie [Wed, 27 Apr 2011 16:59:28 +0000 (17:59 +0100)]
NEWS for 1.4

13 years agomachine-id: fall back to reading /etc/machine-id if D-Bus machine ID is not available
Lennart Poettering [Fri, 11 Mar 2011 01:58:39 +0000 (02:58 +0100)]
machine-id: fall back to reading /etc/machine-id if D-Bus machine ID is not available

Newer systemd-based systems support a global machine ID with the same
metrics as the D-Bus machine ID, but more powerful semantics (for
example on ro media) in /etc/machine-id.

If the D-Bus machine ID cannot be read, fall back to the systemd machine
ID.

This is a first step towards allowing D-Bus to be started up during
early boot where /var is not available.

[plus a whitespace fix -smcv]

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

13 years ago_dbus_check_fdleaks_enter, _dbus_check_fdleaks_leave: whitespace
Simon McVittie [Mon, 21 Mar 2011 10:16:28 +0000 (10:16 +0000)]
_dbus_check_fdleaks_enter, _dbus_check_fdleaks_leave: whitespace

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=35173
Reviewed-by: Colin Walters <walters@verbum.org>
13 years agoDon't report file descriptors as "leaked" if they were already open
Simon McVittie [Mon, 14 Mar 2011 16:53:23 +0000 (16:53 +0000)]
Don't report file descriptors as "leaked" if they were already open

This is necessary to run the regression tests under valgrind (if
telling it to output to a dedicated fd), gdb, fakeroot etc.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=35173
Reviewed-by: Colin Walters <walters@verbum.org>
13 years agoNEWS
Simon McVittie [Tue, 26 Apr 2011 18:19:24 +0000 (19:19 +0100)]
NEWS

13 years agoMerge remote-tracking branch 'origin/dbus-1.4' into dbus-1.4
Simon McVittie [Tue, 26 Apr 2011 18:18:35 +0000 (19:18 +0100)]
Merge remote-tracking branch 'origin/dbus-1.4' into dbus-1.4

13 years agoNEWS
Simon McVittie [Tue, 26 Apr 2011 18:15:09 +0000 (19:15 +0100)]
NEWS

13 years agoactivation: Use _dbus_system_log for activation information
Colin Walters [Sat, 26 Mar 2011 19:52:50 +0000 (15:52 -0400)]
activation: Use _dbus_system_log for activation information

Log when we are activating something (and whether it's via systemd)
as well as when we fail to activate, and when one succeeds.

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

13 years agoAdd dbus-1-uninstalled.pc.in
Simon McVittie [Tue, 4 Jan 2011 19:12:46 +0000 (19:12 +0000)]
Add dbus-1-uninstalled.pc.in

See: http://smcv.pseudorandom.co.uk/2008/09/pc-uninstalled/

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=32827
Reviewed-by: Colin Walters <walters@verbum.org>
13 years agoAdd support for --disable-gc-sections for broken toolchains
Simon McVittie [Mon, 21 Feb 2011 17:13:12 +0000 (17:13 +0000)]
Add support for --disable-gc-sections for broken toolchains

Also use AC_LINK_IFELSE rather than reinventing it as a shell function.
This was the last user of ld_supports_flag, so, delete it.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=33466
Reviewed-by: Colin Walters <walters@verbum.org>
13 years agoDrop outdated list of options from README, mention configure --help instead
Simon McVittie [Mon, 21 Feb 2011 16:33:29 +0000 (16:33 +0000)]
Drop outdated list of options from README, mention configure --help instead

13 years agoRelease notes for the -fPIE change
Simon McVittie [Mon, 21 Feb 2011 16:34:13 +0000 (16:34 +0000)]
Release notes for the -fPIE change

13 years agoDon't force use of -fPIE for the dbus-daemon if apparently supported
Simon McVittie [Mon, 21 Feb 2011 16:23:24 +0000 (16:23 +0000)]
Don't force use of -fPIE for the dbus-daemon if apparently supported

It's a minor security benefit, but not automatically beneficial (it
enables ASLR, but breaks prelinking, some buggy toolchains, and some gdb
versions). Distributions who know their infrastructure works well can
enable it just as easily via

    ./configure CFLAGS="-fPIE" LDFLAGS="-pie"

without extra support from us, and that's a generic solution applicable to
many packages.

Similarly, don't force libdbus and libdbus-internal to be PIC: libtool
knows better than we do whether that's necessary/beneficial on a
particular platform.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=16621
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=27215
Bug-NB: NB#171940
Reviewed-by: Colin Walters <walters@verbum.org>
13 years agoInstall dbus-daemon and dbus-daemon-launch-helper in the conventional way
Simon McVittie [Tue, 22 Mar 2011 12:11:27 +0000 (12:11 +0000)]
Install dbus-daemon and dbus-daemon-launch-helper in the conventional way

Also remove some pointless indirection (extra_tests etc.), don't install
the unused directory $(libexecdir)/dbus-1 (we actually install the
launch helper directly into $(libexecdir)), and allow dbus_daemondir to be
set on Windows rather than forcing dbus-daemon to be installed to
$(bindir) there.

dbus_daemon_execdir has to contain "exec" so that the dbus-daemon will be
installed by "make install-exec" and not "make install-data".

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=14512
Reviewed-by: Colin Walters <walters@verbum.org>
13 years agoWhen uploading docs, use rsync -p to set permissions
Simon McVittie [Mon, 11 Apr 2011 11:04:19 +0000 (12:04 +0100)]
When uploading docs, use rsync -p to set permissions

It turns out that rsync --chmod means "pretend the source files had
already had this chmod operation applied to them", and not "chmod the
destination files" like you'd expect.

As a result, the -p (--perms) option is also needed, so that rsync will
"preserve" the modified permissions. Otherwise, the docs will not be
group-writeable as intended, and only the person who made the previous
upload will be able to upload them next time.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=36130
Reviewed-by: Will Thompson <will.thompson@collabora.co.uk>
13 years agodevelopment version
Simon McVittie [Fri, 8 Apr 2011 14:22:31 +0000 (15:22 +0100)]
development version

13 years agoPrepare version 1.4.8 dbus-1.4.8
Simon McVittie [Fri, 8 Apr 2011 13:30:23 +0000 (14:30 +0100)]
Prepare version 1.4.8

13 years agoactivation: Strip out code to compare by Exec=
Colin Walters [Mon, 28 Mar 2011 17:21:35 +0000 (13:21 -0400)]
activation: Strip out code to compare by Exec=

In commit:
 075945f6        (John (J5) Palmieri     2005-07-14 20:44:15 +0000

some code was added to compare services by Exec key.  The changelog is
not pariticularly informative as to why this was added. But while
debugging other code, we noticed this.

Comparing by Exec key is not in the specification, and triggered a
problem where while converting services to use systemd for activation,
a change was made to use Exec=/bin/false and simply rely on systemd
to activate.

While I think it was broken for the service files to be changed
to Exec=/bin/false, we shouldn't be doing something here that's
not in the spec either.

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

13 years agooops, fix XML mis-nesting
Simon McVittie [Thu, 7 Apr 2011 17:27:52 +0000 (18:27 +0100)]
oops, fix XML mis-nesting

13 years agolist which parts of the Desktop Entry spec apply to service files
Sven Herzberg [Thu, 7 Apr 2011 17:25:34 +0000 (18:25 +0100)]
list which parts of the Desktop Entry spec apply to service files

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

13 years agoBreak up the monster conditional in config-parser so gcov can cope
Simon McVittie [Mon, 14 Mar 2011 11:45:04 +0000 (11:45 +0000)]
Break up the monster conditional in config-parser so gcov can cope

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=10887
Reviewed-by: Colin Walters <walters@verbum.org>
13 years agoUpdate NEWS
Simon McVittie [Mon, 14 Mar 2011 11:58:28 +0000 (11:58 +0000)]
Update NEWS

13 years agoRevert merge of master (dbus-1.5) into dbus-1.4
Simon McVittie [Mon, 14 Mar 2011 11:53:09 +0000 (11:53 +0000)]
Revert merge of master (dbus-1.5) into dbus-1.4

This reverts commits d1d395774435..09c9d6406b75f, keeping Lennart's
addition of UnknownInterface etc.

13 years agoprotocol: introduce four new errors
Lennart Poettering [Thu, 10 Mar 2011 03:06:32 +0000 (04:06 +0100)]
protocol: introduce four new errors

UnknownInterface, UnknownObject, UnknownProperty and PropertyReadOnly,
as discussed on the ML.

The first two are already used by various bindings, such as the Qt and
Java binding, but have never been made official.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=34527
Reviewed-by: David Zeuthen <davidz@redhat.com>
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
13 years agoMake dbus_type_is_valid into public API
Simon McVittie [Thu, 3 Mar 2011 17:35:14 +0000 (17:35 +0000)]
Make dbus_type_is_valid into public API

This is just as useful for bindings as dbus_signature_validate, and I
think it's a good design principle to say that anything checked in a
_dbus_return_if_fail should be something the caller could check
for themselves.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=20496
Reviewed-by: Will Thompson <will.thompson@collabora.co.uk>
13 years agoMerge branch 'dbus-1.4'
Simon McVittie [Thu, 10 Mar 2011 19:07:15 +0000 (19:07 +0000)]
Merge branch 'dbus-1.4'

13 years agoadd doxygen.stamp to .gitignore
Simon McVittie [Thu, 10 Mar 2011 13:06:09 +0000 (13:06 +0000)]
add doxygen.stamp to .gitignore

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=35182
Reviewed-by: Will Thompson <will.thompson@collabora.co.uk>
13 years ago_dbus_marshal_write_fixed_multi: remove obsolete FIXME comment
Simon McVittie [Thu, 3 Mar 2011 16:55:55 +0000 (16:55 +0000)]
_dbus_marshal_write_fixed_multi: remove obsolete FIXME comment

As far as I can tell, we've never accepted out-of-range booleans and
canonicalized them, ever since this was first committed in 2004. If sent,
they'd be considered to be invalid by recipients, so they're unambiguously
an error.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=35182
Reviewed-by: Will Thompson <will.thompson@collabora.co.uk>
13 years agodbus_message_iter_append_basic: remove misleading documentation
Simon McVittie [Thu, 3 Mar 2011 16:30:43 +0000 (16:30 +0000)]
dbus_message_iter_append_basic: remove misleading documentation

This function specifically doesn't support Unix fds and is documented as
such.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=35182
Reviewed-by: Will Thompson <will.thompson@collabora.co.uk>
13 years agoImplement uninstallation and cleanup for Doxygen docs, fixing distcheck
Simon McVittie [Thu, 10 Mar 2011 18:42:12 +0000 (18:42 +0000)]
Implement uninstallation and cleanup for Doxygen docs, fixing distcheck

Reviewed-by: Will Thompson <will.thompson@collabora.co.uk>
13 years agoMerge branch 'validate-when-sending-16338' into dbus-1.4
Simon McVittie [Thu, 10 Mar 2011 18:59:26 +0000 (18:59 +0000)]
Merge branch 'validate-when-sending-16338' into dbus-1.4

Reviewed-by: Will Thompson <will.thompson@collabora.co.uk>
13 years agodbus_type_is_basic etc.: it is an error to pass in bad typecodes
Simon McVittie [Thu, 3 Mar 2011 16:51:56 +0000 (16:51 +0000)]
dbus_type_is_basic etc.: it is an error to pass in bad typecodes

Previously, the comments said "this function will crash", but that's not
strictly true (checks can be disabled or made non-fatal). Their behaviour
is undefined if you do that, though.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=20496
Reviewed-by: Will Thompson <will.thompson@collabora.co.uk>
13 years agoRequire specific user action to compile without 64-bit support
Simon McVittie [Tue, 8 Mar 2011 13:32:06 +0000 (13:32 +0000)]
Require specific user action to compile without 64-bit support

The D-Bus type system isn't implementable without 64-bit support, although
for historical reasons we have some sort of semi-working support for
platforms with no 64-bit integers. Let's find out whether any
practically relevant platform still lacks these types...

(GLib appears to have required 64-bit integer types since 2001.)

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=35114
Reviewed-by: Lennart Poettering <lennart@poettering.net>
13 years agoMerge branch 'dbus-1.4'
Simon McVittie [Thu, 10 Mar 2011 12:15:56 +0000 (12:15 +0000)]
Merge branch 'dbus-1.4'

13 years agoautogen: add -I m4 to aclocal path
Lennart Poettering [Thu, 10 Mar 2011 02:56:23 +0000 (03:56 +0100)]
autogen: add -I m4 to aclocal path

This fixes 2b5959882a403cddba754b37b58bdc49bff01f90 which forgot to add
m4/ to the command line of aclocal but moved scripts there.

13 years agoMerge branch 'dbus-1.4'
Simon McVittie [Tue, 8 Mar 2011 12:35:46 +0000 (12:35 +0000)]
Merge branch 'dbus-1.4'

13 years agoUpdate NEWS
Simon McVittie [Tue, 8 Mar 2011 12:35:39 +0000 (12:35 +0000)]
Update NEWS

13 years agoMerge branch 'dbus-1.4'
Simon McVittie [Mon, 7 Mar 2011 14:51:46 +0000 (14:51 +0000)]
Merge branch 'dbus-1.4'

13 years agoFix some more stray occurrences of ELEMENT_TYPE
Simon McVittie [Mon, 7 Mar 2011 13:55:10 +0000 (13:55 +0000)]
Fix some more stray occurrences of ELEMENT_TYPE

13 years agoDo not use the name ELEMENT_TYPE
Andre Heinecke [Mon, 7 Mar 2011 10:43:23 +0000 (11:43 +0100)]
Do not use the name ELEMENT_TYPE

On Windows Systems ELEMENT_TYPE is already defined
in Winioctl.h this header is included indirectly
in dbus-sysdeps.h. By avoiding the use of the Name
ELEMENT_TYPE it is ensured that config-parser-common.h
can be included together with dbus-sysdeps.h

Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
13 years agodbus_message_iter_append_fixed_array: add a check for valid booleans
Simon McVittie [Thu, 3 Mar 2011 16:30:00 +0000 (16:30 +0000)]
dbus_message_iter_append_fixed_array: add a check for valid booleans

The reasoning is the same as for dbus_message_iter_append_basic.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=16338
Reviewed-by: Cosimo Alfarano <cosimo.alfarano@collabora.co.uk>
13 years agodbus_message_iter_append_basic: validate booleans too
Simon McVittie [Thu, 3 Mar 2011 16:29:17 +0000 (16:29 +0000)]
dbus_message_iter_append_basic: validate booleans too

Sending, for instance, ((dbus_bool_t) 666) is a programming error and
should be diagnosed as such.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=16338
Reviewed-by: Cosimo Alfarano <cosimo.alfarano@collabora.co.uk>
13 years agodbus_message_iter_append_basic: check string-like arguments for validity
Simon McVittie [Wed, 16 Feb 2011 17:44:48 +0000 (17:44 +0000)]
dbus_message_iter_append_basic: check string-like arguments for validity

Strings: UTF-8 with no embedded NULs, by adding a new internal function,
_dbus_check_is_valid_utf8

Object paths, signatures: the obvious syntactic checks

This moves some of the burden of validation to the sender.

When sending <http://www.cl.cam.ac.uk/~mgk25/ucs/examples/UTF-8-demo.txt>
10240 times with up to 1024 parallel calls pending, on a single-core ARM
Linux device, I found that user CPU time in dbus-spam increased by up to 80%
as a result of the validation. However, when sending messages to dbus-daemon,
overall throughput only reduced by 15%, and when sending messages to an echo
service, overall throughput actually improved by around 14% (presumably
because making the sender CPU-bound influenced kernel scheduling).

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=16338
Bug-NB: NB#223152
Reviewed-by: Cosimo Alfarano <cosimo.alfarano@collabora.co.uk>
13 years agoMerge branch 'dbus-1.4'
Simon McVittie [Fri, 25 Feb 2011 15:49:55 +0000 (15:49 +0000)]
Merge branch 'dbus-1.4'

Conflicts:
NEWS

13 years agoMerge branch 'doxygenate' into dbus-1.4
Simon McVittie [Fri, 25 Feb 2011 15:49:19 +0000 (15:49 +0000)]
Merge branch 'doxygenate' into dbus-1.4

Reviewed-by: Will Thompson <will.thompson@collabora.co.uk>
Conflicts:
configure.ac
doc/Makefile.am

13 years agoNEWS so far
Simon McVittie [Fri, 25 Feb 2011 12:08:48 +0000 (12:08 +0000)]
NEWS so far

13 years agoMerge branch 'changequote' into dbus-1.4
Simon McVittie [Fri, 25 Feb 2011 12:02:00 +0000 (12:02 +0000)]
Merge branch 'changequote' into dbus-1.4

Reviewed-by: Will Thompson <will.thompson@collabora.co.uk>
13 years agoMerge branch 'require-display-for-autolaunch-19997' into dbus-1.4
Simon McVittie [Fri, 25 Feb 2011 11:31:29 +0000 (11:31 +0000)]
Merge branch 'require-display-for-autolaunch-19997' into dbus-1.4

Reviewed-by: Colin Walters <walters@verbum.org>
13 years agoMerge branch 'modern-autofoo-32245' into dbus-1.4
Simon McVittie [Fri, 25 Feb 2011 11:30:17 +0000 (11:30 +0000)]
Merge branch 'modern-autofoo-32245' into dbus-1.4

13 years agoAllow X11 autolaunch to be disabled even if the headers/libraries are there
Simon McVittie [Thu, 24 Feb 2011 18:57:05 +0000 (18:57 +0000)]
Allow X11 autolaunch to be disabled even if the headers/libraries are there

In an embedded system where the D-Bus session is a core part of the
environment, like Maemo, accidentally auto-launching a second session bus
(for instance for a concurrent ssh session) is a bad idea - it can lead
to a "split brain" situation where half the applications in the GUI are
using a different bus. In these controlled environments, it'd be useful
to prevent autolaunch from ever happening.

(As a side benefit, the changes to configure.in also mean that packagers
can explicitly --enable-x11-autolaunch, to make sure that failure to find
X will make compilation fail cleanly.)

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=19997
Bug-NB: NB#219964

13 years agoDon't attempt Unix X11 autolaunching if DISPLAY isn't set
Simon McVittie [Thu, 24 Feb 2011 18:17:07 +0000 (18:17 +0000)]
Don't attempt Unix X11 autolaunching if DISPLAY isn't set

The known use cases for autolaunching (ssh -Y firefox,
run konqueror in legacy DE) all need $DISPLAY too.

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

13 years agoMerge branch 'dbus-1.4'
Simon McVittie [Thu, 24 Feb 2011 18:40:31 +0000 (18:40 +0000)]
Merge branch 'dbus-1.4'

13 years agoconfig-parser regression test: don't require that fd.o #34496 exists
Simon McVittie [Thu, 24 Feb 2011 18:33:27 +0000 (18:33 +0000)]
config-parser regression test: don't require that fd.o #34496 exists

Reviewed-by: Will Thompson <will.thompson@collabora.co.uk>
13 years agoMerge branch 'dbus-1.4'
Simon McVittie [Thu, 24 Feb 2011 17:17:36 +0000 (17:17 +0000)]
Merge branch 'dbus-1.4'

13 years agoGive XDG_DATA_HOME priority over XDG_DATA_DIRS for servicedirs
Simon McVittie [Thu, 24 Feb 2011 17:17:22 +0000 (17:17 +0000)]
Give XDG_DATA_HOME priority over XDG_DATA_DIRS for servicedirs

According to the XDG Base Directory Specification, “the base directory
defined by $XDG_DATA_HOME is considered more important than any of the
base directories defined by $XDG_DATA_DIRS.”  This makes it easier to
override a system service file as a normal user.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=34496
Signed-off-by: Anders Kaseorg <andersk@mit.edu>
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
13 years agoHonour aclocal flags in Makefile.am, rather than gluing them onto ACLOCAL
Simon McVittie [Thu, 24 Feb 2011 15:58:01 +0000 (15:58 +0000)]
Honour aclocal flags in Makefile.am, rather than gluing them onto ACLOCAL

Part of a patch by Javier Jardón.

Bug: https://bugs.freedesktop.org/show_bug.cgi?id=32245
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
13 years agoModernize setup of libtool for Windows
Simon McVittie [Thu, 24 Feb 2011 15:56:58 +0000 (15:56 +0000)]
Modernize setup of libtool for Windows

Part of a patch by Javier Jardón.

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