2003-03-31 Havoc Pennington <hp@redhat.com>
[platform/upstream/dbus.git] / ChangeLog
index 5784a26..b3ffa07 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,654 @@
+2003-03-31  Havoc Pennington  <hp@redhat.com>
+
+        Fix some annoying DBusString API and fix all affected code.
+       
+       * dbus/dbus-string.c (_dbus_string_init): get rid of annoying
+       max_length argument
+       (_dbus_string_get_data): change to return string instead of using 
+       an out param
+       (_dbus_string_get_const_data): ditto
+       (_dbus_string_get_data_len): ditto
+       (_dbus_string_get_const_data_len): ditto
+
+2003-03-31  Havoc Pennington  <hp@redhat.com>
+
+       * bus/main.c (main): fix up the command line arguments to be nicer
+
+2003-03-31  Havoc Pennington  <hp@redhat.com>
+
+       * dbus/Makefile.am (INCLUDES): use EXPANDED_LOCALSTATEDIR to
+       define DBUS_SYSTEM_BUS_PATH as we want to compile in the same 
+       final location that lands in the config file
+
+       * bus/config-loader-expat.c (bus_config_load): fix type of
+       XML_Parser variable
+
+       * doc/TODO: remove TODO item for dbus_bus_get()
+
+       * dbus/dbus-bus.c (bus_data_free): add missing lock/unlock
+
+2003-03-31  Havoc Pennington  <hp@pobox.com>
+
+       * dbus/dbus-transport-unix.c (_dbus_transport_new_for_domain_socket)
+       (_dbus_transport_new_for_tcp_socket): these didn't need the "server"
+       argument since they are always client side
+
+       * dbus/dbus-server.c (dbus_server_get_address): new function
+
+       * bus/main.c (main): take the configuration file as an argument.
+
+       * test/data/valid-config-files/debug-allow-all.conf: new file to 
+       use with dispatch.c tests for example
+
+       * bus/test-main.c (main): require test data dir
+
+       * bus/bus.c (bus_context_new): change this to take a
+       configuration file name as argument
+
+       * doc/config-file.txt (Elements): add <servicedir>
+
+       * bus/system.conf, bus/session.conf: new files
+       
+       * dbus/dbus-bus.c (dbus_bus_get): look for system bus on
+       well-known socket if none set
+
+       * configure.in: create system.conf and session.conf
+
+2003-03-30  Havoc Pennington  <hp@pobox.com>
+
+       * bus/config-parser.c: hacking
+       
+       * dbus/dbus-memory.c: don't use DBusList for the list of stuff 
+       to shut down, since it could cause weirdness with the DBusList
+       lock
+
+       * dbus/dbus-list.c (_dbus_list_test): add tests for the
+       link-oriented stack routines
+       (alloc_link): free the mempool if the first alloc from it fails
+
+       * dbus/dbus-mempool.c (struct DBusMemBlock): fix alignment issue
+
+       * dbus/dbus-string.c (UNICODE_VALID): sync new version of this
+       from GLib
+       (_dbus_string_skip_white): new
+
+       * doc/config-file.txt (Elements): add <includedir>
+
+2003-03-28  Havoc Pennington  <hp@pobox.com>
+
+       * dbus/dbus-string.c (_dbus_string_copy_data_len)
+       (_dbus_string_copy_data): new functions
+
+2003-03-28  Anders Carlsson  <andersca@codefactory.se>
+
+       * dbus/dbus-bus.c: (bus_data_free), (dbus_bus_get):
+       * dbus/dbus-bus.h:
+       Add dbus_bus_get.
+       
+       * dbus/dbus-memory.c:
+       Fix a doc comment.
+       
+2003-03-28  Havoc Pennington  <hp@pobox.com>
+
+       * bus/test.c (bus_test_flush_bus): remove the sleep from here, 
+       I think it may have just been superstition. Not sure.
+
+       * dbus/dbus-string.c (_dbus_string_base64_decode): catch some OOM
+       failures that were not being handled.
+
+       * dbus/dbus-auth.c (process_auth): fix a memleak in OOM handling
+
+       * dbus/dbus-memory.c: add ability to set number of mallocs in a
+       row that will fail on out-of-memory.
+
+       * dbus/dbus-internals.c (_dbus_test_oom_handling): convenience
+       function for testing out-of-memory handling.
+
+       * bus/config-loader-expat.c (memsuite): don't wrap the dbus
+       allocation functions, they do map exactly to the expat ones.
+
+2003-03-27  Havoc Pennington  <hp@redhat.com>
+
+       * bus/config-loader-libxml.c (bus_config_load): add another error
+       check
+
+2003-03-26  Anders Carlsson  <andersca@codefactory.se>
+
+       * doc/TODO:
+       Add note about automatic service activation.
+       
+       * doc/dbus-specification.sgml:
+       Rename the specification and clarify a few things.
+       
+2003-03-26  Anders Carlsson  <andersca@codefactory.se>
+
+       * Doxyfile.in:
+       * dbus/dbus-address.c:
+       * dbus/dbus-dict.c:
+       * dbus/dbus-marshal.c:
+       * dbus/dbus-server-debug-pipe.c:
+       * dbus/dbus-transport-unix.c:
+       Fix documentation warnings.
+       
+2003-03-26  Havoc Pennington  <hp@pobox.com>
+
+       * bus/test-main.c, dbus/dbus-test.c (main): check memleaks
+       after every test so it's quick and easy to see which leaked, and
+       so we test multiple dbus_shutdown() calls
+
+       * configure.in: change configure.in XML stuff to also support
+       expat
+
+       * config-loader-libxml.c: some hacking
+
+       * config-loader-expat.c: some hacking
+
+       * config-parser.c: some hacking, plus tests
+
+2003-03-25  Havoc Pennington  <hp@redhat.com>
+
+        * throughout - add more _DBUS_ASSERT_ERROR_IS_CLEAR
+       
+       * configure.in: add --with-xml option to specify XML library,
+       right now only libxml is supported.
+
+       * bus/config-loader-libxml.c, config-parser.c: sync some minor 
+       nonworking code between home and work, still just stubs
+
+2003-03-24  Havoc Pennington  <hp@redhat.com>
+
+       * dbus/dbus-sysdeps.c (_dbus_set_fd_nonblocking): move to this
+       file
+
+       * dbus/dbus-errors.c (dbus_set_error, dbus_set_error_const): allow 
+       NULL argument for "message" if the error is a well-known one, 
+       fill in a generic message in this case.
+
+       * dbus/dbus-errors.h (DBusResultCode): Kill DBusResultCode in
+       favor of DBusError
+
+       * bus/test.c (bus_test_flush_bus): add
+
+       * bus/policy.c (bus_policy_test): test code stub
+
+2003-03-24  Havoc Pennington  <hp@pobox.com>
+
+       * bus/connection.c (bus_connections_setup_connection): set up 
+       the "can this user connect" function, but it always returns 
+       TRUE until we have a config file parser so we can have a config
+       file that allows connections.
+
+2003-03-23  Havoc Pennington  <hp@pobox.com>
+
+       * dbus/dbus-threads.c (dbus_mutex_new, dbus_condvar_new): with 
+       DBUS_BUILD_TESTS, actually alloc/free a block of memory for 
+       the mutex, so we can check for proper memory management 
+       and OOM handling.
+
+       * dbus/dbus-dataslot.c: remove the mutex from
+       DBusDataSlotAllocator and lock it manually when using it, 
+       to simplify fitting it into the global slots framework.
+
+       * dbus/dbus-threads.c (init_static_locks): rework how we're
+       handling global locks so they are easily shut down.
+
+       * bus/policy.c (bus_policy_append_rule): fix
+
+       * bus/test-main.c (main): check for memleaks
+
+       * dbus/dbus-test.c (dbus_internal_do_not_use_run_tests): make 
+       test suite check for memleaks
+
+       * dbus/dbus-memory.c: add support in test mode for tracking 
+       number of outstanding blocks
+
+2003-03-23  Havoc Pennington  <hp@pobox.com>
+
+       * bus/policy.c, bus/bus.c, bus/connection.c: implement allow/deny
+       policies code
+       
+       * dbus/dbus-hash.h: add ULONG hash keys
+
+       * dbus/dbus-sysdeps.c (_dbus_get_groups): new
+       (_dbus_get_group_id): new function
+
+2003-03-20  Havoc Pennington  <hp@redhat.com>
+
+       * dbus/dbus-connection.c (dbus_connection_set_unix_user_function):
+       new function
+       (dbus_connection_get_unix_user): new function
+
+2003-03-20  Havoc Pennington  <hp@pobox.com>
+
+       * bus/connection.c (bus_connection_send_oom_error): assert that
+       message has a sender
+       (connection_execute_transaction): ditto
+       (bus_connection_preallocate_oom_error): fix to set the sender, and
+       set recipient to the destination service, not the bus driver
+
+       * bus/policy.c: hacking
+
+       * dbus/dbus-message.c (dbus_message_service_is): new function
+       (dbus_message_sender_is): new
+
+2003-03-19  Havoc Pennington  <hp@redhat.com>
+
+       * bus/policy.c: start sketching code for policy restrictions on 
+       what connections can do.
+
+2003-03-18  Havoc Pennington  <hp@redhat.com>
+
+       * doc/TODO: some notes on high-level todo items. Little nitpick
+       stuff is all in @todo, so no need to add it here.
+
+       * doc/config-file.txt: some notes on how config file might look
+
+2003-03-18  Anders Carlsson  <andersca@codefactory.se>
+
+       * configure.in: 0.6
+
+       * NEWS: Update.
+       
+2003-03-17  Havoc Pennington  <hp@redhat.com>
+
+       * dbus/dbus-internals.h: add gcc attributes so that 
+       our printf-style functions warn on bad arguments to 
+       format
+       
+       * dbus/dbus-sysdeps.c (_dbus_connect_tcp_socket): fix printf 
+       format bug
+
+       * dbus/dbus-message.c (_dbus_message_loader_queue_messages): fix
+       printf format bug
+
+2003-03-17  Havoc Pennington  <hp@redhat.com>
+
+       * bus/test-main.c (main): make it print something as it runs 
+       so make check doesn't look stuck
+
+       * doc/negotiation.txt, doc/dbus-sasl-profile.txt: remove 
+       from CVS, now obsolete
+
+2003-03-17  Anders Carlsson  <andersca@codefactory.se>
+
+       * bus/dispatch.c: (bus_dispatch):
+       Refetch the service name since it may have been reallocated
+       when dbus_message_set_sender was called.
+       
+       * dbus/dbus-sysdeps.c: (_dbus_accept):
+       Add address and address length variables and use them to stop
+       valgrind from complaining.
+       
+2003-03-17  Havoc Pennington  <hp@pobox.com>
+
+       All tests pass, no memleaks, no valgrind complaints.
+       
+       * bus/test.c: refcount handler_slot
+
+       * bus/connection.c (bus_connections_new): refcount
+       connection_data_slot
+
+       * dbus/dbus-auth-script.c (_dbus_auth_script_run): delete unused
+       bytes so that auth scripts pass.
+
+       * bus/dispatch.c: init message_handler_slot so it gets allocated
+       properly
+
+       * bus/dispatch.c (message_handler_slot_ref): fix memleak
+
+       * dbus/dbus-server-debug-pipe.c (_dbus_server_debug_pipe_new):
+       dealloc server_pipe_hash when no longer used for benefit of
+       leak checking
+
+       * dbus/dbus-auth.c (process_command): memleak fix
+
+       * bus/dispatch.c (check_hello_message): memleak fix
+
+2003-03-16  Havoc Pennington  <hp@pobox.com>
+
+       * dbus/dbus-bus.c (ensure_bus_data): fix double-unref of the data slot
+
+2003-03-17  Anders Carlsson  <andersca@codefactory.se>
+
+       * bus/activation.c (bus_activation_activate_service): Append
+       the pending activation entry to the list of pending activations.
+
+2003-03-16  Havoc Pennington  <hp@pobox.com>
+
+       * bus/dispatch.c (bus_dispatch_test): remove double-unrefs of
+       connections
+
+       * dbus/dbus-address.c (create_entry): fix OOM handling when
+       failing to alloc entry->method
+
+2003-03-16  Havoc Pennington  <hp@pobox.com>
+
+       * dbus/dbus-watch.c (_dbus_watch_new): handle failure to malloc
+       the watch
+
+       * dbus/dbus-server-debug-pipe.c (_dbus_transport_debug_pipe_new):
+       add some missing dbus_set_result
+
+       * bus/dispatch.c (bus_dispatch_add_connection): handle failure to 
+       alloc the DBusMessageHandler
+
+       * dbus/dbus-transport.c (_dbus_transport_disconnect): don't ref
+       the transport here, since we call this from the finalizer; it 
+       resulted in a double-finalize.
+
+       * dbus/dbus-transport.c (_dbus_transport_disconnect): fix a bug 
+       where we tried to use transport->connection that was NULL, 
+       happened when transport was disconnected early on due to OOM
+
+       * bus/*.c: adapt to handle OOM for watches/timeouts
+
+       * dbus/dbus-transport-unix.c: port to handle OOM during 
+       watch handling
+       
+       * dbus/dbus-auth.c (_dbus_auth_get_unused_bytes): return a
+       reference to unused bytes instead of a copy
+
+       * dbus/dbus-server.c (dbus_server_handle_watch): return FALSE for
+       out of memory
+
+       * dbus/dbus-connection.c (dbus_connection_handle_watch): return
+       FALSE on OOM
+
+       * dbus/dbus-timeout.c (dbus_timeout_handle): return FALSE for out
+       of memory
+
+2003-03-16  Anders Carlsson  <andersca@codefactory.se>
+
+       * doc/dbus-specification.sgml:
+       Document reply message for ActivateService.
+       
+2003-03-16  Anders Carlsson  <andersca@codefactory.se>
+
+       * bus/activation.c: (bus_pending_activation_entry_free),
+       (bus_pending_activation_free), (bus_activation_new),
+       (bus_activation_unref), (bus_activation_service_created),
+       (bus_activation_activate_service):
+       * bus/activation.h:
+       * bus/bus.c: (bus_context_new):
+       * bus/desktop-file.c: (new_section):
+       * bus/driver.c: (bus_driver_send_service_deleted),
+       (bus_driver_handle_activate_service):
+       * bus/services.c: (bus_registry_new), (bus_registry_ensure):
+       * bus/services.h:
+       * dbus/dbus-connection.c:
+       (dbus_connection_send_with_reply_and_block):
+       * dbus/dbus-message.c: (dbus_message_append_args_valist):
+       * dbus/dbus-protocol.h:
+       Make activation work better. Now pending activations will be queued
+       and the daemon won't try to activate services that are already registered.
+       
+2003-03-16  Havoc Pennington  <hp@pobox.com>
+
+       * dbus/dbus-bus.c (ensure_bus_data): handle failure to set
+       connection data
+
+       * dbus/dbus-memory.c (_dbus_initialize_malloc_debug): support
+       DBUS_MALLOC_BACKTRACES to print trace when failing an alloc
+
+2003-03-16  Havoc Pennington  <hp@pobox.com>
+
+       * dbus/dbus-string.c (_dbus_string_validate_utf8): oops, unbreak
+       this. always run the test suite before commit...
+
+       * bus/*: adapt to DBusConnection API changes
+
+       * glib/dbus-gmain.c: adapt to DBusConnection API changes, 
+       requires renaming stuff to avoid dbus_connection_dispatch name 
+       conflict.
+
+       * dbus/dbus-transport.c (_dbus_transport_queue_messages): new
+       function
+
+       * dbus/dbus-message.c (_dbus_message_loader_queue_messages):
+       separate from _dbus_message_loader_return_buffer()
+
+       * dbus/dbus-connection.c (dbus_connection_get_n_messages): remove
+       this, because it's now always broken to use; the number of
+       messages in queue vs. the number still buffered by the message
+       loader is undefined/meaningless. Should use
+       dbus_connection_get_dispatch_state().
+       (dbus_connection_dispatch): rename from
+       dbus_connection_dispatch_message
+
+2003-03-16  Havoc Pennington  <hp@pobox.com>
+
+       * dbus/dbus-string.c (_dbus_string_validate_utf8): copy in a real
+       implementation
+
+2003-03-16  Anders Carlsson  <andersca@codefactory.se>
+
+       * dbus/dbus-connection.c:
+       (dbus_connection_send_with_reply_and_block):
+       Decrease connection->n_incoming when removing an entry 
+       from the list.
+       * dbus/dbus-dict.c: (dbus_dict_entry_free),
+       (dbus_dict_set_boolean_array), (dbus_dict_set_int32_array),
+       (dbus_dict_set_uint32_array), (dbus_dict_set_double_array),
+       (dbus_dict_set_byte_array), (dbus_dict_set_string_array),
+       (dbus_dict_get_boolean_array), (dbus_dict_get_double_array),
+       (dbus_dict_get_byte_array):
+       Handle NULL arrays and strings. Also add support for byte arrays.
+       
+       * dbus/dbus-marshal.c: (_dbus_marshal_byte_array),
+       (_dbus_marshal_dict), (_dbus_demarshal_byte_array),
+       (_dbus_demarshal_int32_array), (_dbus_demarshal_uint32_array),
+       (_dbus_demarshal_double_array), (_dbus_demarshal_string_array),
+       (_dbus_demarshal_dict), (demarshal_and_validate_len),
+       (_dbus_marshal_validate_arg), (_dbus_marshal_test):
+       * dbus/dbus-marshal.h:
+       Add support for marshalling and demarshalling empty arrays and strings.
+       
+       * dbus/dbus-message.c: (dbus_message_append_args_valist),
+       (dbus_message_append_string_array),
+       (dbus_message_iter_get_boolean),
+       (dbus_message_iter_get_boolean_array),
+       (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_message_iter_get_dict),
+       (check_message_handling):
+       Add support for getting empty arrays and dicts.
+       
+       * dbus/dbus-string.c: (_dbus_string_validate_utf8):
+       Don't do any validation at all for now, that's better than just checking
+       for ASCII.
+       
+       * test/data/valid-messages/emptiness.message:
+       New test message with lots of empty arrays.
+       
+2003-03-16  Havoc Pennington  <hp@pobox.com>
+
+       * dbus/dbus-connection.c
+       (_dbus_connection_queue_received_message_link): new function that
+       can't fail due to OOM
+
+       * dbus/dbus-message.c (_dbus_message_loader_pop_message_link):
+       new function pops a message together with a list link 
+       containing it.
+
+       * dbus/dbus-transport-unix.c (queue_messages): use new link-based
+       message queuing functions to avoid needing to alloc memory
+
+2003-03-16  Havoc Pennington  <hp@pobox.com>
+
+       Oops - test code was only testing failure of around 30 of the
+       mallocs in the test path, but it turns out there are 500+
+       mallocs. I believe this was due to misguided linking setup such
+       that there was one copy of dbus_malloc etc. in the daemon and one
+       in the shared lib, and only daemon mallocs were tested. In any
+       case, the test case now tests all 500+ mallocs, and doesn't pass
+       yet, though there are lots of fixes in this patch.
+       
+       * dbus/dbus-connection.c (dbus_connection_dispatch_message): fix
+       this so that it doesn't need to allocate memory, since it 
+       has no way of indicating failure due to OOM (and would be 
+       annoying if it did).
+
+       * dbus/dbus-list.c (_dbus_list_pop_first_link): new function
+
+       * bus/Makefile.am: rearrange to create two self-contained
+       libraries, to avoid having libraries with overlapping symbols. 
+       that was resulting in weirdness, e.g. I'm pretty sure there 
+       were two copies of global static variables.
+
+       * dbus/dbus-internals.c: move the malloc debug stuff to 
+       dbus-memory.c
+
+       * dbus/dbus-list.c (free_link): free list mempool if it becomes
+       empty.
+
+       * dbus/dbus-memory.c (_dbus_disable_mem_pools): new function
+
+       * dbus/dbus-address.c (dbus_parse_address): free list nodes
+       on failure.
+
+       * bus/dispatch.c (bus_dispatch_add_connection): free
+       message_handler_slot when no longer using it, so 
+       memory leak checkers are happy for the test suite.
+
+       * dbus/dbus-server-debug-pipe.c (debug_finalize): free server name
+
+       * bus/bus.c (new_connection_callback): disconnect in here if 
+       bus_connections_setup_connection fails.
+
+       * bus/connection.c (bus_connections_unref): fix to free the 
+       connections
+       (bus_connections_setup_connection): if this fails, don't
+       disconnect the connection, just be sure there are no side
+       effects.
+
+       * dbus/dbus-string.c (undo_alignment): unbreak this
+
+       * dbus/dbus-auth.c (_dbus_auth_unref): free some stuff we were
+       leaking
+       (_dbus_auth_new): fix the order in which we free strings 
+       on OOM failure
+
+       * bus/connection.c (bus_connection_disconnected): fix to 
+       not send ServiceDeleted multiple times in case of memory 
+       allocation failure
+
+       * dbus/dbus-bus.c (dbus_bus_get_base_service): new function to
+       get the base service name
+       (dbus_bus_register_client): don't return base service name,
+       instead store it on the DBusConnection and have an accessor
+       function for it.
+       (dbus_bus_register_client): rename dbus_bus_register()
+
+       * bus/dispatch.c (check_hello_message): verify that other 
+       connections on the bus also got the correct results, not 
+       just the one sending hello
+
+2003-03-15  Havoc Pennington  <hp@pobox.com>
+
+       Make it pass the Hello handling test including all OOM codepaths.
+       Now to do other messages...
+       
+       * bus/services.c (bus_service_remove_owner): fix crash when
+       removing owner from an empty list of owners
+       (bus_registry_ensure): don't leave service in the list of 
+       a connection's owned services if we fail to put the service
+       in the hash table.
+
+       * bus/connection.c (bus_connection_preallocate_oom_error): set
+       error flag on the OOM error.
+
+       * dbus/dbus-connection.c (_dbus_connection_new_for_transport):
+       handle _dbus_transport_set_connection failure
+
+       * dbus/dbus-transport-unix.c (_dbus_transport_new_for_fd): modify
+       to create watches up front and simply enable/disable them as
+       needed.
+       (unix_connection_set): this can now fail on OOM
+
+       * dbus/dbus-timeout.c, dbus/dbus-watch.c: add concept 
+       of enabling/disabling a watch or timeout.
+
+       * bus/loop.c (bus_loop_iterate): don't touch disabled
+       watches/timeouts
+
+       * glib/dbus-gmain.c: adapt to enable/disable watches and timeouts
+
+2003-03-15  Havoc Pennington  <hp@pobox.com>
+
+       * bus/dispatch.c (bus_dispatch_test): OK, now finally actually
+       write useful test code, after all that futzing around ;-)
+
+       Test does not yet pass because we can't handle OOM in
+       _dbus_transport_messages_pending (basically,
+       dbus_connection_preallocate_send() does not prealloc the write
+       watch). To fix this, I think we need to add new stuff to
+       set_watch_functions, namely a SetEnabled function so we can alloc
+       the watch earlier, then enable it later.
+       
+       * dbus/Makefile.am (libdbus_convenience_la_SOURCES): move
+       dbus-memory.c to the convenience lib
+
+       * bus/test.c: rename some static functions to keep them clearly 
+       distinct from stuff in connection.c. Handle client disconnection.
+
+2003-03-14  Havoc Pennington  <hp@pobox.com>
+
+       * bus/dispatch.c (bus_dispatch_test): do test using debug-pipe 
+       transport, tests more of the real codepath. Set up clients 
+       with bus_setup_debug_client.
+
+       * bus/test.c (bus_setup_debug_client): function to set up debug 
+       "clients" on the main loop
+
+       * dbus/dbus-transport.c (_dbus_transport_open): add debug-pipe 
+       support
+
+       * dbus/dbus-server.c (dbus_server_listen): add debug-pipe 
+       server type
+
+       * dbus/dbus-server-debug.c: support a debug server based on pipes
+
+       * dbus/dbus-sysdeps.c (_dbus_full_duplex_pipe): new function
+       (_dbus_close): new function
+       
+       * configure.in: check for socketpair
+
+2003-03-14  Havoc Pennington  <hp@redhat.com>
+
+       * dbus/dbus-memory.c: add a "detect buffer overwrites on free" 
+       cheesy hack
+
+       * dbus/dbus-transport-debug.c: rework this a good bit to be 
+       less complicated. hopefully still works.
+
+       * dbus/dbus-server-debug.c (handle_new_client): remove timeout
+       manually
+
+       * glib/dbus-gmain.c (timeout_handler): don't remove timeout 
+       after running it
+
+       * dbus/dbus-message.c (dbus_message_copy): rename from 
+       dbus_message_new_from_message, fix it up to copy 
+       all the message fields, add test case
+
+       * bus/dispatch.c (bus_dispatch_test): add some more test code, 
+       not quite passing yet
+
+2003-03-14  Havoc Pennington  <hp@pobox.com>
+
+       * bus/loop.c (bus_loop_iterate): add this so we can "run loop
+       until no work remains" in test code. (the large diff here 
+       is just code movement, no actual changes)
+
+       * dbus/dbus-server-debug.c (DEFAULT_INTERVAL): change interval to
+       1, no point waiting around for test code.
+       (_dbus_server_debug_accept_transport): unref the timeout 
+       after adding it (right?)
+
+       * dbus/dbus-transport-debug.c (DEFAULT_INTERVAL): ditto
+       
 2003-03-13  Havoc Pennington  <hp@redhat.com>
 
        * dbus/dbus-timeout.c (_dbus_timeout_list_set_functions): handle