2003-03-12 Havoc Pennington <hp@pobox.com>
[platform/upstream/dbus.git] / ChangeLog
index f8b5b95..9591317 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,992 @@
+2003-03-12  Havoc Pennington  <hp@pobox.com>
+
+       Throughout: purge global variables, introduce BusActivation, 
+       BusConnections, BusRegistry, etc. objects instead.
+       
+       * bus/bus.h, bus/bus.c: introduce BusContext as a global 
+       message bus object
+
+       * test/Makefile.am (TEST_BINARIES): disable bus-test for now, 
+       going to redo this a bit differently I think
+       
+2003-03-12  Havoc Pennington  <hp@redhat.com>
+
+        Mega-patch that gets the message bus daemon initially handling 
+       out-of-memory. Work still needed. Also lots of random 
+       moving stuff to DBusError instead of ResultCode.
+       
+       * dbus/dbus-list.c (_dbus_list_length_is_one): new function
+
+       * dbus/dbus-connection.c
+       (dbus_connection_send_with_reply_and_block): use DBusError
+
+       * dbus/dbus-bus.c: adapt to API changes, make it use DBusError not
+       DBusResultCode
+
+       * dbus/dbus-connection.c (dbus_connection_send): drop the result
+       code here, as the only failure possible is OOM.
+
+       * bus/connection.c (bus_connection_disconnect):
+       rename bus_connection_disconnected as it's a notification only
+
+       * bus/driver.c (bus_driver_handle_acquire_service): don't free
+       "name" on get_args failure, should be done by get_args; 
+       don't disconnect client for bad args, just return an error.
+       (bus_driver_handle_service_exists): ditto
+
+       * bus/services.c (bus_services_list): NULL-terminate returned array
+
+       * bus/driver.c (bus_driver_send_service_lost)
+       (bus_driver_send_service_acquired): send messages from driver to a
+       specific client to the client's unique name, not to the broadcast
+       service.
+
+       * dbus/dbus-message.c (decode_header_data): reject messages that
+       contain no name field
+       (_dbus_message_get_client_serial): rename to
+       dbus_message_get_serial and make public
+       (_dbus_message_set_serial): rename from set_client_serial
+       (_dbus_message_set_reply_serial): make public
+       (_dbus_message_get_reply_serial): make public
+
+       * bus/connection.c (bus_connection_foreach): allow stopping
+       iteration by returning FALSE from foreach function.
+
+       * dbus/dbus-connection.c (dbus_connection_send_preallocated) 
+       (dbus_connection_free_preallocated_send) 
+       (dbus_connection_preallocate_send): new API for sending a message
+       without possibility of malloc failure.
+       (dbus_connection_send_message): rename to just
+       dbus_connection_send (and same for whole function family)
+
+       * dbus/dbus-errors.c (dbus_error_free): make this reinit the error
+
+       * dbus/dbus-sysdeps.c (_dbus_exit): new function
+
+       * bus/activation.c: handle/return errors
+
+       * dbus/dbus-errors.h: add more DBUS_ERROR #define
+
+       * dbus/dbus-sysdeps.c (_dbus_directory_open) (_dbus_file_get_contents)
+       (_dbus_directory_get_next_file): use DBusError instead of DBusResultCode
+       (_dbus_result_from_errno): move to this file
+
+2003-03-10  Anders Carlsson  <andersca@codefactory.se>
+
+       * dbus/dbus-marshal.c: 
+       (_dbus_marshal_set_string):
+       Take a length argument so we can marshal the correct string
+       length.
+       
+       (_dbus_marshal_dict), (_dbus_demarshal_dict),
+       (_dbus_marshal_get_arg_end_pos), (_dbus_marshal_validate_arg),
+       (_dbus_marshal_test):
+       * dbus/dbus-marshal.h:  
+       Add support for marshalling and demarshalling dicts.
+       
+       * dbus/dbus-message-builder.c: (_dbus_message_data_load):
+       Add support for TYPE DICT.
+       
+       * dbus/dbus-message.c: (set_string_field):
+       Adjust header padding.
+       
+       (dbus_message_append_args_valist), (dbus_message_append_dict),
+       (dbus_message_get_args_valist), (dbus_message_iter_get_arg_type),
+       (dbus_message_iter_get_dict), (_dbus_message_loader_return_buffer),
+       (check_message_handling), (check_have_valid_message):
+       * dbus/dbus-message.h:
+       Add functions for setting and getting dicts.
+
+       * dbus/dbus-protocol.h:
+       Add DBUS_TYPE_DICT.
+       
+       * dbus/dbus.h:
+       Add dbus-dict.h
+       
+       * doc/dbus-specification.sgml:
+       Add information about how dicts are marshalled.
+       
+       * test/data/invalid-messages/dict-with-nil-value.message:
+       * test/data/invalid-messages/too-short-dict.message:
+       * test/data/valid-messages/dict-simple.message:
+       * test/data/valid-messages/dict.message:
+       Add sample messages containing dicts.
+
+2003-03-08  Anders Carlsson  <andersca@codefactory.se>
+
+       * dbus/dbus-dict.h: Add DBUS_END_DECLS.
+
+2003-03-07  Anders Carlsson  <andersca@codefactory.se>
+
+       * dbus/Makefile.am:
+       * dbus/dbus-dict.c: (dbus_dict_entry_free), (dbus_dict_new),
+       (dbus_dict_get_keys), (insert_entry), (dbus_dict_set_boolean),
+       (dbus_dict_set_int32), (dbus_dict_set_uint32),
+       (dbus_dict_set_double), (dbus_dict_set_string),
+       (dbus_dict_set_boolean_array), (dbus_dict_set_int32_array),
+       (dbus_dict_set_uint32_array), (dbus_dict_set_double_array),
+       (dbus_dict_set_string_array), (_dbus_dict_test):
+       * dbus/dbus-dict.h:
+       Fix according to comments from Havoc.
+       
+2003-03-06  Michael Meeks  <michael@server.home>
+
+       * configure.in: if we don't have kde-config, disable have_qt.
+
+2003-03-07  Anders Carlsson  <andersca@codefactory.se>
+
+       * dbus/Makefile.am:
+       Add dbus-dict.[ch]
+       
+       * dbus/dbus-dict.c: (dbus_dict_entry_free), (dbus_dict_new),
+       (dbus_dict_ref), (dbus_dict_unref), (dbus_dict_contains),
+       (dbus_dict_remove), (dbus_dict_get_value_type),
+       (dbus_dict_get_keys), (dbus_dict_put_boolean),
+       (dbus_dict_put_int32), (dbus_dict_put_uint32),
+       (dbus_dict_put_double), (dbus_dict_put_string),
+       (dbus_dict_put_boolean_array), (dbus_dict_put_int32_array),
+       (dbus_dict_put_uint32_array), (dbus_dict_put_double_array),
+       (dbus_dict_put_string_array), (dbus_dict_get_boolean),
+       (dbus_dict_get_int32), (dbus_dict_get_uint32),
+       (dbus_dict_get_double), (dbus_dict_get_string),
+       (dbus_dict_get_boolean_array), (dbus_dict_get_int32_array),
+       (dbus_dict_get_uint32_array), (dbus_dict_get_double_array),
+       (dbus_dict_get_string_array), (_dbus_dict_test):
+       * dbus/dbus-dict.h:
+       Add DBusDict implementation
+       
+       * dbus/dbus-test.c: (dbus_internal_do_not_use_run_tests):
+       * dbus/dbus-test.h:
+       Add _dbus_dict_test
+       
+2003-03-04  Havoc Pennington  <hp@pobox.com>
+
+       * test/data/auth/*: adapt to changes
+
+       * dbus/dbus-auth-script.c (_dbus_auth_script_run): add
+       USERID_BASE64 and change USERNAME_BASE64 to put in username not
+       userid
+
+       * dbus/dbus-keyring.c (_dbus_keyring_validate_context): prevent
+       more stuff from being in a context name, to make the protocol 
+       simpler to deal with
+
+       * dbus/dbus-errors.c (dbus_error_has_name): new function
+       (dbus_error_is_set): new function
+
+       * dbus/dbus-auth.c: replace DBUS_STUPID_TEST_MECH auth 
+       with DBUS_COOKIE_SHA1, implement DBUS_COOKIE_SHA1
+       
+       * dbus/dbus-connection.c (dbus_connection_flush): also read
+       messages during a flush operation
+
+       * dbus/Makefile.am: remove dbus-md5 since it isn't currently used.
+
+2003-03-05  Anders Carlsson  <andersca@codefactory.se>
+
+       * configure.in: Check for gethostbyname on Solaris.
+
+       * dbus/dbus-transport.c: (_dbus_transport_open):
+       Remove duplicate "tcp" entry.
+       
+       * doc/dbus-specification.sgml:
+       Clarify some things.
+       
+2003-03-05  Anders Carlsson  <andersca@codefactory.se>
+
+       * dbus/dbus-auth.c: (send_rejected), (process_test_subdir):
+       * dbus/dbus-keyring.c: (_dbus_keyring_new_homedir),
+       (_dbus_keyring_test):
+       * dbus/dbus-md5.c: (_dbus_md5_compute):
+       * dbus/dbus-sha.c: (_dbus_sha_compute):
+       Plug memory leaks.
+
+2003-03-05  Anders Carlsson  <andersca@codefactory.se>
+
+       * README: Add some things.
+
+2003-03-04  Anders Carlsson  <andersca@codefactory.se>
+
+       * dbus/dbus-message.c (dbus_message_append_args_valist): Add a break;
+       after case DBUS_TYPE_BOOELAN.
+
+2003-03-02  Havoc Pennington  <hp@pobox.com>
+
+       * test/break-loader.c (randomly_set_extreme_ints): add test that
+       sets really huge and small integers
+
+       * dbus/dbus-marshal.c (_dbus_marshal_validate_arg): add check
+       that length of boolean array fits in the string, and that 
+       string has room for boolean value in single-bool case.
+
+       * dbus/dbus-message-builder.c (_dbus_message_data_load): add
+       optional value to "ALIGN" command which is what to fill the
+       alignment with.
+
+       * test/data/valid-messages/no-padding.message: add regression
+       test for the message padding problem
+
+2003-03-02  Havoc Pennington  <hp@pobox.com>
+
+       * dbus/dbus-message.c (decode_header_data): fix to always init
+       message_padding, from Benjamin Dauvergne
+
+2003-03-02  Havoc Pennington  <hp@pobox.com>
+
+       * configure.in: 0.5
+
+       * NEWS: Update.
+
+2003-03-01  Joe Shaw  <joe@assbarn.com>
+
+       * configure.in: Check for "struct cmsgcred" and try to access its
+       members for BSD-like unices.
+
+       * dbus/dbus-sysdeps.c (read_credentials_byte): Fold this back into
+       _dbus_read_credentials_unix_socket().
+       (_dbus_read_credentials_unix_socket): Use recvmsg() instead of
+       read() for reading the credential byte off the unix socket.  Use
+       struct cmsgcred on systems that support it.
+
+2003-02-27  Alexander Larsson  <alexl@redhat.com>
+
+       * glib/Makefile.am: 
+       * configure.in:
+       Make gthreads-2.0 dependency optional. Don't build thread test if
+       its not found.
+
+2003-02-27  Havoc Pennington  <hp@pobox.com>
+
+       * dbus/dbus-connection.c
+       (dbus_connection_send_message_with_reply_and_block): fix doh!
+       doh! doh! bug that resulted in never removing a reply from the
+       queue, no wonder we called get_reply_serial so much ;-)
+       
+       * dbus/dbus-message.c (struct DBusMessage): cache reply serial
+       and client serial instead of demarshaling them every time
+
+2003-02-27  Havoc Pennington  <hp@pobox.com>
+
+       * dbus/dbus-marshal.c (_dbus_demarshal_int32): rewrite to be much
+       more inlined, using dbus-string-private.h, speeds things up 
+       substantially
+
+       * dbus/dbus-string.c (_dbus_string_free): apply align offset
+       when freeing the string
+       (_dbus_string_steal_data): fix for align offset
+       (undo_alignment): new function
+
+2003-02-26  Havoc Pennington  <hp@redhat.com>
+
+        All kinds of audit fixes from Owen, plus initial attempt to 
+       handle unaligned memory returned from malloc.
+       
+       * dbus/dbus-string.c (_dbus_string_init): clamp max length to 
+       leave room for align_offset and nul byte
+       (fixup_alignment): function to track an align_offset and 
+       ensure real->str is aligned
+       (DBUS_GENERIC_STRING_PREAMBLE): len must be less than allocated, 
+       to allow a nul byte plus align offset
+       (_dbus_string_lock): fix overflow issue
+       (_dbus_string_init_const_len): add assertions on sanity of len, 
+       assign allocated to be ALLOCATION_PADDING larger than len
+       (set_length): fixup the overflow handling
+       (_dbus_string_get_data_len): fix overflow in assertion
+       (open_gap): detect overflow in size of gap to be opened
+       (_dbus_string_lengthen): add overflow check
+       (_dbus_string_align_length): fix overflow with _DBUS_ALIGN_VALUE
+       (_dbus_string_append): add overflow check
+       (_dbus_string_append_unichar): overflow
+       (_dbus_string_delete): fix overflow in assertion
+       (_dbus_string_copy_len): overflow in assertion
+       (_dbus_string_replace_len): overflows in assertions
+       (_dbus_string_find): change to implement in terms of 
+       _dbus_string_find_to
+       (_dbus_string_find_to): assorted fixage
+       (_dbus_string_equal_c_str): assert c_str != NULL, 
+       fix logic so the function works
+       (_dbus_string_ends_with_c_str): fix overflow thingy
+       (_dbus_string_base64_encode): overflow fix
+       (_dbus_string_validate_ascii): overflow
+       (_dbus_string_validate_nul): overflow
+       
+2003-02-26  Havoc Pennington  <hp@redhat.com>
+
+       * dbus/dbus-marshal.c (_dbus_marshal_test): fix to work with DISABLE_ASSERTS
+
+2003-02-26  Alexander Larsson  <alexl@redhat.com>
+
+       * configure.in:
+       Set DBUS_GLIB_THREADS_LIBS for apps using gthread-2.0
+       
+       * dbus/dbus-connection.c:
+       * dbus/dbus-connection.h:
+       Fix _dbus_connection_acquire_io_path and _dbus_connection_acquire_dispatch.
+       Add dbus_connection_set_wakeup_main_function and use it when queueing
+       incoming and outgoing messages.
+       
+       
+       * dbus/dbus-dataslot.c:
+       Threadsafe usage of DBusDataSlotAllocator
+       
+       * dbus/dbus-message.c: (dbus_message_get_args_iter):
+       dbus_new can fail.
+       
+       * dbus/dbus-server-unix.c:
+       Add todo comment
+       
+       * glib/dbus-gmain.c:
+       Implement the new wakeup functions for glib.
+       
+       * glib/Makefile.am:
+       * glib/test-thread-client.c: 
+       * glib/test-thread-server.c: 
+       * glib/test-thread.h:
+       Initial cut at some thread test code. Not really done yet.
+
+2003-02-26  Havoc Pennington  <hp@pobox.com>
+
+       * dbus/dbus-connection.c
+       (dbus_connection_send_message_with_reply_and_block): fix crash
+       where we ref'd the outgoing message instead of the returned reply
+
+       * dbus/dbus-transport-unix.c (do_authentication): check read watch
+       at the end of this function, so if we didn't need to read for
+       authentication, we reinstall it for receiving messages
+
+       * dbus/dbus-message.c (dbus_message_new_reply): allow replies to 
+       a NULL sender for peer-to-peer case
+
+       * dbus/dbus-transport-unix.c (check_read_watch): handle
+       !authenticated case correctly
+
+       * glib/dbus-gmain.c: add support for DBusServer
+
+       * dbus/dbus-server.c: add data slot support
+
+       * glib/dbus-gmain.c (dbus_connection_setup_with_g_main): check
+       return values and handle errors
+
+       * dbus/dbus-dataslot.c: factor out the data slot stuff from
+       DBusConnection
+
+       * Doxyfile.in (INPUT): add glib subdir
+
+       * glib/dbus-gmain.c (dbus_connection_setup_with_g_main): rename 
+       setup_with_g_main instead of hookup_with_g_main; write docs
+       
+2003-02-24  Anders Carlsson  <andersca@codefactory.se>
+
+       * dbus/dbus-marshal.c: (_dbus_marshal_validate_arg):
+       * dbus/dbus-message-builder.c: (_dbus_message_data_load):
+       * dbus/dbus-message.c: (dbus_message_append_boolean),
+       (dbus_message_append_boolean_array),
+       (dbus_message_get_args_valist), (_dbus_message_test):
+       * dbus/dbus-message.h:
+       * doc/dbus-specification.sgml:
+       Various fixes as pointed out by Havoc.
+       
+       * test/data/invalid-messages/bad-boolean-array.message:
+       * test/data/invalid-messages/bad-boolean.message:
+       Add invalid boolean value test cases.
+       
+2003-02-24  Anders Carlsson  <andersca@codefactory.se>
+
+       * dbus/dbus-internals.c: (_dbus_type_to_string):
+       * dbus/dbus-marshal.c: (_dbus_marshal_get_arg_end_pos),
+       (_dbus_marshal_validate_arg):
+       * dbus/dbus-message-builder.c: (_dbus_message_data_load):
+       * dbus/dbus-message.c: (dbus_message_append_args_valist),
+       (dbus_message_append_boolean), (dbus_message_append_boolean_array),
+       (dbus_message_get_args_valist), (dbus_message_iter_get_boolean),
+       (dbus_message_iter_get_int32), (dbus_message_iter_get_uint32),
+       (dbus_message_iter_get_double),
+       (dbus_message_iter_get_boolean_array), (message_iter_test):
+       * dbus/dbus-message.h:
+       * dbus/dbus-protocol.h:
+       * doc/dbus-specification.sgml:
+       * test/data/valid-messages/lots-of-arguments.message:
+       Add support for boolean and boolean array types.
+       
+2003-02-23  Havoc Pennington  <hp@pobox.com>
+
+       * dbus/dbus-keyring.c: finish most of this implementation and 
+       simple unit test
+
+       * dbus/dbus-errors.c (dbus_set_error_const, dbus_set_error): make
+       these barf if the error isn't cleared to NULL
+
+       * dbus/dbus-sysdeps.c (_dbus_delete_file): set error on failure
+       (_dbus_create_directory): new function
+
+       * dbus/dbus-errors.c (dbus_set_error): fix warning
+
+       * dbus/dbus-string.c (_dbus_string_hex_encode): new function
+       (_dbus_string_hex_decode): new function
+       (test_hex_roundtrip): test code
+
+       * dbus/dbus-sha.c (_dbus_sha_compute): use dbus_string_hex_encode
+
+       * dbus/dbus-md5.c (_dbus_md5_compute): use dbus_string_hex_encode
+
+       * dbus/dbus-sysdeps.c (_dbus_string_save_to_file): make this use 
+       the save-to-temp/rename trick to atomically write the new file
+       (_dbus_string_parse_uint): new function
+
+2003-02-22  Havoc Pennington  <hp@pobox.com>
+
+       * test/Makefile.am (dist-hook): fix dist for test/data/sha-1
+
+2003-02-22  Havoc Pennington  <hp@pobox.com>
+
+       * dbus/dbus-message.c (dbus_message_iter_get_string_array):
+       (dbus_message_iter_get_byte_array): Fix up doxygen warnings
+
+       * dbus/dbus-sha.c: add implementation of SHA-1 algorithm
+
+       * dbus/test/data/sha-1: add US government test suite for SHA-1
+
+2003-02-21  Anders Carlsson  <andersca@codefactory.se>
+
+       * dbus/dbus-marshal.c: (_dbus_demarshal_string_array):
+       Make string arrays NULL-terminated.
+       
+       * dbus/dbus-memory.c: (dbus_free_string_array):
+       * dbus/dbus-memory.h:
+       New function for freeing NULL-terminated string arrays.
+       
+       * dbus/dbus-message-builder.c: (append_quoted_string),
+       (_dbus_message_data_load):
+       Add support for array types.
+       
+       * dbus/dbus-message.c: (check_message_handling):
+       Add more types as test cases.
+       
+       * dbus/dbus-sysdeps.c: (_dbus_string_parse_int),
+       (_dbus_string_parse_double):
+       Add the start offset to the end offset.
+       
+       * test/data/valid-messages/lots-of-arguments.message:
+       New test message with lots of arguments.
+       
+2003-02-21  Anders Carlsson  <andersca@codefactory.se>
+
+       * dbus/dbus-message.c: (dbus_message_append_nil),
+       (dbus_message_append_int32), (dbus_message_append_uint32),
+       (dbus_message_append_double), (dbus_message_append_string),
+       (dbus_message_append_int32_array),
+       (dbus_message_append_uint32_array),
+       (dbus_message_append_double_array),
+       (dbus_message_append_byte_array),
+       (dbus_message_append_string_array):
+       Fix all out-of-memory handling in these functions.
+
+2003-02-21  Anders Carlsson  <andersca@codefactory.se>
+
+       * dbus/dbus-message.c: (dbus_message_append_nil):
+       Fix a silly.
+       
+2003-02-21  Anders Carlsson  <andersca@codefactory.se>
+
+       * dbus/dbus-message.c: (dbus_message_append_args_valist),
+       (dbus_message_append_nil), (dbus_message_append_int32_array),
+       (dbus_message_append_uint32_array),
+       (dbus_message_append_double_array),
+       (dbus_message_append_byte_array),
+       (dbus_message_append_string_array), (dbus_message_get_args_valist),
+       (dbus_message_iter_get_int32_array),
+       (dbus_message_iter_get_uint32_array),
+       (dbus_message_iter_get_double_array),
+       (dbus_message_iter_get_byte_array),
+       (dbus_message_iter_get_string_array):
+
+       * dbus/dbus-message.h:
+       Add functions for appending and getting arrays.
+       
+2003-02-21  Anders Carlsson  <andersca@codefactory.se>
+
+       * dbus/dbus-mempool.c (_dbus_mem_pool_new): Make the
+       element size at least 8 bytes, fixes mempool tests on
+       64-bit machines.
+
+2003-02-20  Alexander Larsson  <alexl@redhat.com>
+
+       * dbus/dbus-transport-unix.c (unix_do_iteration):
+       Unlock the connection mutex during a blocking select call.
+       Add todo about how we need a way to wake up the select.
+
+       * dbus/dbus-connection-internal.h: 
+       * dbus/dbus-connection.c:
+       Add _dbus_connection_lock and _dbus_connection_unlock.
+
+2003-02-19  Havoc Pennington  <hp@pobox.com>
+
+       * Doxyfile.in (PREDEFINED): put DOXYGEN_SHOULD_SKIP_THIS in
+       Doxyfile.in, not Doxyfile
+
+       * dbus/dbus-keyring.c: do some hacking on this
+
+       * dbus/dbus-sysdeps.c (_dbus_delete_file): new
+
+       * dbus/dbus-errors.c (dbus_set_error_const): do not call
+       dbus_error_init
+       (dbus_set_error): remove dbus_error_init, check for message ==
+       NULL *before* we sprintf into it, and add @todo about including 
+       system headers in this file
+
+       * dbus/dbus-sysdeps.c (_dbus_create_file_exclusively): new
+
+       * dbus/dbus-errors.h (DBUS_ERROR_FAILED): add
+
+       * dbus/dbus-sysdeps.c (get_user_info): break this function out to
+       get various bits of user information based on either username 
+       or user ID
+       (_dbus_homedir_from_username): new function
+
+2003-02-19  Anders Carlsson  <andersca@codefactory.se>
+
+       * configure.in:
+       Add check for nonposix getpwnam_r
+       
+       * dbus/dbus-mempool.c: (_dbus_mem_pool_new):
+       Align the pool element size to a sizeof (void *) boundary.
+       
+       * dbus/dbus-sysdeps.c: (_dbus_setenv), (_dbus_connect_unix_socket),
+       (_dbus_listen_unix_socket), (_dbus_credentials_from_username):
+       General Solaris fixes.
+       
+       * test/data/valid-messages/simplest-manual.message:
+       Explicitly state that we want little-endian packing.
+       
+2003-02-19  Mikael Hallendal  <micke@codefactory.se>
+
+       * dbus/dbus-server.c (dbus_server_listen): Support tcp: addresses.
+
+       * dbus/dbus-transport-unix.c (_dbus_transport_new_for_tcp_socket): 
+       Added to create a transport connecting using a tcp/ip socket.
+
+       * dbus/dbus-sysdeps.c (_dbus_connect_tcp_socket): Added to connect
+       to a tcp socket at given host and port.
+       (_dbus_listen_tcp_socket): added to listen on tcp socket for given
+       hostname and port.
+
+       * dbus/dbus-server.c (dbus_server_listen): Support tcp: addresses.
+
+       * dbus/dbus-server-unix.c (_dbus_server_new_for_tcp_socket): 
+       Added to create a server listening on a TCP/IP socket.
+
+2003-02-19  Havoc Pennington  <hp@pobox.com>
+
+       Throughout: mop up all the Doxygen warnings and undocumented
+       stuff.
+       
+       * dbus/dbus-sysdeps.c (do_exec): do not use execvp, we don't want
+       to search any paths.
+
+       * dbus/dbus-threads.c: move global mutex initializers to
+       dbus-internals.h, multiple prototypes was confusing doxygen
+       besides being kind of ugly
+
+       * Doxyfile (PREDEFINED): have Doxygen define
+       DOXYGEN_SHOULD_SKIP_THIS so we can exclude things from 
+       docs with #ifndef DOXYGEN_SHOULD_SKIP_THIS
+       (do not abuse the feature! it's for stuff like the autogenerated 
+       macros in dbus-md5.c, not just for things you don't feel like 
+       documenting...)
+
+2003-02-18  Havoc Pennington  <hp@pobox.com>
+
+       * dbus/dbus-string.c (_dbus_string_zero): new function
+
+       * dbus/dbus-md5.c: include MD5 implementation by L. Peter Deutsch,
+       wrap it in some dbus-friendly API
+
+       * dbus/dbus-types.h: add 16-bit types
+
+2003-02-18  Joe Shaw  <joe@assbarn.com>
+
+       * dbus/dbus-auth.c (handle_server_data_stupid_test_mech): Just get
+       credentials from our currently running process.
+       (get_word): Fix a buglet where we were copying the entire length
+       instead of relative to our position.
+
+       * dbus/dbus-hash.c (_dbus_hash_test): Don't try to allocate the
+       keys on the stack... it's 640k of data.
+
+       * dbus/dbus-sysdeps.c (_dbus_read_credentials_unix_socket): Always
+       read the credentials byte off the socket, even if we don't have
+       SO_PEERCRED.
+       (_dbus_poll): Implement poll() using select() for systems which
+       don't have it.
+
+       * glib/test-dbus-glib.c (main): Print out an error if no
+       parameters are given.
+
+       * test/data/auth/fallback.auth-script: Added.  Tests that a client
+       can fallback to a secondary auth mechanism if the first fails.
+
+2003-02-18  Havoc Pennington  <hp@pobox.com>
+
+       * AUTHORS: add Alex
+
+2003-02-17  Havoc Pennington  <hp@pobox.com>
+
+       * doc/dbus-specification.sgml: lots of cosmetic
+       cleanups/rearrangement, add assorted FIXME, change DBUS_ADDRESS
+       env variable to DBUS_BUS_ADDRESS, s/client/application/,
+       s/server/bus/ (except in authentication section). Add a section
+       "Message Bus Message Routing"
+
+2003-02-17  Anders Carlsson  <andersca@codefactory.se.>
+
+       Release 0.4
+       
+       * NEWS: Update
+
+2003-02-17  Anders Carlsson  <andersca@codefactory.se>
+
+       * doc/dbus-specification.sgml:
+       Specification updates.
+       
+2003-02-17  Anders Carlsson  <andersca@codefactory.se>
+
+       * bus/activation.c: (bus_activation_init), (child_setup),
+       (bus_activation_activate_service):
+       * bus/activation.h:
+       * bus/main.c: (main):
+       Set DBUS_ADDRESS environment variable.
+       
+       * dbus/dbus-errors.c: (dbus_set_error):
+       Don't use va_copy since that's a C99 feature.
+       
+       * dbus/dbus-sysdeps.c: (_dbus_setenv), (do_exec),
+       (_dbus_spawn_async):
+       * dbus/dbus-sysdeps.h:
+       Add child_setup_func to _dbus_spawn_async.
+       
+       * doc/dbus-specification.sgml:
+       Update specification.
+       
+       * test/spawn-test.c: (setup_func), (main):
+       Fix test.
+       
+2003-02-17  Alexander Larsson  <alexl@redhat.com>
+
+       * dbus/dbus-connection.c (_dbus_connection_handler_destroyed_locked):
+       Added todo.
+
+2003-02-17  Anders Carlsson  <andersca@codefactory.se>
+
+       * doc/.cvsignore:
+       * doc/Makefile.am:
+       * doc/dbus-test-plan.sgml:
+       Add test plan document.
+       
+       * test/Makefile.am:
+       Fix distcheck.
+       
+2003-02-17  Anders Carlsson  <andersca@codefactory.se>
+
+       * dbus/dbus-message.c: (decode_header_data),
+       (_dbus_message_loader_return_buffer):
+       Set the header padding amount when loading a message.
+
+2003-02-16  Anders Carlsson  <andersca@codefactory.se>
+
+       * bus/dispatch.c: (send_one_message):
+       Only send broadcast messages to registered connections.
+       
+       * dbus/dbus-message.c: (dbus_message_name_is):
+       * dbus/dbus-message.h:
+       New convenience function.
+       
+       * dbus/dbus-transport-debug.c: (do_reading):
+       Only dispatch one message per run.
+
+       * test/Makefile.am:
+       * test/bus-test.c: (new_connection_callback), (die),
+       (test_hello_client1_handler), (test_hello_client2_handler),
+       (test_hello_replies), (main):
+
+       * test/bus-test-loop.[ch]:
+       Add these.
+       
+2003-02-16  Havoc Pennington  <hp@pobox.com>
+
+       * dbus/dbus-connection.c (dbus_connection_dispatch_message): fix
+       backward conditional
+
+2003-02-16  Alexander Larsson  <alexl@redhat.com>
+
+       * dbus/dbus-connection.c:
+       Implement sent_message_with_reply. (with_reply_and block is still
+       busted).
+       Made dispatch_message not lose message if OOM.
+       
+       * dbus/dbus-errors.h:
+       Add NoReply error (for reply timeouts).
+
+2003-02-16  Alexander Larsson  <alexl@redhat.com>
+
+       * dbus/dbus-hash.c (_dbus_hash_table_unref):
+       Actually free keys and values when destroying hashtable.
+
+2003-02-16  Anders Carlsson  <andersca@codefactory.se>
+
+       * dbus/dbus-auth.c: (client_try_next_mechanism):
+       Plug a leak.
+       
+       * dbus/dbus-threads.c: (dbus_condvar_wait_timeout):
+       Return TRUE if there's no thread implementation around.
+       
+       * glib/dbus-gmain.c: (free_source),
+       (dbus_connection_hookup_with_g_main):
+       Make sure to remove the GSource when the connection is finalized.
+       
+2003-02-16  Anders Carlsson  <andersca@codefactory.se>
+
+       * bus/dispatch.c: (bus_dispatch_message_handler):
+       * dbus/dbus-errors.h:
+       Return an error if someone tries to send a message to a service
+       that doesn't exist.
+       
+2003-02-16  Anders Carlsson  <andersca@codefactory.se>
+
+       * bus/activation.c: (load_directory), (bus_activation_init),
+       (bus_activation_activate_service):
+       * bus/activation.h:
+       * bus/driver.c: 
+       (bus_driver_handle_activate_service), (bus_driver_handle_message):
+       More work on the activation handling.
+       
+       * dbus/dbus-errors.h:
+       Add some error messages
+       
+       * dbus/dbus-message.c: (dbus_message_new_error_reply):
+       * dbus/dbus-message.h:
+       New function that creates an error message.
+       
+       * dbus/dbus-protocol.h:
+       Add ACTIVATE_SERVER message.
+       
+       * dbus/dbus-server-unix.c: (unix_handle_watch),
+       (_dbus_server_new_for_domain_socket):
+       Call _dbus_fd_set_close_on_exec.
+       
+       * dbus/dbus-sysdeps.c: (make_pipe), (do_exec),
+       (_dbus_spawn_async), (_dbus_disable_sigpipe),
+       (_dbus_fd_set_close_on_exec):
+       * dbus/dbus-sysdeps.h:
+       Add _dbus_fd_set_close_on exec function. Also add function that checks
+       that all open fds are set to close-on-exec and warns otherwise.
+       
+       * dbus/dbus-transport-unix.c:
+       (_dbus_transport_new_for_domain_socket):
+       Call _dbus_fd_set_close_on_exec.
+
+2003-02-16  Havoc Pennington  <hp@pobox.com>
+
+       * dbus/dbus-connection.c (dbus_connection_set_change_sigpipe):
+       allow people to avoid setting SIGPIPE to SIG_IGN
+       (_dbus_connection_new_for_transport): disable SIGPIPE unless 
+       we've been asked not to
+
+2003-02-15  Anders Carlsson  <andersca@codefactory.se>
+
+       * dbus/dbus-list.c: (_dbus_list_append_link),
+       (_dbus_list_prepend_link):
+       * dbus/dbus-memory.c: (dbus_malloc), (dbus_malloc0),
+       (dbus_realloc):
+       Warning fixes.
+
+2003-02-15  Anders Carlsson  <andersca@codefactory.se>
+
+       * bus/Makefile.am:
+       * bus/activation.c: (bus_activation_entry_free),
+       (add_desktop_file_entry), (load_directory), (bus_activation_init):
+       * bus/activation.h:
+       * bus/main.c: (main):
+       Add simple activation support, doesn't work yet though.
+
+2003-02-15   Zack Rusin  <zack@kde.org>
+
+       * qt/dbus-qthread.cpp:  small casting fix
+
+2003-02-15  Anders Carlsson  <andersca@codefactory.se>
+
+       * dbus/dbus-errors.c: (dbus_set_error):
+       * dbus/dbus-errors.h:
+       Add a few errors and make dbus_set_error void.
+       
+       * dbus/dbus-sysdeps.c: 
+       (_dbus_errno_to_string), (close_and_invalidate), (make_pipe),
+       (write_err_and_exit), (read_ints), (do_exec), (_dbus_spawn_async):
+       * dbus/dbus-sysdeps.h:
+       Add _dbus_spawn_async.
+       
+       * test/spawn-test.c: (main):
+       Test for _dbus_spawn_async.
+       
+2003-02-15  Anders Carlsson  <andersca@codefactory.se>
+
+       * dbus/dbus-internals.h:
+       Fix build without tests.
+       
+       * dbus/dbus-list.c: (alloc_link):
+       Fix a segfault when a malloc fails.
+       
+       * dbus/dbus-memory.c: (initialize_malloc_debug), (dbus_malloc),
+       (dbus_malloc0), (dbus_realloc):
+       Add support for malloc debugging.
+
+2003-02-15  Alexander Larsson  <alexl@redhat.com>
+
+       * dbus/dbus-threads.c:
+       * dbus/dbus-threads.h:
+       Add condvars. Remove static mutext from API.
+       Implement static mutexes by initializing them from threads_init.
+       
+       * glib/dbus-gthread.c:
+       * qt/dbus-qthread.cpp:
+       Update with the thread api changes.
+
+               
+       * dbus/dbus-list.c:
+       * dbus/dbus-list.h:
+       Turn StaticMutex into normal mutex + init function.
+       Export new functions _dbus_list_alloc_link, _dbus_list_free_link,
+       _dbus_list_append_link, _dbus_list_prepend_link
+
+
+       * dbus/dbus-sysdeps.c: 
+       * dbus/dbus-sysdeps.h:
+       New type dbus_atomic_t, and new functions _dbus_atomic_inc,
+       _dbus_atomic_dec. Only slow fallback implementation at the moment.
+       
+       * dbus/dbus-protocol.h:
+       Add DBUS_MESSAGE_LOCAL_DISCONNECT define
+       
+       * dbus/dbus-message.c:
+       Make ref/unref atomic.
+       Fix some docs.
+       
+       * dbus/dbus-connection-internal.h:
+       * dbus/dbus-connection.c:
+       * dbus/dbus-connection.h:
+       Make threadsafe.
+       Change _peek to _borrow,_return & _steal_borrowed.
+       Change disconnect callback to event.
+       Make dbus_connection_dispatch_messages reentrant.
+       
+       * dbus/dbus-transport.c:
+       Don't ref the connection on calls to the transport
+       implementation.
+       
+       * dbus/dbus-message-handler.c:
+       Make threadsafe.
+       
+       * glib/dbus-gmain.c:
+       Don't use peek_message anymore
+       
+       * test/Makefile.am:
+       * test/debug-thread.c:
+       * test/debug-thread.h:
+       Simple thread implementation that asserts() on deadlocks in
+       single-threaded code.
+       
+       * test/bus-test.c:
+       (main) Call debug_threads_init.
+
+       * test/watch.c:
+       Use disconnect message instead of disconnect callback.
+
+       * bus/connection.c:
+       * bus/connection.h:
+       Don't call dbus_connection_set_disconnect_function. Instead export
+       bus_connection_disconnect.
+       
+       * bus/dispatch.c:
+       Call bus_connection_disconnect when we get a disconnected message.
+       
+2003-02-15  Havoc Pennington  <hp@pobox.com>
+
+       * dbus/dbus-message.c (dbus_message_new): fool around with the
+       docs
+
+2003-02-14  Havoc Pennington  <hp@pobox.com>
+
+       * dbus/dbus-mempool.c: fail if the debug functions so indicate
+
+       * dbus/dbus-memory.c: fail if the debug functions indicate we
+       should
+
+       * dbus/dbus-internals.c (_dbus_set_fail_alloc_counter)
+       (_dbus_decrement_fail_alloc_counter): debug functions to 
+       simulate memory allocation failures
+
+2003-02-14  Havoc Pennington  <hp@pobox.com>
+
+       * dbus/dbus-errors.h (struct DBusError): add a word of padding 
+       to DBusError
+
+2003-02-13  Anders Carlsson  <andersca@codefactory.se>
+
+       * bus/driver.c: (bus_driver_handle_hello):
+       * bus/driver.h:
+       * bus/services.c: (bus_service_lookup):
+       Reorder message sending so we get a more sane order.
+       
+       * test/bus-test.c: (message_handler):
+       Fix tyop.
+       
+2003-02-13  Anders Carlsson  <andersca@codefactory.se>
+
+       * bus/driver.c: (bus_driver_send_service_deleted),
+       (bus_driver_send_service_created), (bus_driver_send_service_lost),
+       (bus_driver_send_service_acquired), (bus_driver_handle_hello),
+       (bus_driver_send_welcome_message),
+       (bus_driver_handle_list_services),
+       (bus_driver_handle_acquire_service),
+       (bus_driver_handle_service_exists):
+       * dbus/dbus-bus.c: (dbus_bus_register_client),
+       (dbus_bus_acquire_service), (dbus_bus_service_exists):
+       * dbus/dbus-errors.c: (dbus_result_to_string):
+       * dbus/dbus-errors.h:
+       * dbus/dbus-message.c: (dbus_message_append_args),
+       (dbus_message_append_args_valist), (dbus_message_get_args),
+       (dbus_message_get_args_valist), (dbus_message_get_args_iter),
+       (dbus_message_iter_get_arg_type), (dbus_message_iter_get_string),
+       (dbus_message_iter_get_byte_array),
+       (dbus_message_iter_get_string_array), (message_iter_test),
+       (check_message_handling), (_dbus_message_test):
+       * dbus/dbus-message.h:
+       * test/bus-test.c: (main):
+       Change fields to arguments in messages, so that they won't be
+       confused with header fields.
+       
+       * glib/test-dbus-glib.c: (main):
+       Remove append_fields from hello message.
+       
+2003-02-13  Anders Carlsson  <andersca@codefactory.se>
+
+       * dbus/dbus-errors.c:
+       * dbus/dbus-message.c:
+       * dbus/dbus-string.c:
+       Documentation fixes.
+
+2003-02-13  Anders Carlsson  <andersca@codefactory.se>
+
+       * glib/dbus-gmain.c: (timeout_handler), (add_timeout),
+       (remove_timeout):
+       Implement support for timeouts in dbus-glib.
+       
+2003-02-13  Anders Carlsson  <andersca@codefactory.se>
+
+       * dbus/dbus-message-builder.c: (_dbus_message_data_load):
+       * dbus/dbus-message.c: (process_test_subdir):
+       * test/break-loader.c: (find_breaks_based_on):
+       Plug some memory leaks.
+       
 2003-02-13  Richard Hult  <rhult@codefactory.se>
 
        * bus/main.c: Fix build.