2006-12-13 Ralf Habacker <ralf.habacker@freenet.de>
[platform/upstream/dbus.git] / ChangeLog
index 96eed11..7a4ce8b 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,885 @@
+2006-12-13  Ralf Habacker  <ralf.habacker@freenet.de>
+
+       * dbus/dbus-sysdeps-win-thread.c (_dbus_condvar_wait_win32):
+       correctness fix. - Patch from Christian Ehrlicher
+
+2006-12-13  Ralf Habacker  <ralf.habacker@freenet.de>
+
+       * dbus/dbus-internals.h: msvc also knows about __FUNCTION__, 
+       we should also use it. - Patch from Christian Ehrlicher
+
+2006-12-13  Ralf Habacker  <ralf.habacker@freenet.de>
+  
+       * dbus-sysdeps-util.c: added win32 related tests
+
+2006-12-12  Ralf Habacker  <ralf.habacker@freenet.de>
+
+       * dbus/dbus-string.c (_dbus_string_pop_line),
+       bus/desktop-file.c (parse_section_start,
+       parse_comment_or_blank,parse_key_value,): uses
+       _dbus_string_find_eol() to support platform independent eol style.
+
+2006-12-12  Ralf Habacker  <ralf.habacker@freenet.de>
+
+       * dbus/dbus-string.[ch] (_dbus_string_find_eol): new function. 
+       * dbus/dbus-string-util.c (_dbus_string_test): added testcases for 
+             _dbus_string_find_eol().
+       Approved by: Havoc Pennington.
+
+2006-12-12  Tim Dijkstra <tim@famdijkstra.org>
+
+       * configure.in: Added switch to disable user_database caching.
+
+       * dbus/dbus-userdb-util.c, dbus/dbus-userdb.c: Add ifdefs to
+       be able disable user_dabase caching.
+
+2006-12-12  Tim Dijkstra <tim@famdijkstra.org>
+
+       * bus/bus.c, bus/bus.h: Remove DBusUserDatabase from the BusContext 
+       struct. It is unnecessary we have a global one already. Also remove 
+       bus_context_get_user_database function, it is no longer needed.
+       Flush the global database on reload.
+
+       * dbus/dbus-userdb-util.c: Replace _dbus_user_database_get_groups 
+       with _dbus_groups_from_uid. It no longer needs a DBusUserDatabase.
+
+       * dbus/dbus-userdb.c, dbus/dbus-userdb.h: 
+       Add _dbus_user_database_flush_system. 
+       Make more functions DBUS_USERDB_INCLUDES_PRIVATE. 
+       Small unrelated change in _dbus_is_a_number: change 
+       _dbus_string_parse_int to _dbus_string_parse_uint. 
+
+       * bus/connection.c: Change call to _dbus_user_database_get_groups to 
+       _dbus_groups_from_uid.
+
+       * bus/policy.c, bus/policy.h: Change call to 
+       _dbus_user_database_get_groups to _dbus_groups_from_uid. Remove 
+       DBusUserDatabase from bus_policy_allow_user prototype, it no longer 
+       needs it.
+
+2006-12-12  John (J5) Palmieri  <johnp@redhat.com>
+
+       * bus/signal.c: Fix match_rule_equal errata
+       (CVE-2006-6107 - Patch from Kimmo Hämäläinen 
+       <kimmo.hamalainen@nokia.com>)
+
+2006-11-19  Thiago Macieira  <thiago@kde.org>
+
+       * dbus/dbus-sysdeps-pthread.c (_dbus_pthread_mutex_lock,
+        _dbus_pthread_condvar_wait,
+        _dbus_pthread_condvar_wait_timeout): set pmutex->holder to
+        pthread_self() after coming back from a conditional variable
+        wait as well as in one codepath where it was forgotten.
+       Approved by: Havoc Pennington.
+
+2006-11-17  Havoc Pennington  <hp@redhat.com>
+
+       * update-dbus-docs.sh: allow setting fd.org username via env
+       variable. Make it run autogen with --enable-xml-docs=yes
+       --enable-doxygen-docs=yes so configure will fail if the required
+       tools are missing.
+
+2006-11-17  Havoc Pennington  <hp@redhat.com>
+
+       * doc/dbus-faq.xml: minor FAQ tweaks
+
+2006-11-14  Havoc Pennington  <hp@redhat.com>
+       
+       * dbus/dbus-misc.c, dbus/dbus-misc.h: Move
+       dbus_get_local_machine_id() to its own file, no substantive
+       changes. There are a couple other things we might want to add that
+       are "misc" so moving out of dbus-connection.[hc] which is big
+       enough already.
+       
+2006-11-14  Havoc Pennington  <hp@redhat.com>
+
+       * dbus/dbus-internals.c (_dbus_generate_uuid): The spec said the
+       UUID had the timestamp last, but the implementation had it first;
+       move it to last since I think it's a tiny bit nicer (easier to
+       compare at a glance, faster to sort, less code), and will not
+       cause any practical compatibility problems. Also, always convert
+       the timestamp to big endian.
+
+       * doc/dbus-specification.xml: Clean up the docs on the UUID.
+
+       * tools/dbus-uuidgen.1: more prominently say it is not suitable
+       as a replacement for regular uuidgen/RFC4122.
+
+2006-11-14  John (J5) Palmieri  <johnp@redhat.com>
+
+       * dbus/dbus-threads.h: fix DBUS_THREAD_FUNCTIONS_ALL_MASK to have
+       the correct value so we don't assert when initalizing recursive threads
+
+       * test/name-test/test-thread-init.c: call dbus_threads_init_default
+       instead of _dbus_threads_init_debug since it is more of a real world
+       test
+
+2006-11-09  John (J5) Palmieri  <johnp@redhat.com>
+
+       * Released 1.0.0
+
+2006-11-09  John (J5) Palmieri  <johnp@redhat.com>
+
+       * AUTHORS: added Peter and Tor of windows porting fame
+
+2006-11-08  Havoc Pennington  <hp@redhat.com>
+
+       * doc/dbus-specification.xml: add a note about protocol stability
+
+       * doc/TODO: Remove "important for 1.0" section, replace with
+       "important for 1.2" section
+       
+2006-11-08  John (J5) Palmieri  <johnp@redhat.com>
+
+       * README: remove some of the out of date flags
+
+       * doc/TODO: Remove todo items which are done
+
+2006-11-08  John (J5) Palmieri  <johnp@redhat.com>
+
+       * tools/dbus-monitor.c: Handle sigint so we flush stdout
+       (Patch from Olli Salli <olli dot salli at collabora dot co dot uk>)
+
+2006-11-08  John (J5) Palmieri  <johnp@redhat.com>
+
+       * tools/dbus-monitor.1: update the manpage for dbus-monitor
+       (Patch from Olli Salli <olli dot salli at collabora dot co dot uk>)
+
+2006-11-08  John (J5) Palmieri  <johnp@redhat.com>
+
+       * AUTHORS: Update with all people listed in the ChangeLog
+
+2006-11-08  John (J5) Palmieri  <johnp@redhat.com>
+
+       * tools/dbus-monitor.c: add profiling tools to dbus-monitor
+       (Patch from Olli Salli <olli dot salli at collabora dot co dot uk>)
+
+2006-11-07  Havoc Pennington  <hp@redhat.com>
+
+       * HACKING: Update release instructions to include stuff about
+       stable releases, branching, etc. May not be totally correct,
+       please fix if needed, but keep instructions up-to-date so we do
+       each stable release consistently in the future.
+
+2006-11-07  Havoc Pennington  <hp@redhat.com>
+
+       * doc/dbus-specification.xml, doc/dbus-faq.xml, README: various
+       documentation updates. Bump faq/spec versions (not to 1.0; I don't
+       think the spec will be "finished"/1.0 when we ship the 1.0 library).
+
+2006-11-06  John (J5) Palmieri  <johnp@redhat.com>
+
+       * bus/bus.c: Missed patch - pass in the context to the directory watch
+
+2006-11-02  John (J5) Palmieri  <johnp@redhat.com>
+
+       * Released D-Bus 1.0 RC 3(0.95)
+
+2006-11-02  John (J5) Palmieri  <johnp@redhat.com>
+
+       * bus/activation.c (bus_activation_new): don't fail if we can not read
+       the directory as it may not exist
+
+2006-11-02  John (J5) Palmieri  <johnp@redhat.com>
+
+       * bus/config-parser.c (service_dirs_find_dir): use 
+       _dbus_list_get_next_link so we don't get stuck in an infinite loop
+       (start_busconfig_child): move processing of standard_session_servicedirs
+       tags here because they have no content
+       (bus_config_parser_content): check we don't have content in 
+       standard_session_servicedirs tag
+
+2006-11-02  John (J5) Palmieri  <johnp@redhat.com>
+
+       * tools/Makefile.am: Make sure the /var/lib/dbus directory is created
+       Packagers need to own this directory
+
+2006-11-02  John (J5) Palmieri  <johnp@redhat.com>
+
+       * tools/run-with-tmp-session-bus.sh: fixed script to replace the 
+       <standard_session_servicedirs> tag with a <sevicedir> tag that
+       points to the test service directory
+
+2006-11-02  John (J5) Palmieri  <johnp@redhat.com>
+
+       * configure.in: Add a check for DIR *dirp->dd_fd
+
+       * dbus/dbus-sysdeps-util-unix: if HAVE_DDFD is defined use 
+       DIR *dirp->dd_fd else use DIR *dirp->__dd_fd.  This takes care
+       of both Solaris and Irix
+
+2006-11-01  Havoc Pennington  <hp@redhat.com>
+
+       * bus/dbus-daemon.1.in: document standard_session_servicedirs
+
+2006-11-01  John (J5) Palmieri  <johnp@redhat.com>
+
+       * configure.in: expose DBUS_DATADIR
+       
+       * bus/config-parser.c: add the standard_session_servicedirs element
+       to the parser
+       (bus_config_parser_content): process the standard_session_servicedirs
+       element by getting the standard directories from sysdeps and merging
+       them into the service directory list
+       (test_default_session_servicedirs): make sure we get what we expect
+
+       * bus/session.conf.in: replace the servicedir tag with the 
+       standard_session_servicedirs tag
+
+       * dbus/dbus-list.h: remove the typedef of DBusList and place it in
+       dbus-sysdeps.h to avoid circular header dependencies
+
+       * dbus/dbus-sysdeps.h: add the typedef of DBusList
+
+       * dbus/dbus-sysdeps-unix.c (split_paths_and_append): utility function
+       which takes a string of directories delimited by colons, parses them 
+       out, appends a suffix and puts them in a list ignoring empty elements
+       (_dbus_get_standard_session_servicedirs): returns the standard 
+       directories for a session bus to look for service activation files
+       on Unix which includes the XDG_DATA_HOME, XDG_DATA_DIRS and 
+       DBUS_DATADIR directories
+
+       * test/data/valid-config-files/many-rules.conf: add the 
+       standard_session_servicedirs tag to the valid config file tests
+
+2006-10-30  Havoc Pennington  <hp@redhat.com>
+
+       * tools/dbus-launch.1, doc/TODO: capture intent to change the
+       command line options of dbus-launch a bit post 1.0
+
+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-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-27  John (J5) Palmieri  <johnp@redhat.com>
+
+       * 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  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-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-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-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-26  John (J5) Palmieri  <johnp@redhat.com>
+
+       * 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  John (J5) Palmieri  <johnp@redhat.com>
+
+       * 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  Thiago Macieira  <thiago@kde.org>
+
+       * 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  Thiago Macieira  <thiago@kde.org>
+
+       * 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  John (J5) Palmieri  <johnp@redhat.com>
+
+       * 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-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-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  Thiago Macieira  <thiago@kde.org>
+
+       * 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-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-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-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-21  Havoc Pennington  <hp@redhat.com>
+
+       * dbus/dbus-connection.h: don't include the watch/timeout
+       functions in connection section
+
+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  Havoc Pennington  <hp@redhat.com>
+
+       * More documentation - all public API now documented according to
+       Doxygen
+
+2006-10-21  Havoc Pennington  <hp@redhat.com>
+
+       * Document a bunch of undocumented stuff
+       
+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  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  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  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-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-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-19  Havoc Pennington  <hp@redhat.com>
+
+       * Fix a pile of Doxygen warnings and missing docs
+
+2006-10-19  John (J5) Palmieri  <johnp@redhat.com>
+
+       * 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  John (J5) Palmieri  <johnp@redhat.com>
+
+       * bus/messagebus.in, bus/rc.messagebus.in: run dbus-uuidgen --ensure
+       when starting the system bus
+
+2006-10-18  John (J5) Palmieri  <johnp@redhat.com>
+
+       * configure.in: More fixups for cross compile (Patch from 
+       Marco Pracucci <development at pracucci dot com>)
+
+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  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  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-14  John (J5) Palmieri  <johnp@redhat.com>
+
+       * configure.in: Released 1.0 RC 2(0.94)
+       Add check for -fPIC and enable it if available
+
+2006-10-14  John (J5) Palmieri  <johnp@redhat.com>
+
+       * doc/TODO: Remove the check TODO item
+
+2006-10-13  John (J5) Palmieri  <johnp@redhat.com>
+
+       * 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  John (J5) Palmieri  <johnp@redhat.com>
+
+       * configure.in: when checking for posix getpwnam_r assume true
+       for cross compiles
+
+2006-10-13  John (J5) Palmieri  <johnp@redhat.com>
+
+       * configure.in: Check for gethostbyname first before we check for it
+       in libnsl.  On gnu systems it is implemeneted 
+
+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-11  John (J5) Palmieri  <johnp@redhat.com>
+
+       * configure.in: use AC_TRY_COMPILE for dirfd instead of AC_TRY_RUN
+
+2006-10-11  John (J5) Palmieri  <johnp@redhat.com>
+
+       * test/name-test/Makefile.am: don't link against both libdbus and
+       libdbus-convenience
+
+2006-10-11  John (J5) Palmieri  <johnp@redhat.com>
+
+       * configure.in: check for dirfd even if it is a macro
+       (Patch from Timothy Redaelli <drizzt at gufi dot org>)
+
+2006-10-08  John (J5) Palmieri  <johnp@redhat.com>
+
+       * 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-02  John (J5) Palmieir  <johnp@redhat.com>
+
+       * 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  John (J5) Palmieir  <johnp@redhat.com>
+
+       * dbus/dbus-sysdeps-util-unix.c (dirent_buf_size): Add check for
+       MAXNAMELEN for Mac OSX.  (Patch from Jonas B <sanoix at gmail dot com>)
+
+2006-10-02  Thiago Macieira  <thiago@kde.org>
+
+       * tools/dbus-launch.c (main): make it complain and abort
+       execution in case an unknown option is given. Also, process
+       the '--' argument as the end of arguments.
+
+2006-10-01  Havoc Pennington  <hp@redhat.com>
+
+       * tools/dbus-launch.c (print_variables): if no syntax is given,
+       don't print something that's sort-of-half-sh-syntax, just print
+       a plain key-value pairs thing.
+
+       * tools/dbus-launch-x11.c: use machine ID rather than hostname for
+       the local machine representation (but still have the hostname in
+       the display). Remove the hostname from the display if it is
+       localhost. Change session files to be named
+       ~/.dbus/session-bus/machine-display. Change X atoms to be
+       underscore-prefixed so nobody whines about ICCCM compliance.
+       Otherwise name them the same as the env variables.
+       Change session file format to include key-value pairs and an
+       explanatory comment. Keys are the same as the env variables.
+       (set_address_in_x11): X property format can't depend on
+       sizeof(pid_t) on a particular machine, fix to always be 32 bits
+
+       * tools/dbus-launch.c: make --autolaunch take a machine id
+       argument. If --autolaunch is used with a program to run, complain
+       for now (but add a FIXME). Also, don't look for existing bus if 
+       there's a program to run (but add a FIXME).
+
+       * dbus/dbus-sysdeps-unix.c (_dbus_get_autolaunch_address): pass
+       machine uuid to dbus-launch (avoids linking dbus-launch to libdbus
+       just to get this, and avoids duplicating uuid-reading code).
+
+       * tools/dbus-launch.1: clarify various things
+       
+2006-10-01  Havoc Pennington  <hp@redhat.com>
+
+       * test/test-service.c (path_message_func): remove broken extra
+       unref that was hidden by the bugs in dbus-connection.c/dbus-bus.c
+
+       * test/test-shell-service.c (path_message_func): same fix
+       
+       * dbus/dbus-connection.c
+       (_dbus_connection_get_dispatch_status_unlocked): break up the
+       function a little for clarity and fix the notification of
+       dbus-bus.c to not require dispatch to be complete
+
+       * dbus/dbus-connection.c (dbus_connection_unref): improve the
+       warning when you try to finalize an open connection.
+       
+2006-10-01  Havoc Pennington  <hp@redhat.com>
+
+       * dbus/dbus-bus.c
+       (internal_bus_get): only weak ref the connection; this means 
+       _dbus_bus_notify_shared_connection_disconnected_unlocked can be
+       called safely in any context
+       (_dbus_bus_notify_shared_connection_disconnected_unlocked): don't
+       unref
+
+       * dbus/dbus-connection.c
+       (_dbus_connection_get_dispatch_status_unlocked): move
+       _dbus_bus_notify_shared_connection_disconnected_unlocked here
+       when queuing Disconnected instead of when the Disconnected message
+       arrives, so dbus_bus_get() won't return closed connections.
+       
+2006-10-01  Havoc Pennington  <hp@redhat.com>
+
+       * dbus/dbus-connection.c (_dbus_connection_close_if_only_one_ref): 
+       Add a hack to make DBusNewConnectionFunction work right.
+
+       * dbus/dbus-server-socket.c (handle_new_client_fd_and_unlock): use
+       the hack here. Also, fix the todo about refcount leak.
+       
+       * dbus/dbus-server-debug-pipe.c (_dbus_transport_debug_pipe_new):
+       and use the hack here
+       
+        * dbus/dbus-connection.c: Kill the "shared" flag vs. the
+       "shareable" flag; this was completely broken, since it meant 
+       dbus_connection_open() returned a connection of unknown
+       shared-ness. Now, we always hold a ref on anything opened 
+       as shareable.
+
+       Move the call to notify dbus-bus.c into
+       connection_forget_shared_unlocked, so libdbus consistently forgets
+       all its knowledge of a connection at once. This exposed numerous
+       places where things were totally broken if we dropped a ref inside
+       get_dispatch_status_unlocked where
+       connection_forget_shared_unlocked was previously, so move
+       connection_forget_shared_unlocked into
+       _dbus_connection_update_dispatch_status_and_unlock. Also move the
+       exit_on_disconnect here.
+
+       (shared_connections_shutdown): this assumed weak refs to the
+       shared connections; since we have strong refs now, the assertion 
+       was failing and stuff was left in the hash. Fix it to close
+       still-open shared connections.
+       
+       * bus/dispatch.c: fixup to use dbus_connection_open_private on the 
+       debug pipe connections
+       
+       * dbus/dbus-connection.c (dbus_connection_dispatch): only notify
+       dbus-bus.c if the closed connection is in fact shared
+       (_dbus_connection_close_possibly_shared): rename from 
+       _dbus_connection_close_internal
+       (dbus_connection_close, dbus_connection_open,
+       dbus_connection_open_private): Improve docs to explain the deal
+       with when you should close or unref or both
+
+       * dbus/dbus-bus.c
+       (_dbus_bus_notify_shared_connection_disconnected_unlocked): rename
+       from _dbus_bus_check_connection_and_unref_unlocked and modify to
+       loop over all connections
+
+       * test/test-utils.c (test_connection_shutdown): don't try to close
+       shared connections.
+
+       * test/name-test/test-threads-init.c (main): fix warnings in here
+
+       * dbus/dbus-sysdeps.c (_dbus_abort): support DBUS_BLOCK_ON_ABORT
+       env variable to cause blocking waiting for gdb; drop
+       DBUS_PRINT_BACKTRACE and just call _dbus_print_backtrace() 
+       unconditionally.
+
+       * configure.in: add -export-dynamic to libtool flags if assertions enabled
+       so _dbus_print_backtrace works.
+
+       * dbus/dbus-sysdeps-unix.c (_dbus_print_backtrace): use fprintf
+       instead of _dbus_verbose to print the backtrace, and diagnose lack 
+       of -rdynamic/-export-dynamic
+       
+2006-09-30  Havoc Pennington  <hp@redhat.com>
+
+       * dbus/dbus-bus.c (dbus_bus_get_private, dbus_bus_get) 
+       (internal_bus_get): fix screwy code formatting. whoever committed
+       that was not paying attention!
+
+2006-09-30  Havoc Pennington  <hp@redhat.com>
+
+       * configure.in (LT_CURRENT, LT_AGE): increment current and age to
+       reflect addition of interfaces.
+
+       * doc/dbus-specification.xml: describe a new
+       org.freedesktop.DBus.Peer.GetMachineId method
+
+       * dbus/dbus-string.c (_dbus_string_skip_white_reverse): new function
+       (_dbus_string_skip_white, _dbus_string_skip_blank): use new
+       DBUS_IS_ASCII_BLANK, DBUS_IS_ASCII_WHITE macros and fix assertion
+       at end of skip_white
+       (_dbus_string_chop_white): new function
+
+       * bus/connection.c (bus_connections_setup_connection): call
+       dbus_connection_set_route_peer_messages.
+
+       * dbus/dbus-connection.c
+       (_dbus_connection_peer_filter_unlocked_no_update): modify to
+       support a GetMachineId method.
+
+       Also, support a new flag to let the bus pass peer methods through
+       to apps on the bus, which can be set with
+       dbus_connection_set_route_peer_messages.
+
+       Finally, handle and return an error for anything unknown on the
+       Peer interface, which will allow us to extend the Peer interface
+       in the future without fear that we're now intercepting something
+       apps were wanting to see.
+       
+       * tools/dbus-uuidgen.c: a thin wrapper around the functions in 
+       dbus/dbus-uuidgen.c
+
+       * dbus/dbus-uuidgen.c: implement the bulk of the dbus-uuidgen
+       binary here, since most of the code is already in libdbus
+
+       * dbus/dbus-sysdeps.c (_dbus_read_local_machine_uuid): read the
+       uuid from the system config file
+
+       * dbus/dbus-internals.c (_dbus_generate_uuid, _dbus_uuid_encode) 
+       (_dbus_read_uuid_file_without_creating) 
+       (_dbus_create_uuid_file_exclusively, _dbus_read_uuid_file): new
+       uuid-related functions, partly factored out from dbus-server.c
+
+       * dbus/dbus-sysdeps.c (_dbus_error_from_errno): convert EEXIST to
+       DBUS_ERROR_FILE_EXISTS instead of EEXIST
+
+       * dbus/dbus-protocol.h (DBUS_ERROR_FILE_EXISTS): add file exists error
+
+       * tools/dbus-cleanup-sockets.1: explain what the point of this
+       thing is a bit more
+
+       * autogen.sh (run_configure): add --config-cache to default
+       configure args
+
+       * dbus/dbus-internals.h (_DBUS_ASSERT_ERROR_IS_SET): disable the
+       error set/clear assertions when DBUS_DISABLE_CHECKS is defined
+
+       * tools/dbus-launch.c (main): if xdisplay hasn't been opened,
+       don't try to save address, fixes crash in make check
+       
+2006-09-30  Thiago Macieira  <thiago@kde.org>
+
+       * configure.in: add DBUS_BINDIR as a #define to C source code.
+
+       * tools/dbus-launch.c
+       * tools/dbus-launch.h
+       * tools/dbus-launch-x11.c:
+       * tools/dbus-launch.1: Add the --autolaunch option to
+       dbus-launch, which makes it scan for an existing session
+       started with --autolaunch. With that option, it also creates
+       an X11 window and saves the bus address and PID to it.
+
+       * dbus/dbus-sysdeps.h:
+       * dbus/dbus-sysdeps-unix.c (_dbus_get_autolaunch_address): Add
+       a function that runs "dbus-launch --autolaunch" to retrieve
+       the running D-Bus session address (or start one if none was running)
+
+       * dbus/dbus-transport.c: Add the handler for the "autolaunch:"
+        address protocol, which tries to get the running session from
+        dbus-launch.
+
+       * dbus/dbus-bus.c:
+       * dbus/dbus-internals.h: Make "autolaunch:" be the default
+       D-Bus session bus address.
+
+       * dbus/dbus-connection.c: Fix horrible typo in error message.
+
+2006-09-18  John (J5) Palmieri  <johnp@redhat.com>
+
+       * tools/Makefile.am: use @EXPANDED_DATADIR@ instead of @DATADIRNAME@  
+
+2006-09-17  Havoc Pennington  <hp@redhat.com>
+
+       * dbus/dbus-transport.c (_dbus_transport_get_is_authenticated):
+       fix so that if unix_user_function is set on windows, we still
+       do the default check that the auth identity matches the bus identity
+
+2006-09-16  Havoc Pennington  <hp@redhat.com>
+
+       * dbus/dbus-transport.c (_dbus_transport_open): modify to delegate
+       to _dbus_transport_open_platform_specific,
+       _dbus_transport_open_socket,
+       and _dbus_transport_open_debug_pipe
+
+       * dbus/dbus-transport-protected.h: add _dbus_transport_open_platform_specific
+
+2006-09-16  Havoc Pennington  <hp@redhat.com>
+
+        Attempt auditing public API to remove all cases where a Unix
+       function returns weird emulated goo to Windows. This probably 
+       breaks the bus daemon on Windows, to fix it again we may 
+       need to stop processing unix-specific config options on Windows,
+       and may need to add Windows-specific public API or config options.
+       
+       * configure.in (LT_CURRENT, LT_AGE): increment current and age,
+       to reflect added interfaces; should not break soname.
+       
+       * dbus/dbus-transport.c (_dbus_transport_get_is_authenticated): do
+       not invoke unix user function on Windows. Kind of a hacky fix, but 
+       we don't want a "unix uid" leaking out on Windows.
+
+       * dbus/dbus-connection.c (dbus_connection_get_socket): add new API
+       to get the socket fd on Windows or UNIX
+       (dbus_connection_get_unix_fd): make this always fail on Windows
+
+2006-09-16  Havoc Pennington  <hp@redhat.com>
+
+       * dbus/dbus-server.c (dbus_server_listen): change how this works
+       to be able to delegate to a set of handlers that can succeed,
+       fail, or choose not to handle. Allows us to have 
+       dbus_server_listen_platform_specific.
+
+       * dbus/dbus-server-socket.c (_dbus_server_new_for_tcp_socket):
+       factor out the tcp socket stuff to be used on windows, leaving
+       unix domain socket only in dbus-socket-unix.c
+
+       * dbus/dbus-transport-socket.c
+       (_dbus_transport_new_for_tcp_socket): factor out the tcp socket
+       stuff to be used on windows, leaving unix domain socket only 
+       in dbus-transport-unix.c
+
+       * dbus/dbus-connection.c (dbus_connection_get_unix_user): insert
+       temporary hack to be sure this fails on windows
+       (dbus_connection_get_unix_process_id): ditto
+
 2006-09-16  Havoc Pennington  <hp@redhat.com>
 
        * dbus/dbus-sysdeps-unix.c (_dbus_open_tcp_socket)