platform/upstream/dbus.git
16 years agoadd OOM handling in various places
John (J5) Palmieri [Tue, 15 Jan 2008 19:43:19 +0000 (14:43 -0500)]
add OOM handling in various places

2008-01-15  John (J5) Palmieri  <johnp@redhat.com>

* patches by Kimmo Hämäläinen <kimmo dot hamalainen at nokia dot com>

* dbus/dbus-sysdeps-unix (_dbus_get_autolaunch_address): handle OOM
(FDO Bug #12945)

* dbus/dbus-uuidgen.c (return_uuid): handle OOM (FDO Bug #12928)

* dbus/dbus-misc.c (dbus_get_local_machine_id): handle OOM, fix return
value to return NULL not FALSE (FDO Bug #12946)

16 years agorewrite selinux error handling to not abort due to a NULL read
John (J5) Palmieri [Tue, 15 Jan 2008 19:20:43 +0000 (14:20 -0500)]
rewrite selinux error handling to not abort due to a NULL read

2008-01-15  John (J5) Palmieri  <johnp@redhat.com>

* bus/bus.c (bus_context_check_security_policy): rewrite selinux error
handling to not abort due to a NULL read and to set the error only if
it is not already set (Based off of FDO Bug #12430)

16 years agoadd OOM handling
John (J5) Palmieri [Tue, 15 Jan 2008 18:53:54 +0000 (13:53 -0500)]
add OOM handling

2008-01-15  John (J5) Palmieri  <johnp@redhat.com>

* patch by Kimmo Hämäläinen <kimmo dot hamalainen at nokia dot com>

* dbus/dbus-internals.c (_dbus_read_uuid_file_without_creating,
_dbus_create_uuid_file_exclusively): add OOM handling (FDO Bug #12952)

16 years agoadd error handling when polling (FDO Bug #12954)
John (J5) Palmieri [Tue, 15 Jan 2008 18:46:50 +0000 (13:46 -0500)]
add error handling when polling (FDO Bug #12954)

2008-01-15  John (J5) Palmieri  <johnp@redhat.com>

* patch by Kimmo Hämäläinen <kimmo dot hamalainen at nokia dot com>

* dbus/dbus-spawn.c (babysit, babysitter_iteration): add error
handling when polling (FDO Bug #12954)

16 years agoremove dead code
John (J5) Palmieri [Tue, 15 Jan 2008 18:32:47 +0000 (13:32 -0500)]
remove dead code

2008-01-15  John (J5) Palmieri  <johnp@redhat.com>

* patch by Kimmo Hämäläinen <kimmo dot hamalainen at nokia dot com>

* bus/config-parser.c (locate_attributes): remove dead code which
always evaluated to TRUE

* dbus/dbus-shell.c (_dbus_shell_quote): remove unused code

16 years agoplug a possible BusClientPolicy leak (FDO Bug #13242)
John (J5) Palmieri [Tue, 15 Jan 2008 00:04:41 +0000 (19:04 -0500)]
plug a possible BusClientPolicy leak (FDO Bug #13242)

2008-01-14  John (J5) Palmieri  <johnp@redhat.com>

* patch by Kimmo Hämäläinen <kimmo dot hamalainen at nokia dot com>

* bus/connection.c (bus_connection_complete): plug a possible
BusClientPolicy leak (FDO Bug #13242)

16 years agoadd inotify support (FDO Bz#13268)
John (J5) Palmieri [Tue, 15 Jan 2008 00:00:36 +0000 (19:00 -0500)]
add inotify support (FDO Bz#13268)

2008-01-14  John (J5) Palmieri  <johnp@redhat.com>

* patch by Frederic Crozat <fcrozat at mandriva dot com> (FDO Bz#
13268)

* add inotify support

* bus/Makefile.am: add inotify module to the build

* bus/dir-watch-inotify.c: inotify module based off the dnotify and
kqueue modules

* configure.in: add checks and switch for inotify
also add a printout at the end of configure if inotify and kqueue
support is being built in (dnotify already had this)

16 years agowatch for file creates in dnotify
John (J5) Palmieri [Mon, 14 Jan 2008 23:17:53 +0000 (18:17 -0500)]
watch for file creates in dnotify

2008-01-14  John (J5) Palmieri  <johnp@redhat.com>

* patch by Frederic Crozat <fcrozat at mandriva dot com>

* bus/dir-watch-dnotify.c (bus_watch_directory): watch for file
creates also

16 years agoreturn message loader buffer in case of OOM (FDO Bug#12666)
John (J5) Palmieri [Mon, 14 Jan 2008 23:09:14 +0000 (18:09 -0500)]
return message loader buffer in case of OOM (FDO Bug#12666)

2008-01-14  John (J5) Palmieri  <johnp@redhat.com>

* patch by Kimmo Hämäläinen <kimmo dot hamalainen at nokia dot com>

* dbus/dbus-transport-socket.c(do_reading): return message
loader buffer in case of OOM (FDO Bug#12666)

16 years agoadd warning to output when libxml is selected
John (J5) Palmieri [Mon, 14 Jan 2008 20:53:13 +0000 (15:53 -0500)]
add warning to output when libxml is selected

2008-01-14  John (J5) Palmieri  <johnp@redhat.com>

* configure.in: add warning to output when libxml is selected since
we don't have a libxml maintainer and expat works perfectly fine
for what we need an xml parser for

16 years agoadd _dbus_geteuid to fix EXTERNAL authentication in setuid applications
John (J5) Palmieri [Mon, 14 Jan 2008 20:07:48 +0000 (15:07 -0500)]
add _dbus_geteuid to fix EXTERNAL authentication in setuid applications

2008-01-14  John (J5) Palmieri  <johnp@redhat.com>

* Patch by Andrea Luzzardi  <scox at sig11 dot org>: creates a
_dbus_geteuid function to fix EXTERNAL authentication in setuid
applications

*  dbus/dbus-sysdeps-unix.c (_dbus_geteuid): used to get the effective
uid of the running program
(_dbus_credentials_add_from_current_process): use geteuid instead of
getuid
(_dbus_append_user_from_current_process): use geteuid instead of
getuid

* dbus/dbus-sysdeps-util-unix.c (_dbus_change_to_daemon_user): use
geteuid instead of getuid
(_dbus_unix_user_is_at_console): use geteuid instead of getuid

* dbus/dbus-sysdeps-win.c (_dbus_geteuid): add a windows equivilant
that returns DBUS_UID_UNSET

16 years agofix some curly braces that were on the wrong line
Havoc Pennington [Tue, 18 Dec 2007 20:20:17 +0000 (15:20 -0500)]
fix some curly braces that were on the wrong line

2007-12-18  Havoc Pennington  <hp@redhat.com>

* dbus/dbus-connection.c (_dbus_connection_block_pending_call):
fix location of curly braces

16 years agoAllow a normal session bus to be reused by applications using autolaunching
Sjoerd Simons [Fri, 23 Nov 2007 10:31:05 +0000 (11:31 +0100)]
Allow a normal session bus to be reused by applications using autolaunching

2007-11-23  Sjoerd Simons  <sjoerd@luon.net>

   * tools/dbus-launch.c: let both a normal dbus-launch and an
   autolaunched bus save their parameters in X11 if possible. This makes
   the autolaunch and non-autolaunch behaviour more similar. With the
   exception that on a normal launch there will always be a new session
   bus and not being able to save parameters is not fatal. This also
   enables to launch programs directly with autolaunch (not very usefull
   though).

17 years agoFix a problem where a nul byte was wrongly introduced into UUIDs, due to _dbus_string...
Havoc Pennington [Wed, 31 Oct 2007 17:58:28 +0000 (13:58 -0400)]
Fix a problem where a nul byte was wrongly introduced into UUIDs, due to _dbus_string_copy_to_buffer weird behavior.

2007-10-31  Havoc Pennington  <hp@redhat.com>

* bus/selinux.c (log_audit_callback): rewrite to use
_dbus_string_copy_to_buffer_with_nul()

* dbus/dbus-string.c (_dbus_string_copy_to_buffer): change to NOT
nul-terminate the buffer; fail an assertion if there is not enough
space in the target buffer. This fixes two bugs where
copy_to_buffer was used to copy the binary bytes in a UUID, where
nul termination did not make sense. Bug reported by David Castelow.
(_dbus_string_copy_to_buffer_with_nul): new function that always
nul-terminates the buffer, and fails an assertion if there is not
enough space in the buffer.

17 years agoaudit_init() was not declared in header, causing warnings; fix this and namespace it
Havoc Pennington [Tue, 23 Oct 2007 18:48:52 +0000 (14:48 -0400)]
audit_init() was not declared in header, causing warnings; fix this and namespace it

2007-10-23  Havoc Pennington  <hp@redhat.com>

* bus/bus.c (bus_context_new): use the new name here

* bus/selinux.c (bus_selinux_audit_init): rename from audit_init()
to avoid possible libc conflict, and declare it in .h file to
avoid a warning

17 years agoadd HAVE_SELINUX around call to audit_init() so things build without selinux
Havoc Pennington [Fri, 19 Oct 2007 21:20:06 +0000 (17:20 -0400)]
add HAVE_SELINUX around call to audit_init() so things build without selinux

2007-10-19  Havoc Pennington  <hp@redhat.com>

* bus/bus.c (bus_context_new): put audit_init() in HAVE_SELINUX

17 years agodo not call audit_init() from bus/ directory from files in dbus/
Havoc Pennington [Fri, 19 Oct 2007 19:05:27 +0000 (15:05 -0400)]
do not call audit_init() from bus/ directory from files in dbus/

2007-10-19  Havoc Pennington  <hp@redhat.com>

* bus/bus.c (bus_context_new): put the audit_init() in here
instead, which I believe ends up being the same as where it was
before, though I'm not sure I understand why it goes here.

* dbus/dbus-sysdeps-util-unix.c (_dbus_change_to_daemon_user):
remove audit_init() from here, this file can't depend on code in
bus/ directory

17 years agoconfigure.in: *Actually* fix detection of i486 atomic ops.
Simon McVittie [Tue, 16 Oct 2007 09:13:15 +0000 (10:13 +0100)]
configure.in: *Actually* fix detection of i486 atomic ops.
My previous attempt at a fix would always enable them due to wrong quoting.
Patch from Colin Walters <walters@verbum.org>

17 years agoAmend ChangeLog - DBUS_ERROR_INIT is now used within libdbus as well as provided
Simon McVittie [Thu, 11 Oct 2007 16:29:40 +0000 (17:29 +0100)]
Amend ChangeLog - DBUS_ERROR_INIT is now used within libdbus as well as provided

17 years agoUse DBUS_ERROR_INIT instead of dbus_error_init wherever it's clearly equivalent
Simon McVittie [Wed, 10 Oct 2007 10:41:57 +0000 (11:41 +0100)]
Use DBUS_ERROR_INIT instead of dbus_error_init wherever it's clearly equivalent

17 years agoMerge branch 'inline'
Simon McVittie [Thu, 11 Oct 2007 16:24:18 +0000 (17:24 +0100)]
Merge branch 'inline'

17 years agoMerge branch 'atomic'
Simon McVittie [Thu, 11 Oct 2007 16:24:16 +0000 (17:24 +0100)]
Merge branch 'atomic'

Conflicts:

ChangeLog

17 years agoAdd J5's recent changes to ChangeLog
Simon McVittie [Thu, 11 Oct 2007 09:56:12 +0000 (10:56 +0100)]
Add J5's recent changes to ChangeLog

17 years agoUpdate ChangeLog
Simon McVittie [Thu, 11 Oct 2007 09:38:01 +0000 (10:38 +0100)]
Update ChangeLog

17 years agoRename DBUS_ERROR_INITIALIZER to DBUS_ERROR_INIT per Havoc's review
Simon McVittie [Wed, 10 Oct 2007 10:39:22 +0000 (11:39 +0100)]
Rename DBUS_ERROR_INITIALIZER to DBUS_ERROR_INIT per Havoc's review

17 years agoAdd DBUS_ERROR_INITIALIZER macro
Simon McVittie [Tue, 9 Oct 2007 16:34:09 +0000 (17:34 +0100)]
Add DBUS_ERROR_INITIALIZER macro

17 years agoEnable Autoconf's AC_C_INLINE to avoid compilation failure with gcc -ansi.
Simon McVittie [Thu, 11 Oct 2007 09:27:28 +0000 (10:27 +0100)]
Enable Autoconf's AC_C_INLINE to avoid compilation failure with gcc -ansi.
If inline isn't recognised (e.g. on a strict C90 compiler, like gcc -ansi) this
defines it to __inline__, __inline or nothing, whichever works. This is safe,
because we never use inline except in combination with static.

17 years agoUpdate ChangeLog
Simon McVittie [Thu, 11 Oct 2007 09:20:09 +0000 (10:20 +0100)]
Update ChangeLog

17 years ago.gitignore: ignore vi swapfiles
Simon McVittie [Thu, 11 Oct 2007 09:18:05 +0000 (10:18 +0100)]
.gitignore: ignore vi swapfiles

17 years agodbus-launch: convert C++-style comment to C-style, add {} for clarity
Simon McVittie [Wed, 10 Oct 2007 12:37:00 +0000 (13:37 +0100)]
dbus-launch: convert C++-style comment to C-style, add {} for clarity

17 years agodbus/dbus-server-socket.c: remove unused variable if disabling assertions
Simon McVittie [Wed, 10 Oct 2007 12:34:56 +0000 (13:34 +0100)]
dbus/dbus-server-socket.c: remove unused variable if disabling assertions

17 years agodbus/dbus-marshal-validate.c: get rid of empty statements
Simon McVittie [Wed, 10 Oct 2007 12:34:15 +0000 (13:34 +0100)]
dbus/dbus-marshal-validate.c: get rid of empty statements

17 years agoAs per Havoc's review, rename DBUS_GNUC_EXTENSION to _DBUS_GNUC_EXTENSION.
Simon McVittie [Thu, 11 Oct 2007 09:11:21 +0000 (10:11 +0100)]
As per Havoc's review, rename DBUS_GNUC_EXTENSION to _DBUS_GNUC_EXTENSION.
Also update ChangeLog.

17 years agodbus/dbus-arch-deps.h.in: also use DBUS_GNUC_EXTENSION for DBUS_INT64_CONSTANT and...
Simon McVittie [Wed, 10 Oct 2007 12:37:48 +0000 (13:37 +0100)]
dbus/dbus-arch-deps.h.in: also use DBUS_GNUC_EXTENSION for DBUS_INT64_CONSTANT and UINT64 equivalent

17 years agoUse DBUS_GNUC_EXTENSION to avoid -ansi -pedantic warnings about use of long long...
Simon McVittie [Wed, 10 Oct 2007 12:04:08 +0000 (13:04 +0100)]
Use DBUS_GNUC_EXTENSION to avoid -ansi -pedantic warnings about use of long long. (#717)

17 years agoAdd macro DBUS_GNUC_EXTENSION (the same as GLib's G_GNUC_EXTENSION)
Simon McVittie [Wed, 10 Oct 2007 12:02:57 +0000 (13:02 +0100)]
Add macro DBUS_GNUC_EXTENSION (the same as GLib's G_GNUC_EXTENSION)
Part of a fix for bug 717.

17 years agoFix detection of i486 atomic ops.
Simon McVittie [Thu, 11 Oct 2007 08:57:48 +0000 (09:57 +0100)]
Fix detection of i486 atomic ops.

Previously, the attempts to determine support at compile-time on Darwin were
causing the i486 atomic ops to be used on *all* i386 or x86-64 GCC builds
(AH_VERBATIM can't be conditionalized like we were trying to).

17 years agoMerge branch 'master' of ssh://git.freedesktop.org/git/dbus/dbus
Simon McVittie [Wed, 10 Oct 2007 16:39:41 +0000 (17:39 +0100)]
Merge branch 'master' of ssh://git.freedesktop.org/git/dbus/dbus

17 years agoUpdate ChangeLog
Simon McVittie [Wed, 10 Oct 2007 16:39:12 +0000 (17:39 +0100)]
Update ChangeLog

17 years agoBring .gitignore files up to date; add *.o, *~ etc. to top-level .gitignore
Simon McVittie [Wed, 10 Oct 2007 10:59:14 +0000 (11:59 +0100)]
Bring .gitignore files up to date; add *.o, *~ etc. to top-level .gitignore
CVS ignores these automatically, so they weren't in the .cvsignore when Ryan
converted the repository.

17 years agoFix indentation in _dbus_object_tree_register declaration as per Havoc's review
Simon McVittie [Wed, 10 Oct 2007 10:41:08 +0000 (11:41 +0100)]
Fix indentation in _dbus_object_tree_register declaration as per Havoc's review

17 years ago_dbus_object_tree_register: don't duplicate check for NULL and use new DBUS_ERROR_OBJ...
Simon McVittie [Wed, 10 Oct 2007 10:40:48 +0000 (11:40 +0100)]
_dbus_object_tree_register: don't duplicate check for NULL and use new DBUS_ERROR_OBJECT_PATH_IN_USE error, both as per Havoc's review

17 years agoAdd error o.fd.D.Error.ObjectPathInUse (DBUS_ERROR_OBJECT_PATH_IN_USE)
Simon McVittie [Wed, 10 Oct 2007 10:38:34 +0000 (11:38 +0100)]
Add error o.fd.D.Error.ObjectPathInUse (DBUS_ERROR_OBJECT_PATH_IN_USE)

17 years agoAdd dbus_connection_try_register_object_path and dbus_connection_try_register_fallbac...
Simon McVittie [Tue, 9 Oct 2007 16:19:36 +0000 (17:19 +0100)]
Add dbus_connection_try_register_object_path and dbus_connection_try_register_fallback, to make object path registration less painful for bindings

17 years agoFix env exports for better portability (#9280)
John (J5) Palmieri [Tue, 9 Oct 2007 19:50:08 +0000 (15:50 -0400)]
Fix env exports for better portability (#9280)

17 years ago Document syntax for container types in dbus-send man file (#9553)
John (J5) Palmieri [Tue, 9 Oct 2007 19:27:53 +0000 (15:27 -0400)]
 Document syntax for container types in dbus-send man file (#9553)

* Patch from Jack Spaar <jspaar at users.sourceforge.net>

17 years agoImprove description of allowed variant signatures (#10185)
Simon McVittie [Tue, 9 Oct 2007 13:23:28 +0000 (14:23 +0100)]
Improve description of allowed variant signatures (#10185)
Patch based on one from Kristoffer Lundén, amended as per Havoc's comment.

17 years agodoc/dbus-specification.xml: Clarify description of DBUS_COOKIE_SHA1 (#10184).
Simon McVittie [Tue, 9 Oct 2007 13:12:31 +0000 (14:12 +0100)]
doc/dbus-specification.xml: Clarify description of DBUS_COOKIE_SHA1 (#10184).
Patch from Kristoffer Lundén.

17 years agoMerge branch 'master' of ssh://git.freedesktop.org/git/dbus/dbus
Simon McVittie [Tue, 9 Oct 2007 13:06:54 +0000 (14:06 +0100)]
Merge branch 'master' of ssh://git.freedesktop.org/git/dbus/dbus

17 years agodoc/dbus-specification.xml: Specifically forbid empty structs (#7969)
Simon McVittie [Tue, 9 Oct 2007 13:06:35 +0000 (14:06 +0100)]
doc/dbus-specification.xml: Specifically forbid empty structs (#7969)

17 years agofd.o bug #11678 Don't error out if compiler does not support vararg macros
John (J5) Palmieri [Wed, 3 Oct 2007 21:54:09 +0000 (17:54 -0400)]
fd.o bug #11678 Don't error out if compiler does not support vararg macros

* _dbus_verbose is the only function that does this so make it a noop if
  vararg macros are not supported
* https://bugs.freedesktop.org/show_bug.cgi?id=11678

17 years agofd.o bug #12429 Reverse check to setpcap and only init audit if we were root
John (J5) Palmieri [Wed, 3 Oct 2007 21:29:45 +0000 (17:29 -0400)]
fd.o bug #12429 Reverse check to setpcap and only init audit if we were root

* patch by Dan Walsh <dwalsh@redhat.com>
* https://bugs.freedesktop.org/show_bug.cgi?id=12429
* Reverse we_were_root check to setpcap if we were root.  Also only init
  audit if we were root.  So error dbus message will not show up when policy
  reload happens.  dbus -session will no longer try to send audit message,
  only system will.

17 years agofd.o bug #11872 improve linker test for --gc-sections
John (J5) Palmieri [Wed, 3 Oct 2007 21:08:44 +0000 (17:08 -0400)]
fd.o bug #11872 improve linker test for --gc-sections

* patch by Tim Mooney <enchanter at users.sourceforge.net>

17 years agofd.o bug #11872 fix clearenv for systems that do not have it
John (J5) Palmieri [Wed, 3 Oct 2007 21:02:23 +0000 (17:02 -0400)]
fd.o bug #11872 fix clearenv for systems that do not have it

* patch from Brian Cameron <brian.cameron at sun.com>

17 years agofd.o bug #12547 remove superfluous if
John (J5) Palmieri [Wed, 3 Oct 2007 20:43:22 +0000 (16:43 -0400)]
fd.o bug #12547 remove superfluous if

* also convert tabs to spaces

17 years agoCorrectly implement -fPIC and -fPIE
John (J5) Palmieri [Wed, 3 Oct 2007 19:21:57 +0000 (15:21 -0400)]
Correctly implement -fPIC and -fPIE

* For security reasons we want possition independent code for libraries
  and possition independent executable for executables
* before we were just enabling -fPIC
* now we correctly enable -fPIC and -PIE for libdbus and the bus respectively
* propper LD_FLAGS are set for each also

17 years agoAdd argument path matching support. Bug #11066.
Ryan Lortie [Thu, 20 Sep 2007 17:04:38 +0000 (13:04 -0400)]
Add argument path matching support.  Bug #11066.

2007-09-20  Ryan Lortie  <desrt@desrt.ca>

        * dbus/signals.c (struct DBusMatchRule, bus_match_rule_new,
        bus_match_rule_set_arg, bus_match_rule_parse_arg_match,
        match_rule_matches): Add support for parsing and matching on
        arg0path='/some/path' type rules.

        * dbus/signals.h (bus_match_rule_set_arg): change to take const
        DBusString instead of const char * for the string to match against.

        * dbus/dbus-bus.c: add a quick note to dbus_bus_add_match
        documentation about the path matching.

        * doc/dbus-specification.xml: add a more detailed description of the
        changes here.

17 years agoAdd support for compacting DBusStrings to release wasted memory.
Ryan Lortie [Thu, 20 Sep 2007 04:13:35 +0000 (00:13 -0400)]
Add support for compacting DBusStrings to release wasted memory.

2007-09-19  Ryan Lortie  <desrt@desrt.ca>

        * dbus/dbus-string.[ch] (compact, _dbus_string_compact,
        _dbus_string_lock): new compact function to free up allocated memory
        that is no longer used.

        * dbus/dbus-message.c (load_message): call _dbus_string_compact on the
        message loader buffer.

        * dbus/dbus-transport-socket.c (do_reading, do_writing): call
        _dbus_string_compact on the incoming/outgoing "encoded" buffers.

        * dbus/dbus-string-util.c (_dbus_string_test): add a few tests for
        string compacting.

17 years agoHACKING: add more explicit git branch/tag instructions
Ryan Lortie [Thu, 13 Sep 2007 16:42:32 +0000 (12:42 -0400)]
HACKING: add more explicit git branch/tag instructions

17 years agomigrate from cvs to git (cvs2svn -> git-svnimport).
Ryan Lortie [Thu, 13 Sep 2007 15:13:40 +0000 (11:13 -0400)]
migrate from cvs to git (cvs2svn -> git-svnimport).

2007-09-13  Ryan Lortie  <desrt@desrt.ca>

        migrate from cvs to git (cvs2svn -> git-svnimport).

        * HACKING: update release/branch/tag instructions
        * */.cvsignore: rename to .gitignore

        also, clean up tags and branch names to conform to HACKING

17 years ago2007-08-17 William Jon McCann <mccann@jhu.edu>
Havoc Pennington [Fri, 17 Aug 2007 18:51:41 +0000 (18:51 +0000)]
2007-08-17  William Jon McCann  <mccann@jhu.edu>

* update-dbus-docs.sh: upload DTD to server

17 years ago2007-08-17 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Fri, 17 Aug 2007 16:43:57 +0000 (16:43 +0000)]
2007-08-17  Havoc Pennington  <hp@redhat.com>

* tools/dbus-launch-x11.c (set_address_in_x11): fix from Michael
Lorenz to use long not int with XChangeProperty format 32

* dbus/dbus-sysdeps-util-unix.c
(_dbus_write_pid_to_file_and_pipe): factor this out, and use the
same code in _dbus_become_daemon (where the parent writes the pid
file and to the pid pipe) and in bus_context_new (where the daemon
writes its own pid file and to its own pid pipe)

* bus/bus.c (bus_context_new): close the pid pipe after we print
to it. Also, don't write the pid to the pipe twice when we fork,
someone reported this bug a long time ago.

17 years ago2007-08-03 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Fri, 3 Aug 2007 19:05:29 +0000 (19:05 +0000)]
2007-08-03  Havoc Pennington  <hp@redhat.com>

* configure.in: add major/minor/micro version number AC_SUBST

* dbus/dbus-arch-deps.h.in (DBUS_MAJOR_VERSION,
DBUS_MINOR_VERSION, DBUS_MICRO_VERSION, DBUS_VERSION_STRING,
DBUS_VERSION): collection of macros to get version of library we
are compiled against.

* dbus/dbus-misc.c (dbus_get_version): new function, to get
version of library we are linked against at runtime.

17 years ago2007-07-30 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Mon, 30 Jul 2007 16:16:47 +0000 (16:16 +0000)]
2007-07-30  Havoc Pennington  <hp@redhat.com>

* bus/activation-helper.c (check_bus_name): don't use
_dbus_check_valid_bus_name() which is only around with
--enable-checks, instead use _dbus_validate_bus_name().
Bug #11766 from Diego <diego@pemas.net>

17 years ago2007-07-27 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Fri, 27 Jul 2007 21:01:22 +0000 (21:01 +0000)]
2007-07-27  Havoc Pennington  <hp@redhat.com>

* configure.in: post-release version bump

17 years ago2007-07-27 Havoc Pennington <hp@redhat.com> dbus-1.1.2
Havoc Pennington [Fri, 27 Jul 2007 20:59:42 +0000 (20:59 +0000)]
2007-07-27  Havoc Pennington  <hp@redhat.com>

* release 1.1.2

17 years ago2007-07-26 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Thu, 26 Jul 2007 23:01:14 +0000 (23:01 +0000)]
2007-07-26  Havoc Pennington  <hp@redhat.com>

* bus/config-parser-trivial.c (check_return_values): disable a
test that hardcoded the bus user's name

* bus/dispatch.c (bus_dispatch_test_conf): remove the "if
(!use_launcher)" around the tests, they were only failing because
we didn't pass through all the expected errors from the helper.

* bus/activation-exit-codes.h
(BUS_SPAWN_EXIT_CODE_CHILD_SIGNALED): add a code for child segfaulting
(BUS_SPAWN_EXIT_CODE_GENERIC_FAILURE): make "1" be a generic
failure code, so if a third party launch helper were written it
could just always return 1 on failure.

17 years agofix whitespace
Havoc Pennington [Thu, 26 Jul 2007 22:32:09 +0000 (22:32 +0000)]
fix whitespace

17 years agoSwitch over to using getaddrinfo for TCP clients & servers to enable IPv6
Daniel P. Berrange [Wed, 25 Jul 2007 02:46:52 +0000 (02:46 +0000)]
Switch over to using getaddrinfo for TCP clients & servers to enable IPv6

17 years ago2007-07-24 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Tue, 24 Jul 2007 22:11:00 +0000 (22:11 +0000)]
2007-07-24  Havoc Pennington  <hp@redhat.com>

* configure.in: add AM_PROG_CC_C_O to allow per-target CPPFLAGS

* bus/dispatch.c (bus_dispatch_test_conf): Fix up setting
TEST_LAUNCH_HELPER_CONFIG to include the full path, and enable
test shell_fail_service_auto_start when use_launcher==TRUE

* bus/activation-helper-bin.c (convert_error_to_exit_code): pass
through the INVALID_ARGS error so the test suite works

* bus/activation.c (handle_activation_exit_error): return
DBUS_ERROR_NO_MEMORY if we get BUS_SPAWN_EXIT_CODE_NO_MEMORY

* dbus/dbus-spawn.c (_dbus_babysitter_get_child_exit_status):
return only the exit code of the child, not the entire thingy from
waitpid(), and make the return value indicate whether the child
exited normally (with a status code)

* bus/bus.c (process_config_first_time_only): _dbus_strdup works
on NULL so no need to check
(process_config_every_time): move servicehelper init here, so we
reload it on HUP or config file change

* bus/Makefile.am (install-data-hook): remove comment because
Emacs make mode seems to be grumpy about it

17 years ago2007-07-24 Richard Hughes <richard@hughsie.com>
Richard Hughes [Tue, 24 Jul 2007 13:03:31 +0000 (13:03 +0000)]
2007-07-24  Richard Hughes  <richard@hughsie.com>

* bus/Makefile.am:
* bus/test-system.c: (die), (check_memleaks), (test_pre_hook),
(test_post_hook), (main):
Add back the test-system.c file - not sure now this got ignored in the
diff. I blame git.

17 years ago2007-07-24 Richard Hughes <richard@hughsie.com>
Richard Hughes [Tue, 24 Jul 2007 12:55:32 +0000 (12:55 +0000)]
2007-07-24  Richard Hughes  <richard@hughsie.com>

* configure.in:
Use ustar to generate the tarball; this fixes the make distcheck
problem when the data files do not fit in the archive:
tar: dbus-1.1.2/test/data/valid-service-files/org.freedesktop.DBus.
TestSuiteShellEchoServiceFail.service.in: file name is too
long (max 99); not dumped

We have to have the 'long' names as the service helper matches by
filename rather than by the name in the service file.

17 years ago2007-07-24 Richard Hughes <richard@hughsie.com>
Richard Hughes [Tue, 24 Jul 2007 12:48:45 +0000 (12:48 +0000)]
2007-07-24  Richard Hughes  <richard@hughsie.com>

* configure.in:
* test/Makefile.am:
* test/data/invalid-service-files-system/org.freedesktop.DBus.TestS
uiteNoExec.service.in:
* test/data/invalid-service-files-system/org.freedesktop.DBus.TestS
uiteNoService.service.in:
* test/data/invalid-service-files-system/org.freedesktop.DBus.TestS
uiteNoUser.service.in:
* test/data/valid-config-files-system/debug-allow-all-fail.conf.in:
* test/data/valid-config-files-system/debug-allow-all-pass.conf.in:
* test/data/valid-config-files/debug-allow-all-sha1.conf.in:
* test/data/valid-config-files/debug-allow-all.conf.in:
* test/data/valid-service-files-system/org.freedesktop.DBus.TestSui
teEchoService.service.in:
* test/data/valid-service-files-system/org.freedesktop.DBus.TestSui
teSegfaultService.service.in:
* test/data/valid-service-files-system/org.freedesktop.DBus.TestSui
teShellEchoServiceFail.service.in:
* test/data/valid-service-files-system/org.freedesktop.DBus.TestSui
teShellEchoServiceSuccess.service.in:
* test/data/valid-service-files/debug-echo.service.in:
* test/data/valid-service-files/debug-segfault.service.in:
* test/data/valid-service-files/debug-shell-echo-fail.service.in:
* test/data/valid-service-files/debug-shell-echo-success.service.in:
* test/data/valid-service-files/org.freedesktop.DBus.TestSuiteEchoS
ervice.service.in:
* test/data/valid-service-files/org.freedesktop.DBus.TestSuiteSegfa
ultService.service.in:
* test/data/valid-service-files/org.freedesktop.DBus.TestSuiteShell
EchoServiceFail.service.in:
* test/data/valid-service-files/org.freedesktop.DBus.TestSuiteShell
EchoServiceSuccess.service.in:
Add the data files needed by the system activation unit checks.

17 years ago2007-07-24 Richard Hughes <richard@hughsie.com>
Richard Hughes [Tue, 24 Jul 2007 12:39:30 +0000 (12:39 +0000)]
2007-07-24  Richard Hughes  <richard@hughsie.com>

* bus/dispatch.c: (check_segfault_service_no_auto_start),
(check_launch_service_file_missing),
(check_launch_service_user_missing),
(check_launch_service_exec_missing),
(check_launch_service_service_missing), (bus_dispatch_test_conf),
(bus_dispatch_test_conf_fail), (bus_dispatch_test):
Add unit tests for system activation. Most are copied from the
session activation tests, but some didn't apply when using a laucher.

17 years ago2007-07-24 Richard Hughes <richard@hughsie.com>
Richard Hughes [Tue, 24 Jul 2007 12:36:41 +0000 (12:36 +0000)]
2007-07-24  Richard Hughes  <richard@hughsie.com>

* bus/activation.c: (bus_activation_activate_service):
If the bus uses a service-laucher, then use the setuid laucher.

17 years ago2007-07-24 Richard Hughes <richard@hughsie.com>
Richard Hughes [Tue, 24 Jul 2007 12:33:35 +0000 (12:33 +0000)]
2007-07-24  Richard Hughes  <richard@hughsie.com>

* configure.in:
Add the needed library exports for the new laucher.

17 years ago2007-07-24 Richard Hughes <richard@hughsie.com>
Richard Hughes [Tue, 24 Jul 2007 12:31:01 +0000 (12:31 +0000)]
2007-07-24  Richard Hughes  <richard@hughsie.com>

* configure.in:
Check for -Wl,--gc-sections so we can really reduce the size of the
setuid binary.

17 years ago2007-07-24 Richard Hughes <richard@hughsie.com>
Richard Hughes [Tue, 24 Jul 2007 12:22:43 +0000 (12:22 +0000)]
2007-07-24  Richard Hughes  <richard@hughsie.com>

* bus/activation.c: (handle_activation_exit_error),
(babysitter_watch_callback):
Map the child exit status integer to a proper dbus error.

17 years ago2007-07-24 Richard Hughes <richard@hughsie.com>
Richard Hughes [Tue, 24 Jul 2007 12:19:59 +0000 (12:19 +0000)]
2007-07-24  Richard Hughes  <richard@hughsie.com>

* bus/bus.c: (process_config_first_time_only),
(process_config_every_time), (bus_context_unref),
(bus_context_get_servicehelper):
* bus/bus.h:
Add the concept of a service-helper and allow it's value to be read.

17 years ago2007-07-24 Richard Hughes <richard@hughsie.com>
Richard Hughes [Tue, 24 Jul 2007 12:17:39 +0000 (12:17 +0000)]
2007-07-24  Richard Hughes  <richard@hughsie.com>

* bus/activation.c: (bus_activation_entry_unref),
(update_desktop_file_entry):
Add the concept of, and read the value of user from the desktop file.
The user string is not required unless we are using system activation.

17 years ago2007-07-24 Richard Hughes <richard@hughsie.com>
Richard Hughes [Tue, 24 Jul 2007 12:14:51 +0000 (12:14 +0000)]
2007-07-24  Richard Hughes  <richard@hughsie.com>

* bus/activation.c:
* bus/desktop-file.h:
Move the defines into the header file, as we use these in the lauch
helper as well as the desktop file parsing.

17 years ago2007-07-24 Richard Hughes <richard@hughsie.com>
Richard Hughes [Tue, 24 Jul 2007 12:12:10 +0000 (12:12 +0000)]
2007-07-24  Richard Hughes  <richard@hughsie.com>

* bus/.cvsignore:
Add the autogenerated binary files.

17 years ago2007-07-24 Richard Hughes <richard@hughsie.com>
Richard Hughes [Tue, 24 Jul 2007 12:10:58 +0000 (12:10 +0000)]
2007-07-24  Richard Hughes  <richard@hughsie.com>

* bus/Makefile.am:
* bus/test.h:
Add the build glue for the lauch helper, and also add the launch-helper
OOM checks into make check. I've probably broken the build, give me 2.

17 years ago2007-07-24 Richard Hughes <richard@hughsie.com>
Richard Hughes [Tue, 24 Jul 2007 12:03:04 +0000 (12:03 +0000)]
2007-07-24  Richard Hughes  <richard@hughsie.com>

* bus/test-launch-helper.c: (die), (check_memleaks),
(test_post_hook), (bus_activation_helper_oom_test), (main):
Add a test wrapper to allow OOM checks on the launch helper.

17 years ago2007-07-24 Richard Hughes <richard@hughsie.com>
Richard Hughes [Tue, 24 Jul 2007 12:01:32 +0000 (12:01 +0000)]
2007-07-24  Richard Hughes  <richard@hughsie.com>

* bus/activation-helper-bin.c: (convert_error_to_exit_code),
(main):
* bus/activation-helper.c: (desktop_file_for_name),
(clear_environment), (check_permissions), (check_service_name),
(get_parameters_for_service), (switch_user),
(exec_for_correct_user), (check_bus_name), (get_correct_parser),
(launch_bus_name), (check_dbus_user), (run_launch_helper):
* bus/activation-helper.h:
Add the initial launch-helper. This is split into a main section and a
binary loader that allows us to lauch the main section in another test
harness to do stuff like OOM testing. No build glue yet.

17 years ago2007-07-24 Richard Hughes <richard@hughsie.com>
Richard Hughes [Tue, 24 Jul 2007 11:58:08 +0000 (11:58 +0000)]
2007-07-24  Richard Hughes  <richard@hughsie.com>

* bus/Makefile.am:
* bus/config-parser.c: (bus_config_parser_unref),
(start_busconfig_child), (bus_config_parser_end_element),
(servicehelper_path), (bus_config_parser_content),
(bus_config_parser_finished),
(bus_config_parser_get_servicehelper),
(test_default_session_servicedirs),
(test_default_system_servicedirs), (bus_config_parser_test):
* bus/config-parser.h:
Make the config-parser code use the common config code.
Also add the session and systemdirs stuff, and make the config parser
aware of the servicehelper field.

17 years ago2007-07-24 Richard Hughes <richard@hughsie.com>
Richard Hughes [Tue, 24 Jul 2007 11:53:35 +0000 (11:53 +0000)]
2007-07-24  Richard Hughes  <richard@hughsie.com>

* bus/system.conf.in:
Add new servicehelper fields to the default system.conf file.

17 years ago2007-07-24 Richard Hughes <richard@hughsie.com>
Richard Hughes [Tue, 24 Jul 2007 11:50:59 +0000 (11:50 +0000)]
2007-07-24  Richard Hughes  <richard@hughsie.com>

* bus/config-parser-trivial.c: (service_dirs_find_dir),
(service_dirs_append_link_unique_or_free), (bus_config_parser_new),
(bus_config_parser_unref), (bus_config_parser_start_element),
(bus_config_parser_end_element), (bus_config_parser_content),
(bus_config_parser_finished), (bus_config_parser_get_user),
(bus_config_parser_get_type), (bus_config_parser_get_service_dirs),
(check_return_values), (do_load), (check_loader_oom_func),
(process_test_valid_subdir), (make_full_path), (check_file_valid),
(bus_config_parser_trivial_test):
* bus/config-parser-trivial.h:
Add a security sensitive stripped down config parser for the setuid
launcher. This file only reads what it needs, and doesn't try to do
anything remotely clever like including external files.
It is not intended to validate the config file; it is expected that
config-parser will do that before the setuid program tries to read it.

17 years ago2007-07-24 Richard Hughes <richard@hughsie.com>
Richard Hughes [Tue, 24 Jul 2007 11:47:31 +0000 (11:47 +0000)]
2007-07-24  Richard Hughes  <richard@hughsie.com>

* bus/config-parser-common.c:
(bus_config_parser_element_name_to_type),
(bus_config_parser_element_type_to_name):
* bus/config-parser-common.h:
We don't want to run the whole config parser with all it's deps in the
setuid program. We need to implement a stripped down config parser just
for the launcher, and to do so I need some common functions and
defines; add them here.

17 years ago2007-07-24 Richard Hughes <richard@hughsie.com>
Richard Hughes [Tue, 24 Jul 2007 11:44:35 +0000 (11:44 +0000)]
2007-07-24  Richard Hughes  <richard@hughsie.com>

* dbus/dbus-sysdeps-unix.c:
(_dbus_get_standard_system_servicedirs):
* dbus/dbus-sysdeps-win.c:
Provide a way to get the standard system servicedirs, just like we do
for the session service dirs. These should be seporate, as there may
be a security issue starting up some session stuff as root.
The use-case for the same binary starting up per-system _and_
per-session is also not valid.

17 years ago2007-07-24 Richard Hughes <richard@hughsie.com>
Richard Hughes [Tue, 24 Jul 2007 11:41:19 +0000 (11:41 +0000)]
2007-07-24  Richard Hughes  <richard@hughsie.com>

* bus/dbus-daemon.1.in:
Add standard_system_servicedirs and servicehelper into the man file
and explain what each does.

17 years ago2007-07-24 Richard Hughes <richard@hughsie.com>
Richard Hughes [Tue, 24 Jul 2007 11:38:47 +0000 (11:38 +0000)]
2007-07-24  Richard Hughes  <richard@hughsie.com>

* doc/busconfig.dtd:
Add servicehelper into the dtd, it will soon be a valid part of the
config file.

17 years ago2007-07-24 Richard Hughes <richard@hughsie.com>
Richard Hughes [Tue, 24 Jul 2007 11:37:20 +0000 (11:37 +0000)]
2007-07-24  Richard Hughes  <richard@hughsie.com>

* dbus/dbus-spawn.c: (read_data),
(_dbus_babysitter_get_child_exit_status):
* dbus/dbus-spawn.h:
Add a function so we can get access to the exit status of the launch
helper.
By providing the return code and not the error we can leave the
'what does this mean?' to the bus launch code and not include it in the
dbus directory.

17 years ago2007-07-24 Richard Hughes <richard@hughsie.com>
Richard Hughes [Tue, 24 Jul 2007 11:34:40 +0000 (11:34 +0000)]
2007-07-24  Richard Hughes  <richard@hughsie.com>

* bus/activation-exit-codes.h:
Add defines which specify the output codes of the launch helper.
We have to use exit codes as this is the only way we can return failure
type without going grotty things like redirecting possibly-nonsecure
stderr into the error.

17 years ago2007-07-24 Richard Hughes <richard@hughsie.com>
Richard Hughes [Tue, 24 Jul 2007 11:27:09 +0000 (11:27 +0000)]
2007-07-24  Richard Hughes  <richard@hughsie.com>

* dbus/dbus-protocol.h:
Add new error names needed for the launch helper.

17 years ago2007-07-24 Richard Hughes <richard@hughsie.com>
Richard Hughes [Tue, 24 Jul 2007 11:24:52 +0000 (11:24 +0000)]
2007-07-24  Richard Hughes  <richard@hughsie.com>

* dbus/dbus-sysdeps.c: (_dbus_clearenv):
* dbus/dbus-sysdeps.h:
Add a wrapper for clearenv.

17 years ago2007-07-24 Richard Hughes <richard@hughsie.com>
Richard Hughes [Tue, 24 Jul 2007 11:23:46 +0000 (11:23 +0000)]
2007-07-24  Richard Hughes  <richard@hughsie.com>

* doc/system-activation.txt:
Add design document for the system activation parts. I'll shortly be
committing many patches that add system activation using a setuid
launcher into CVS, so expect things to be broken for a few hours.

17 years ago* cmake/modules/FindKDEWIN.cmake: fixed comment
Ralf Habacker [Thu, 19 Jul 2007 20:16:09 +0000 (20:16 +0000)]
* cmake/modules/FindKDEWIN.cmake: fixed comment
* cmake/modules/FindKDEWIN32.cmake: removed obsolate cmake module

17 years ago2007-07-18 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Wed, 18 Jul 2007 21:43:23 +0000 (21:43 +0000)]
2007-07-18  Havoc Pennington  <hp@redhat.com>

* dbus/dbus-message.c (dbus_message_get_cached)
(dbus_message_cache_or_finalize): don't mess with message from
message cache outside of the cache lock. Bug #9164 from Jonathan
Matthew.

17 years ago2007-07-13 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Sat, 14 Jul 2007 02:44:01 +0000 (02:44 +0000)]
2007-07-13  Havoc Pennington  <hp@redhat.com>

* Add indent-tabs-mode: nil to all file headers.