Commit graph

1974 commits

Author SHA1 Message Date
Havoc Pennington
abfdfb2dfb 2006-10-27 Havoc Pennington <hp@redhat.com>
* dbus/dbus-connection.c (dbus_connection_open_private): document
	how to choose shared vs. private connections
2006-10-28 01:50:08 +00:00
Havoc Pennington
eaefe03a88 2006-10-27 Havoc Pennington <hp@redhat.com>
* dbus/dbus-test.c: enclose more of the file in the
	DBUS_BUILD_TESTS check.

	* dbus/dbus-sysdeps-pthread.c (PTHREAD_CHECK): fix for
	DBUS_DISABLE_ASSERT case.

	* dbus/dbus-connection.c (dbus_connection_get_unix_user): document
	that it only works on the server side

	* dbus/dbus-bus.c: add a global lock covering the BusData we
	attach to each connection
	(internal_bus_get): lock our access to the BusData
	(dbus_bus_register): lock the entire registration process
	with _DBUS_LOCK(bus_datas). If we get the lock and
	registration is already complete, silently return (vs. previous
	behavior of aborting).
	(dbus_bus_set_unique_name): lock the BusData
	(dbus_bus_get_unique_name): lock the BusData
2006-10-28 01:41:37 +00:00
John (J5) Palmieri
feb7d3a0f0 * bus/config-parser.c (service_dirs_find_dir,
service_dirs_append_unique_or_free,
  service_dirs_append_link_unique_or_free): New static methods
  for only appending unique service directory names into
  the service directory list
  (merge_included, bus_config_parser_content): Only add unique
  service directory names into the list
2006-10-27 18:30:22 +00:00
Havoc Pennington
fd27857e31 2006-10-27 Havoc Pennington <hp@redhat.com>
* dbus/dbus-sysdeps-pthread.c: make the "count" and "holder"
	variables volatile, suggested by Thiago. Document struct fields.
	(PTHREAD_CHECK): remove pthread error checking if assertions are
	disabled, should reduce the no-assertions case to the bare
	minimum code.
2006-10-27 14:00:20 +00:00
Havoc Pennington
fbfec98d0f 2006-10-26 Havoc Pennington <hp@redhat.com>
* dbus/dbus-sysdeps-pthread.c (_dbus_pthread_mutex_lock): change
	to be recursive
	(_dbus_pthread_mutex_unlock): make it recursive
	(_dbus_pthread_condvar_wait): save/restore the recursion count
	(_dbus_pthread_condvar_wait_timeout): save/restore the recursion count
2006-10-27 03:29:09 +00:00
Havoc Pennington
bdbbf46ca8 2006-10-26 Havoc Pennington <hp@redhat.com>
* doc/dbus-specification.xml: clarify the UUID text slightly

	* dbus/dbus-sysdeps-pthread.c: check for and mostly abort on
	pthread errors. Add DBusMutexPThread and DBusCondVarPThread
	in preparation for being able to extend them for e.g. recursive
	mutexes.
2006-10-27 02:17:42 +00:00
Havoc Pennington
5886f5326d 2006-10-26 Havoc Pennington <hp@redhat.com>
* dbus/dbus-threads.[hc]: Documentation improvements. Clarify how
	condition variables relate to recursive mutexes.

        * dbus/dbus-sysdeps-pthread.c, dbus/dbus-sysdeps-win-thread.c,
	dbus/dbus-threads.c: Split the platforms-specific thread
	implementations into their own files.

	* dbus/dbus-sysdeps-pthread.c
	(_dbus_pthread_condvar_wait_timeout): invert the return value, it
	was backward. Not that anything uses it.
2006-10-27 01:09:24 +00:00
John (J5) Palmieri
caae991f97 * dbus-sysdeps-unix.c (_dbus_set_local_creds): Clean up the
LOCAL_CREDS vs CMSGCRED stuff a bit.  Prefer CMSGCRED.  This
  needs to be cleaned up more.

* doc/TODO: Add a todo that *BSD hackers should look at cleaning
  up the CREDS issue.
2006-10-26 19:01:10 +00:00
John (J5) Palmieri
82c9cd05cd * configure.in, dbus-1.pc.in: Check to see if thread methods
are in glibc or libpthread and add -lpthread to the link stage
  if it is the latter
2006-10-26 18:06:07 +00:00
Thiago Macieira
f17c060c72 * dbus/dbus-connection.c (_dbus_connection_open_internal): Fix
bug 8780: the connection lock is only required while recording
        the shared connection, so protect only that code
        section. Don't require connection_lookup_shared to return a
        locked connection.
2006-10-26 18:03:24 +00:00
Thiago Macieira
01b91ba121 * tools/dbus-launch-x11.c (get_session_file, init_x_atoms):
check if get_machine_uuid() returns NULL before proceeding any
        further: we can't init the X atoms or create a session file
        name if there is no machine ID.
	This solves a crash reported by some users if
        --exit-with-session was used without --autolaunch=<machine-id>
2006-10-26 17:34:49 +00:00
John (J5) Palmieri
a107da8489 * tools/dbus-launch.c (main): run the dbus-daemon in the builddir
if tests are enabled and the DBUS_USE_TEST_BINARY env variable is set

* tools/run-with-tmp-session-bus.sh: set DBUS_USE_TEST_BINARY
  before we run dbus-launch

* configure.in: define TEST_BUS_BINARY to be the full path to
  dbus-daemon in the build root
2006-10-26 15:55:44 +00:00
Sjoerd Simons
36608068cf 2006-10-25 Sjoerd Simons <sjoerd@luon.net>
* dbus/Makefile.am:
   * tools/Makefile.am:
   * toos/dbus-uuidgen.1:
      Move the machine-id file to /var/lib/dbus
2006-10-25 16:42:37 +00:00
David Zeuthen
2a78603b0e 2006-10-24 David Zeuthen <davidz@redhat.com>
* dbus/dbus-threads.c (init_uninitialized_locks): Fix typo so it's
        _dbus_assert (thread_init_generation != _dbus_current_generation)
        not _dbus_assert (thread_init_generation == _dbus_current_generation)
2006-10-24 21:28:57 +00:00
Thiago Macieira
9bb44a470f * dbus/dbus-sysdeps.h:
* dbus/dbus-sysdeps-unix.c: Add function
	_dbus_make_file_world_readable that chmods a file to 0644.

	* dbus/dbus-sysdeps-unix.c (_dbus_get_autolaunch_address):
        Avoid writing to the static "argv" array, thereby avoiding a
        COW on the child process.

	* dbus/dbus-internals.c (_dbus_create_uuid_file_exclusively):
        call _dbus_make_file_world_readable on the created file.
2006-10-24 20:25:01 +00:00
David Zeuthen
cb905b58f0 2006-10-23 David Zeuthen <davidz@redhat.com>
* dbus/dbus-memory.c: Use atomic variable to protect
        n_blocks_outstanding otherwise OOM will be reported using SMP on
        some arches

        * bus/dispatch.c: Add missing end of line characters

        * bus/desktop-file.c (parse_section_start, parse_key_value)
        (bus_desktop_file_load): Propertly handle OOM

        * dbus/dbus-threads.c (init_uninitialized_locks): Check that
        thread_init_generation equals _dbus_current_generation, not 0
2006-10-23 17:25:52 +00:00
Havoc Pennington
8ea5a53324 2006-10-22 Havoc Pennington <hp@redhat.com>
* dbus/dbus-connection-internal.h: move prototype of
	_dbus_bus_notify_shared_connection_disconnected_unlocked() here so
	it isn't in a public header and doesn't end up in the DBusBus
	group in Doxygen
2006-10-22 15:03:10 +00:00
Havoc Pennington
8de13aed87 2006-10-21 Havoc Pennington <hp@redhat.com>
* Makefile.am (EXTRA_DIST): dist cleanup-man-pages.sh so it's in
	the tarball if packagers want to run it

	* cleanup-man-pages.sh: Add a script which munges all the internal
	API man pages out of the Doxygen output. This reduces the size of
	the installed man pages from 7 to 2 megs, and avoids
	namespace-polluting pages. Right now (like Doxygen) this script
	isn't in the build, it's something packagers can do manually.
2006-10-22 00:31:08 +00:00
Havoc Pennington
24083e8f07 2006-10-21 Havoc Pennington <hp@redhat.com>
* dbus/dbus-connection.h: don't include the watch/timeout
	functions in connection section
2006-10-21 23:38:11 +00:00
Havoc Pennington
bf172ce4c5 2006-10-21 Havoc Pennington <hp@redhat.com>
* Documentation! Whee! Doxygen now 100% silent. If you make it
	angry again, you will be punished.
2006-10-21 23:09:18 +00:00
Havoc Pennington
58a0d2759a 2006-10-21 Havoc Pennington <hp@redhat.com>
* More documentation - all public API now documented according to
	Doxygen
2006-10-21 21:57:31 +00:00
Havoc Pennington
fed8880c6f 2006-10-21 Havoc Pennington <hp@redhat.com>
* Document a bunch of undocumented stuff
2006-10-21 18:51:30 +00:00
Havoc Pennington
e19ebac55d 2006-10-21 Havoc Pennington <hp@redhat.com>
* Clean up Doxygen group markers for public API so Doxygen finds
	everything (not comprehensively fixed for private API).
	Means all remaining Doxygen warnings are just about missing docs
	and thus pretty simple to resolve.
2006-10-21 18:17:02 +00:00
Havoc Pennington
716059087d 2006-10-21 Havoc Pennington <hp@redhat.com>
* dbus/dbus-macros.h: add DBUS_GNUC_DEPRECATED macro

	* dbus/dbus-message.h: mark dbus_message_iter_get_array_len()
	as DBUS_GNUC_DEPRECATED
2006-10-21 17:43:30 +00:00
Havoc Pennington
174c63f176 2006-10-21 Havoc Pennington <hp@redhat.com>
* Move all private API into the private Doxygen group sections of
	the files, so they don't show up in the public API docs
2006-10-21 17:21:45 +00:00
Havoc Pennington
afa4ffbd85 2006-10-21 Havoc Pennington <hp@redhat.com>
* dbus/dbus-message.h: put #ifndef DBUS_DISABLE_DEPRECATED around
	dbus_message_iter_get_array_len().

	* throughout: documentation improvements.
2006-10-21 17:08:08 +00:00
Havoc Pennington
65fcbd6287 fix typo 2006-10-21 03:14:50 +00:00
Havoc Pennington
04964f9562 more todo items 2006-10-20 05:56:57 +00:00
Havoc Pennington
ebb239648b 2006-10-20 Havoc Pennington <hp@redhat.com>
* doc/TODO: remove the int64 thing from 1.0 since it doesn't
	matter, and the message-loader-breaker thing since nobody is going
	to do it.  Add an item to 1.0 about supporting recursive locks
	in dbus_threads_init_default() though, since it should be easy.

	* dbus/dbus-connection.c (_dbus_connection_read_write_dispatch):
	Fix this in the !dispatch case to avoid busy-looping after
	disconnection

        * More misc docs improvements
2006-10-20 05:16:58 +00:00
Havoc Pennington
2a895edf6b 2006-10-19 Havoc Pennington <hp@redhat.com>
* more Doxygen-related fixes (lots of moving things from the
	public to internal section in dbus-connection.c)
2006-10-20 03:42:03 +00:00
Havoc Pennington
19e0efd206 remove untrue comment 2006-10-20 03:25:22 +00:00
Havoc Pennington
15ef0ef6fb 2006-10-19 Havoc Pennington <hp@redhat.com>
* Fix a pile of Doxygen warnings and missing docs
2006-10-20 03:05:00 +00:00
John (J5) Palmieri
fe1f793a4f * bus/dir-watch-default.c, bus/dir-watch-dnotify.c,
bus/dir-watch-kqueue.c (bus_watch_directory): Pass in a BusContext
  instead of a void *.  kqueue uses this to get the context's loop
  while the other modules ignore the parameter.  This allows us to
  avoid platform conditionals

* bus/bus.c (process_config_postinit): Pass in the context to the
  watch
2006-10-19 19:43:05 +00:00
John (J5) Palmieri
eb357c5ff9 * bus/messagebus.in, bus/rc.messagebus.in: run dbus-uuidgen --ensure
when starting the system bus
2006-10-19 15:34:47 +00:00
John (J5) Palmieri
fa38150865 * configure.in: More fixups for cross compile (Patch from
Marco Pracucci <development at pracucci dot com>)
2006-10-18 20:28:26 +00:00
Havoc Pennington
89d97b4779 2006-10-17 Havoc Pennington <hp@redhat.com>
* tools/dbus-send.c (main): don't close shared connection, fix
	from Timo Hoenig
2006-10-17 22:31:16 +00:00
Havoc Pennington
a947713c35 2006-10-17 Havoc Pennington <hp@redhat.com>
* configure.in (CPPFLAGS): don't do -DDBUS_API_SUBJECT_TO_CHANGE here

	* dbus/dbus.h: drop the DBUS_API_SUBJECT_TO_CHANGE requirement,
	since realistically it doesn't look like we'll be changing it
	anymore.
2006-10-17 21:04:12 +00:00
Havoc Pennington
f1ca9b89e9 2006-10-17 Havoc Pennington <hp@redhat.com>
* dbus/dbus-internals.c (_dbus_warn_check_failed): new function to
	be used for return_if_fail type warnings; prefixes the pid, and
	fatal by default.
2006-10-17 20:52:13 +00:00
John (J5) Palmieri
c4b5ea1b95 - bump version 2006-10-14 17:40:35 +00:00
John (J5) Palmieri
3026a5ed19 * configure.in: Released 1.0 RC 2(0.94)
Add check for -fPIC and enable it if available
2006-10-14 17:38:56 +00:00
John (J5) Palmieri
2dd42bd7f5 * doc/TODO: Remove the check TODO item 2006-10-14 16:25:53 +00:00
John (J5) Palmieri
100bcd1212 * dbus-transport-socket.c (exchange_credentials):
Print out more detailed errors if reading or sending
  credentials fail (Patch from Julio M. Merino Vidal
  <jmmv at NetBSD dot org>)
2006-10-13 21:12:24 +00:00
John (J5) Palmieri
92222fc5f9 * configure.in: when checking for posix getpwnam_r assume true
for cross compiles
2006-10-13 20:32:48 +00:00
John (J5) Palmieri
f602dcb89a * configure.in: Check for gethostbyname first before we check for it
in libnsl.  On gnu systems it is implemeneted
2006-10-13 20:01:16 +00:00
Havoc Pennington
2f2a3334de 2006-10-13 Havoc Pennington <hp@redhat.com>
* dbus/dbus-connection.c
	(dbus_connection_send_with_reply_and_block): fix to handle closed
	connections, from Tambet Ingo bug #8631
2006-10-13 16:26:47 +00:00
John (J5) Palmieri
6d34310b42 * configure.in: use AC_TRY_COMPILE for dirfd instead of AC_TRY_RUN 2006-10-12 01:05:16 +00:00
John (J5) Palmieri
2db06dbf18 * test/name-test/Makefile.am: don't link against both libdbus and
libdbus-convenience
2006-10-11 17:30:58 +00:00
John (J5) Palmieri
77aab542eb * configure.in: check for dirfd even if it is a macro
(Patch from Timothy Redaelli <drizzt at gufi dot org>)
2006-10-11 17:29:01 +00:00
John (J5) Palmieri
c6465198ec * configure.in: define _POSIX_PTHREAD_SEMANTICS on solaris
avoid using dirfd on systems that don't have dirfd
  (Patch by Brian Cameron <brian dot cameron at sun dot com>)
2006-10-08 16:56:50 +00:00
John (J5) Palmieri
ff99239bd4 * dbus/dbus-sysdeps.c (_dbus_abort): Remove from
#ifndef DBUS_DISABLE_ASSERTS macro to fix distcheck

* dbus/dbus-sysdeps-unix.c (_dbus_print_backtrace): Remove from
  #if !defined (DBUS_DISABLE_ASSERT) || defined(DBUS_BUILD_TESTS)
  macro because _dbus_abort calls it

* tools/Makefile.am: Add dbus-launch.h to the source list so distcheck works
2006-10-02 18:45:27 +00:00