Commit graph

1408 commits

Author SHA1 Message Date
Havoc Pennington
08079a5bde 2006-09-16 Havoc Pennington <hp@redhat.com>
* dbus/dbus-sysdeps-unix.h: small change to Peter's patch to make
	dbus-sysdeps-unix-util.c build, add unix-specific sysdeps header.

	* dbus/dbus-sysdeps.h, dbus-sysdeps-unix.c: patch from Peter
	Kümmel bug #8249 to make the sysdeps.h read/write/open/close
	functions specifically for sockets only, and move generic
	read/write/open/close into unix-specific code.
2006-09-16 15:34:34 +00:00
Havoc Pennington
e24dec0a89 2006-09-14 Havoc Pennington <hp@redhat.com>
* dbus/dbus-transport-unix.c (unix_do_iteration): fix a valgrind
	complaint about accessing revents when poll returns 0, from Julian Seward.
2006-09-14 13:53:16 +00:00
John (J5) Palmieri
d0ddf4a5dc * bump to 0.94 2006-09-14 05:48:35 +00:00
John (J5) Palmieri
a480006b1c * Released 1.0 RC 1 (0.93) 2006-09-14 05:46:22 +00:00
John (J5) Palmieri
d8a9336da0 * dbus/dbus-sysdeps-util-unix.c: Forgot to pass NULL as the second
parameter to  _dbus_close
2006-09-14 05:41:20 +00:00
John (J5) Palmieri
1180691b35 * dbus/dbus-sysdeps-util-unix.c (_dbus_write_pid_file):
use _dbus_close instead of close
2006-09-14 05:20:12 +00:00
John (J5) Palmieri
e7563d502b * dbus/dbus-sysdeps.c: Add support for LOCAL_CREDS socket
credentials.  Fixes "external" authentication under e.g. NetBSD
  which does not support any other socket credentials mechanism.
  (Patch from Julio M. Merino Vidal  <jmmv at NetBSD dot org>)
2006-09-14 05:07:11 +00:00
John (J5) Palmieri
0355d27f27 * dbus/dbus-server.c: remove a todo item 2006-09-14 04:31:31 +00:00
John (J5) Palmieri
57ab23491c * dbus/dbus-threads.c: Allow recursive mutex's to be passed into
dbus_threads_init and be used by the dbus mutex functions to
  avoid deadlocks.

* doc/TODO: Remove recursive mutex dbus_connection_dispatch TODO item
2006-09-14 04:26:00 +00:00
John (J5) Palmieri
f82bdd3ab3 * dbus/dbus-sysdeps-util-unix.c (_dbus_directory_get_next_file):
use threadsafe readdir_r instead of readdir
2006-09-13 19:13:17 +00:00
John (J5) Palmieri
642335f681 * dbus-threads.c (dbus_threads_init_default): New method for
initializing the internal thread implementation (Patch from
  Alexander Larsson <alexl at redhat dot com>)
2006-09-13 19:09:45 +00:00
John (J5) Palmieri
15c6023885 * remove a bunch of todo items from the 1.0 list 2006-09-11 17:41:21 +00:00
John (J5) Palmieri
9cfb902807 * bus/activation.c, bus/desktop-file.c: Distinguish between OOM and
key not found
2006-09-11 15:24:10 +00:00
John (J5) Palmieri
05d90f4f20 * dbus/dbus-internal.c: Add dbus_is_verbose so we can have more
complex debugging code

* dbus/dbus-marshal-basic.c (_dbus_marshal_read_fixed_multi): Move
  between the test suite ifdefs
  (_dbus_verbose_bytes): return if verbosity is not enabled
2006-09-11 15:05:21 +00:00
John (J5) Palmieri
eed8a8a7bd * dbus/dbus-marshal-recursive-util.c, dbus/dbus-marshal-recursive.c:
remove DBusMark
2006-09-11 14:42:48 +00:00
Havoc Pennington
8e659dac9f 2006-09-10 Havoc Pennington <hp@redhat.com>
patch mostly by Peter Kümmel, bug #8211

	* dbus/dbus-sysdeps-unix.c: new file, which splits out
	unix-specific stuff in dbus-sysdeps.c

	* dbus/dbus-sysdeps.c: don't include any UNIX-only headers,
	and move unix-specific stuff to dbus-sysdeps-unix.c

	* configure.in: check HAVE_ERRNO_H
2006-09-10 21:37:10 +00:00
John (J5) Palmieri
f61a63cefb * bus/test-main.c (main): Initialize threading during tests
* dbus/dbus-connection.c (_dbus_connection_new_for_transport):
  Unlock connection on error
  (generate_local_error_message): static method for generating
  an error message when we don't have a message to reply to
  (_dbus_connection_block_pending_call): Send a disconnect error
  instead of just a timeout (NULL) when the bus gets disconnected
  while blocking for a reply.
2006-09-08 17:21:37 +00:00
John (J5) Palmieri
b4d571bba3 * dbus/dbus-connection.c (dbus_connection_dispatch): Properly remove
filters (Patch from Kimmo Hämäläinen <kimmo dot hamalainen at nokia dot com>)
2006-09-08 15:23:50 +00:00
John (J5) Palmieri
b19511946f * dbus/dbus-connection-internal.h: Add prototype for
_dbus_connection_test_get_locks to remove warning
2006-09-07 19:02:22 +00:00
John (J5) Palmieri
14b178a222 * dbus/dbus-spawn.c (_dbus_spawn_async_with_babysitter): Make sure we
close child_err_report_pipe[WRITE_END] on exec (Patch from
  Kimmo Hämäläinen <kimmo dot hamalainen at nokia dot com>)
2006-09-07 18:28:13 +00:00
John (J5) Palmieri
d3ae852746 * Clean up close calls to use _dbus_close (Patch from
Kimmo Hämäläinen <kimmo dot hamalainen at nokia dot com>)
2006-09-07 18:24:11 +00:00
John (J5) Palmieri
1eae184450 * doc/TODO:
- Remove pending call locking todo item
- dbus_connection_open now holds hard ref.  Remove todo item
- do proper locking on _dbus_bus_check_connection_and_unref
  and handle DBUS_BUS_STARTER. Remove todo item
- Warn on closing of a shared connection.  Remove todo item

* bus/bus.c, bus/connection.c, bus/dispatch.c, dbus/dbus-bus.c,
  dbus/dbus-connection.c: Use the dbus_connection_close_internal
  so we don't get the warning when closing shared connections

* test/test-service.c, test/test-shell-service.c: Applications
  don't close shared connections themselves so we unref instead of
  close

* test/test-utils.c (test_connection_shutdown): Close the connection

* dbus/dbus-bus.c (_dbus_bus_check_connection_and_unref): Changed to
  _dbus_bus_check_connection_and_unref_unlocked since we only call this
  method on a locked connection.
  Make sure we call _dbus_connection_unref_unlocked instead of
  dbus_connection_unref also.
  Handle DBUS_BUS_STARTER correctly

* dbus/dbus-connection.c (connection_record_shared_unlocked):
  Mark as shared and hard ref the connection
  (connection_forget_shared_unlocked): Remove the hard ref from the
  connection
  (_dbus_connection_close_internal_and_unlock):  New internal function
  which takes a locked connection and unlocks it after closing it
  (_dbus_connection_close_internal): New internal function which acts
  like the origonal dbus_connection_close method by grabbing a connection
  lock and calling _dbus_connection_close_internal_and_unlock
  (dbus_connection_close): Public close method, warns when the app
  trys to close a shared connection
2006-09-06 22:00:07 +00:00
John (J5) Palmieri
61316dd897 * bus/driver.c:
(bus_driver_generate_introspect_string): New method for populating
  a DBusString with the introspect data
  (bus_driver_handle_introspect): Move introspect generation code to
  bus_driver_generate_introspect_string

* bus/main.c:
  (introspect): New function which prints out the intropect data and
  exits
  (main): Add a --introspect switch
2006-09-06 21:16:12 +00:00
John (J5) Palmieri
e4f3d0ca17 * doc/TODO: Removed dtd publishing item.
It seems the dtd has already been added at
  http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd
2006-09-06 19:40:54 +00:00
John (J5) Palmieri
88f69757b9 * doc/TODO, various source files: Audited todo's and FIXME's and
prepended the ones we should be looking at with 1.0.  Those
  prepended with 1.0? need clerification or might not be needed
  for 1.0
2006-09-06 00:14:06 +00:00
John (J5) Palmieri
5765788912 * dbus/dbus-pending-call.c: Add some checks so we don't crash on
NULL in the public API (Patch from Kimmo Hämäläinen
  <kimmo dot hamalainen at nokia dot com>)
2006-09-05 22:05:12 +00:00
John (J5) Palmieri
0553d5cd94 * configure.in: Fix for OS-X compile time endian issues (patch from
Benjamin Reed <ranger at befunk dot com>)
2006-09-05 21:56:20 +00:00
John (J5) Palmieri
cb51809e9c * configure.in: Check for no-common compiler flag (OS-X fix from
Benjamin Reed <ranger at befunk dot com>)
2006-09-05 21:51:58 +00:00
John (J5) Palmieri
ee6964d6a0 * tools/dbus-launch.c: Add a sigterm handler (patch from Frederic Crozat
<fcrozat at mandriva dot com>)
2006-09-01 20:47:09 +00:00
Havoc Pennington
afc2a6e56a 2006-08-29 Havoc Pennington <hp@redhat.com>
* test/test-service.c (path_message_func): fix lack of return value

	* dbus/dbus-sysdeps.c (_dbus_printf_string_upper_bound): fix
	formatting, remove #ifdef, and fix docs. #ifdef doesn't make
	any more sense than on anything else in this file.
	(_dbus_get_tmpdir): add const to return value, and keep the
	results of the various getenv around in a static variable.
2006-08-30 01:27:44 +00:00
Havoc Pennington
338c96b4c6 2006-08-29 Havoc Pennington <hp@redhat.com>
* dbus/dbus-sysdeps-util.c, dbus/dbus-sysdeps-util-unix.c: change
	from Ralf Habacker to move UNIX-specific sysdeps into a separate file.
2006-08-30 01:06:28 +00:00
John (J5) Palmieri
c904d4d501 * test/Makefile.am: change find to use syntax that works with non
gnu versions of find
2006-08-25 19:59:49 +00:00
John (J5) Palmieri
5ee4ac1a30 * dbus/dbus-transport.c: fix invalid deref when checking if
a vtable method exists (Patch from Christian Ehrlicher
  <ch dot ehrlicher at gmx dot de>)
2006-08-25 19:56:00 +00:00
John (J5) Palmieri
163f42a8b1 * configure.in, dbus/Makefile.am, test/name-test/run-test.sh,
test/name-test/Makefile.am: Fixed some issues with getting get dbus
  to build with builddir != srcdir (Taken from a patch by Bernard Leak
  <bernard at brenda-arkle dot demon dot co dot uk>)
2006-08-25 19:50:16 +00:00
John (J5) Palmieri
8f9f3deb90 * configure.in: Fix DBUS_DAEMONDIR to use EXPANDED_BINDIR for the
default case
2006-08-25 19:33:39 +00:00
John (J5) Palmieri
54cad19215 - document --enable-kqueue 2006-08-25 19:20:15 +00:00
John (J5) Palmieri
4af7b0cfd2 * configure.ac, bus/Makefile.am: Generalize kqueue support so that
it works on any system providing this interface, not only FreeBSD.
   For example, NetBSD. (Patch by Julio M. Merino Vidal  <jmmv at NetBSD dot org>)
2006-08-25 19:18:52 +00:00
Havoc Pennington
f678f8dd41 add some items related to shared connections 2006-08-24 16:07:25 +00:00
Havoc Pennington
6fcd97c084 2006-08-20 Havoc Pennington <hp@redhat.com>
* doc/dbus-faq.xml, doc/dbus-tutorial.xml: some improvements to
	the docs
2006-08-20 21:41:42 +00:00
John (J5) Palmieri
c056415767 - bump release 2006-08-18 20:31:03 +00:00
John (J5) Palmieri
79b1e99664 * Released 0.92
* dbus/dbus-threads.c (dbus_threads_init): change the documentation
  to reflect the init late change

* bus/bus.c (bus_context_new): Check user before we fork so we can
  print out an error message a user will be able to see
2006-08-18 20:24:56 +00:00
John (J5) Palmieri
7cd5291944 Patch provided by Ralf Habacker (ralf dot habacker at freenet dot de)
* dbus/dbus-sysdeps.c, dbus/dbus-threads.c, dbus/dbus-internals.h:
  Add two more global locks for use on windows platforms.  These are
  unused on non-windows platforms but are not ifdefed out to avoid
  potential bugs (i.e. the few bytes lost does not warrent the extra
  maintanence and complexity that having seperate sets of locks would
  cause)
2006-08-18 15:46:59 +00:00
Robert McQueen
711c065e59 2006-08-17 Alp Toker <alp@atoker.com>
* doc/dbus-specification.xml: Fix some minor typos.
2006-08-17 21:20:13 +00:00
John (J5) Palmieri
da5ff2dcb7 * configure.in: use instead of
to determine where to store the pid since the init scripts manipulate
        the pid file (patch from Marcelo Ricardo Leitner
        <marcelo dot leitner at terra dot com dot br>.
2006-08-17 18:46:00 +00:00
John (J5) Palmieri
fee32fcda3 * commit the rest of the ChangeLog 2006-08-17 03:12:44 +00:00
John (J5) Palmieri
14cc7d28a8 * dbus/dbus-threads.c: Add static DBusList *uninitialized_mutex_list and
static DBusList *uninitialized_condvar_list to support new late
        initialization threading model.  In this model threads can be initialized
        even after the D-Bus API has been used but still needs to be initialized
        before the second thread has been started.  Mutexes and condvar addresses
        are stored in the two static lists and are replaced with actuall locks
        when threads are initalized.
        (_dbus_mutex_new_at_location): New method for creating a mutex and placing
        the location into the static list
        (_dbus_mutex_free_at_location): New method for removing a mutex location
        from the static list and freeing the mutex
        (_dbus_condvar_new_at_location): New method for creating a conditional
        variable and placing the location into the static list
        (_dbus_condvar_free_at_location): New method for removing a conditional
        variable location from the static list and freeing the conditional variable
        (init_uninitialized_locks): Atomic method which goes through the static
        lists of mutex and condvar location and updates them with actuall locks
        (init_global_locks): changed to init_locks

        * dbus/dbus-connection.c:
        (_dbus_connection_test_get_locks): New method for tests to check connections
        (_dbus_connection_new_for_transport): Use the new at_location mutex and
        condvar API
        (dbus_connection_allocate_data_slot): Pass in the global lock address
        to _dbus_data_slot_allocator_alloc

        * dbus/dbus-dataslot.c:
        (_dbus_data_slot_allocator_alloc): Use the address of the mutex
        instead of the mutex itself

        * dbus/dbus-message.c:
        (dbus_message_allocate_data_slot): Pass in the global lock address
        to _dbus_data_slot_allocator_alloc

        * dbus/dbus-pending-call.c:
        (dbus_pending_call_allocate_data_slot): Pass in the global lock address
        to _dbus_data_slot_allocator_alloc

        * dbus/dbus-server.c:
        (_dbus_server_init_base): Use the new at_location mutex API
        (dbus_server_allocate_data_slot): Pass in the global lock address
        to _dbus_data_slot_allocator_alloc

        * test/name-test/test-threads-init.c: New test case for late thread
        initialization
2006-08-16 22:30:15 +00:00
John (J5) Palmieri
5b5da52975 * dbus/dbus-dataslot.c (_dbus_data_slot_allocator_alloc):
Change _dbus_abort to _dbus_assert_not_reached because _dbus_abort
        causes compile problems when asserts are turned off
        Keeping _dbus_warn for printing out the message so even if
        asserts are turned off the user gets the messages that something is
        wrong
2006-08-14 19:33:20 +00:00
John (J5) Palmieri
c1091cbbd2 Patches by Kjartan Maraas <kmaraas at gnome dot org>
* bus/services.c (bus_service_list_queued_owners):
        Add a pointer cast to fix compiler warning

        * dbus/dbus-dataslot.c (_dbus_data_slot_list_get):
        return a NULL instead of FALSE since the return type
        is not expecting a boolean

        * dbus/dbus-marshal-basic.c (_dbus_marshal_test):
        Remove unused variable

        * dbus/dbus-marshal-recursive-util.c (node_new):
        return a NULL instead of FALSE since the return type
        is not expecting a boolean

        * dbus/dbus-server-debug-pipe.c (_dbus_transport_debug_pipe_new):
        Send a NULL into _dbus_transport_new_for_fd instead of a FALSE
        because we are expecting a pointer not a boolean

        * dbus/dbus-sysdeps-util.c (_dbus_get_tmpdir):
        add void as the parameter so some compilers
        don't complain

        * dbus/dbus-transport-unix.c (_dbus_transport_new_for_domain_socket,
          _dbus_transport_new_for_tcp_socket):
        Send a NULL into _dbus_transport_new_for_fd instead of a FALSE
        because we are expecting a pointer not a boolean

        * test/shell-test.c (test_command_line):
        cast the second argument to _dbus_list_append to avoid compiler
        warnings

        * test/test-names.c (main): remove unused variable

        * test/test-service.c (check_hello_from_self_reply):
        Initialize echo_message and echo_reply to NULL

        * test/test-shell-service.c (handle_echo):
        Remove unused variable and cast the third parameter passed to
        dbus_connection_get_object_path_data to avoid compiler warrnings

        * test/name-test/test-names.c (clear_message_queue):
        Remove unused function

        * test/name-test/test-pending-call-dispatch.c:
        Fix format string in printf
2006-08-14 19:11:35 +00:00
John (J5) Palmieri
2592a2abb2 * dbus/dbus-bus.c:
* test/name-test/test-names.c:
        Remove test method dbus_bus_connection_get_unique_name because
        we already have public method dbus_bus_get_unique_name that
        does the exact same thing
2006-08-14 18:12:20 +00:00
John (J5) Palmieri
b3b725b113 * fix typos in Julio's previous patch which cause make check to fail 2006-08-11 22:13:34 +00:00