summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRyan Lortie <desrt@desrt.ca>2005-02-11 18:16:27 +0000
committerRyan Lortie <desrt@desrt.ca>2005-02-11 18:16:27 +0000
commite8e4792a5e9a5efae4e4817db93b9afd2757d0a2 (patch)
treed76d866448cf603896b627f3c7293b07cf72058f
parentaa4f823781185fb18187714798795d7e4b0c9b65 (diff)
This commit was manufactured by cvs2svn to create tag 'dbus-0.23.1'.dbus-0.23.1
-rw-r--r--ChangeLog757
-rw-r--r--NEWS8
-rw-r--r--configure.in63
-rw-r--r--dbus/dbus-connection.c74
-rw-r--r--mono/Service.cs24
5 files changed, 64 insertions, 862 deletions
diff --git a/ChangeLog b/ChangeLog
index 085e542d..78ccdbd9 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,51 +1,8 @@
-2005-02-10 Havoc Pennington <hp@redhat.com>
+2005-02-11 Joe Shaw <joeshaw@novell.com>
- * test/glib/test-dbus-glib.c (main): fix so this test doesn't fail
- (call dbus_g_proxy_add_signal)
+ * NEWS: Update for 0.23.1
- * dbus/dbus-server-unix.c (_dbus_server_new_for_tcp_socket):
- escape the hostname
- (_dbus_server_new_for_domain_socket): escape the path
-
- * dbus/dbus-address.c (dbus_address_escape_value): new
- (dbus_address_unescape_value): new
- (dbus_parse_address): unescape values
-
- * dbus/dbus-string.c (_dbus_string_append_byte_as_hex): new function
-
- * doc/dbus-specification.xml: explain how to escape values in
- addresses
-
-2005-02-10 Havoc Pennington <hp@redhat.com>
-
- * dbus/dbus-message-factory.c (generate_special): modify test to
- avoid using a non-basic dict key
-
- * dbus/dbus-marshal-validate-util.c: add test for the below
-
- * doc/dbus-specification.xml: require that dict keys are a basic
- type
-
- * dbus/dbus-marshal-validate.c
- (_dbus_validate_signature_with_reason): require that dict key is a
- basic type
-
-2005-02-10 Havoc Pennington <hp@redhat.com>
-
- * dbus/dbus-object-tree.c (handle_default_introspect_and_unlock):
- change to be _and_unlock instead of _unlocked
-
- * dbus/dbus-connection.c
- (_dbus_connection_send_preallocated_unlocked_no_update): rename to
- have no_update so we can find this bug quickly in future
-
-2005-02-10 Havoc Pennington <hp@redhat.com>
-
- * dbus/dbus-message-util.c (verify_test_message): tests for string
- array
-
- * dbus/dbus-message.c (dbus_message_append_args_valist): add
- support for arrays of string/signature/path
+ * configure.in: Release 0.23.1
2005-02-10 Joe Shaw <joeshaw@novell.com>
@@ -71,714 +28,6 @@
we don't get unmanaged code calling back into a GCed delegate.
(RemoveFilter); Added.
-2005-02-09 John (J5) Palmieri <johnp@redhat.com>
-
- * dbus/dbus-message.c (dbus_message_iter_open_container):
- - Removed check for iterator type being an array because
- get_arg_type does not work with writer iterators
- - Pass NULL to _dbus_type_writer_recurse if signiture is NULL
-
-2005-02-07 Havoc Pennington <hp@redhat.com>
-
- * doc/dbus-specification.xml: some more language cleanups; add
- stuff about how to deal with invalid protocol and extension
- points; add _ to allowed chars in auth commands; add EXTENSION_
- auth command prefix
-
-2005-02-06 Havoc Pennington <hp@redhat.com>
-
- * s/expected/required/ in a couple places for clarity
-
-2005-02-07 Colin Walters <walters@verbum.org>
-
- * bus/selinux.c (bus_selinux_allows_send): Handle NULL for
- sender or proposed_recipient.
-
-2005-02-06 Havoc Pennington <hp@redhat.com>
-
- * dbus/dbus-message-factory.c (generate_special): more tests
-
- * dbus/dbus-marshal-validate.c (validate_body_helper): detect
- array length that exceeds the maximum
-
-2005-02-05 Havoc Pennington <hp@redhat.com>
-
- * dbus/dbus-message-factory.c (generate_special): more test cases,
- increasing coverage
-
- * dbus/dbus-marshal-validate.c (validate_body_helper): return the
- reason why a signature was invalid
-
- * dbus/dbus-marshal-header.c (load_and_validate_field): fix to
- skip the length of the string before we look at it in validation
-
- * dbus/dbus-string-util.c (_dbus_string_test): add tests for
- equal_substring
-
- * dbus/dbus-message.c (_dbus_message_loader_new): default
- max_message_length to DBUS_MAXIMUM_MESSAGE_LENGTH
-
-2005-02-05 Havoc Pennington <hp@redhat.com>
-
- * dbus/dbus-marshal-validate.c (validate_body_helper): fix crash
- if the signature of a variant was empty
- (_dbus_validate_signature_with_reason): catch "(a)" (array inside
- struct with no element type)
-
- * dbus/dbus-message-factory.c (generate_uint32_changed): add more
- mangled messages to break things
-
-2005-02-04 Havoc Pennington <hp@redhat.com>
-
- * glib/dbus-gproxy.c (dbus_g_proxy_disconnect_signal): use
- g_quark_try_string() so it actually can return 0
- (dbus_g_proxy_connect_signal): ditto
-
-2005-02-04 Havoc Pennington <hp@redhat.com>
-
- * glib/dbus-gproxy.c (dbus_g_proxy_emit_remote_signal): fix a
- bogus warning
- (tristring_from_message): assert cleanly on null path/interface
- (should not be possible though I decided later)
- (dbus_g_proxy_dispose): move proxy manager unregistration here
- (DBUS_G_PROXY_DESTROYED): add this macro, and use it in a bunch of
- g_return_if_fail() checks
-
-2005-02-04 Havoc Pennington <hp@redhat.com>
-
- * doc/Makefile.am (EXTRA_DIST): add DTDs to makefile
-
- * doc/introspect.dtd: add introspect.dtd from David A. Wheeler
- (with some minor changes)
-
- * doc/dbus-specification.xml: add deprecated attribute to
- introspection format
-
-2005-01-31 Havoc Pennington <hp@redhat.com>
-
- * glib/dbus-gproxy.c: rewrite how signals work again, this time I
- think it's sort of right
-
-2005-01-30 Havoc Pennington <hp@redhat.com>
-
- * tools/dbus-viewer.c: kind of half-ass hook up the option menu.
-
-2005-01-30 Havoc Pennington <hp@redhat.com>
-
- * tools/dbus-names-model.c: dynamically watch NameOwnerChanged
-
- * autogen.sh: change to autotools 1.9
-
- * glib/dbus-gproxy.c: completely change how signals work
- (dbus_g_proxy_add_signal): new function to specify signature of a
- signal
- (dbus_g_proxy_emit_received): marshal the dbus message to GValues,
- and g_warning if the incoming message has the wrong signature.
-
-2005-01-30 Havoc Pennington <hp@redhat.com>
-
- * tools/dbus-names-model.c (have_names_notify): fix this
-
- * dbus/dbus-message.c (_dbus_message_iter_get_args_valist): clean
- up the string array handling a bit
-
-2005-01-30 Havoc Pennington <hp@redhat.com>
-
- * glib/dbus-glib.c (dbus_g_pending_call_set_notify): new function
- (dbus_g_pending_call_cancel): new function
-
- * dbus/dbus-glib.h: move GType decls for connection/message here;
- * dbus/dbus-glib.c: move all the g_type and ref/unref stuff in
- here, just kind of rationalizing how we handle all that
-
- * tools/dbus-names-model.c: new file for a tree model listing the
- services on a bus
-
- * tools/dbus-tree-view.c (model_new): use proper typing on the
- model rows
-
-2005-01-30 Havoc Pennington <hp@redhat.com>
-
- * glib/dbus-gmain.c: add a custom GSource back that just checks
- whether the message queue has anything in it; otherwise, there are
- cases where we won't see messages in the queue since there was no
- IO visible to the glib main loop
-
- * dbus/dbus-connection-internal.h (_DBUS_DEFAULT_TIMEOUT_VALUE):
- increase default message timeout to 25 seconds
-
-2005-01-30 Havoc Pennington <hp@redhat.com>
-
- * test/glib/test-profile.c (no_bus_stop_server): remove the
- warning about the g_warning that I just fixed
-
- * glib/dbus-gmain.c: rewrite the main loop stuff to avoid the
- custom source, seems to be a lot easier to understand and work
- better.
-
-2005-01-30 Havoc Pennington <hp@redhat.com>
-
- I think this main loop thing is conceptually broken, but here are
- some band aids. I'll maybe rewrite it in a minute.
-
- * glib/dbus-gmain.c (add_timeout): timeout stuff doesn't use the
- custom GSource, so don't pass it in; confusing
- (gsource_server_finalize, gsource_connection_finalize): add
- finalize handlers that remove all the watches.
-
-2005-01-30 Havoc Pennington <hp@redhat.com>
-
- * glib/dbus-gobject.c (introspect_properties): fix the XML
- generated
-
- * dbus/dbus-message.c (dbus_message_unref): add an in_cache flag
- which effectively detects the use of freed messages
-
- * glib/dbus-gobject.c (handle_introspect): modify and return the
- reply message instead of the incoming message
-
- * dbus/dbus-object-tree.c (handle_default_introspect_unlocked):
- gee, maybe it should SEND THE XML instead of just making a string
- and freeing it again ;-)
-
- * tools/dbus-print-message.c (print_message): improve printing of
- messages
-
- * configure.in: add debug-glib.service to the output
-
-2005-01-30 Havoc Pennington <hp@redhat.com>
-
- dbus-viewer introspected and displayed the bus driver
-
- * dbus/dbus-object-tree.c
- (object_tree_test_iteration): add tests for a handler registered on "/"
-
- * dbus/dbus-object-tree.c
- (_dbus_decompose_path): fix to handle path "/" properly
- (run_decompose_tests): add tests for path decomposition
-
- * glib/dbus-gutils.c (_dbus_gutils_split_path): fix to handle "/"
- properly
-
- * glib/dbus-gobject.c (handle_introspect): fix quotes
-
- * test/glib/run-test.sh: support launching the bus, then running
- dbus-viewer
-
- * test/glib/test-service-glib.c (main): put in a trivial gobject
- subclass and register it on the connection
-
- * bus/driver.c (bus_driver_handle_introspect): implement
- introspection of the bus driver service
-
- * dbus/dbus-protocol.h: add #defines for the XML namespace,
- identifiers, doctype decl
-
- * bus/driver.c (bus_driver_handle_get_service_owner): handle
- attempts to get owner of DBUS_SERVICE_ORG_FREEDESKTOP_DBUS by
- returning the service unchanged.
- (bus_driver_handle_message): remove old check for reply_serial in
- method calls, now the message type deals with that
- (bus_driver_handle_message): handle NULL interface
-
- * glib/dbus-gproxy.c (dbus_g_proxy_get_bus_name): new function
-
- * glib/dbus-gloader-expat.c (description_load_from_string): allow
- -1 for len
-
- * tools/dbus-viewer.c: add support for introspecting a service on
- a bus
-
- * glib/dbus-gproxy.c (dbus_g_pending_call_ref): add
- (dbus_g_pending_call_unref): add
-
-2005-01-29 Havoc Pennington <hp@redhat.com>
-
- * tools/dbus-tree-view.c: add support for displaying properties.
- (run dbus-viewer with an introspect xml file as arg, then resize
- the window so the tree elements show up, not sure what that is)
-
- * glib/dbus-gobject.c (handle_introspect): return
- org.freedesktop.Properties and org.freedesktop.Introspectable
- interfaces when we are introspected.
-
- * doc/dbus-specification.xml: allow empty interface name when
- Get/Set a property
-
-2005-01-29 Havoc Pennington <hp@redhat.com>
-
- * glib/Makefile.am: rename dbus-glib-tool to dbus-binding-tool;
- though it uses glib, it could be extended for any binding in
- principle
-
- * glib/dbus-gobject.c (gobject_message_function): change to the
- new way properties work
-
- * dbus/dbus-protocol.h: add the new interfaces
-
- * doc/dbus-specification.xml: document the introspection format,
- Introspectable interface, and add an org.freedesktop.Properties
- interface.
-
- * glib/dbus-gparser.c: add support for a <property> element
-
- * glib/dbus-gidl.c: add PropertyInfo
-
- * glib/dbus-gobject.c (handle_introspect): put the outermost
- <node> outside the signal and property descriptions.
- (introspect_properties): export properties as <property> rather
- than as method calls
-
-2005-01-28 Havoc Pennington <hp@redhat.com>
-
- * doc/TODO, doc/dbus-specification.xml: spec and TODO tweaks
- related to authentication protocol
-
-2005-01-28 John (J5) Palmieri <johnp@redhat.com>
-
- * python/dbus_bindings.pyx.in: Updated to handle new D-BUS type system
- - BUS_ACTIVATION -> BUS_STARTER
- - DBUS_BUS_ACTIVATION -> DBUS_BUS_STARTER
- - class MessageIter (__init__): Added recursion checking
- so we throw a nice error instead of just disconnecting from the
- bus.
- (get): Added arg_type parameter for recursion.
- Removed the nil type
- Added signiture type placeholder (not implemented)
- Added struct type placeholder (not implemented)
- Added varient type placeholder (not implemented)
- Commented out dict type for now
- (get_element_type): renamed from get_array_type
- (get_*): changed to use the dbus_message_iter_get_basic API
- (get_*_array): removed in favor of recursive get_array method
- (get_array): new recursive method which calls get to marshal
- the elements of the array
- (value_to_dbus_sig): New method returns the corrasponding
- dbus signiture to a python value
- (append): Comment out dict handling for now
- Handle lists with the new recursive API
- Comment out None handling for now
- (append_nil): removed
- (append_*): changed to use dbus_message_iter_append_basic API
- (append_*_array): removed in favor of recursive append_array
- method
- (__str__): Make it easier to print out recursive iterators
- for debugging
- - class Message (__str__): moved type inspection to the
- MessageIter class' __str__ method
- (get_iter): Added an append parameter wich defaults to False
- If True use the new API's to create an append iterator
-
- * python/dbus.py: Update to use new bindings API
- - TYPE_ACTIVATION -> TYPE_STARTER
- - class Bus (_get_match_rule): GetServiceOwner -> GetNameOwner
- - class ActivationBus -> class StarterBus
- - class RemoteObject (__call__): get an append iterator
- - (_dispatch_dbus_method_call): get an append iterator
- - class Object (emit_signal): get an append iterator
-
- * python/examples/: Fixed up the examples to work with the new API
-
-2005-01-28 Joe Shaw <joeshaw@novell.com>
-
- * configure.in: Bump version up to 0.30.
-
- * HACKING: Add a release item to bump the version number up after
- a release.
-
-2005-01-28 Havoc Pennington <hp@redhat.com>
-
- * doc/dbus-specification.xml: update to describe 16-bit types and
- dict entries
-
- * dbus/dbus-marshal-basic.c (_dbus_unpack_uint16): fix broken
- assertion
-
- * dbus/dbus-protocol.h (DBUS_TYPE_DICT_ENTRY): add DICT_ENTRY as a
- type
-
- * dbus/dbus-marshal-recursive.c: implement
-
-2005-01-27 Havoc Pennington <hp@redhat.com>
-
- * dbus/dbus-arch-deps.h.in: add 16/32-bit types
-
- * configure.in: find the right type for 16 and 32 bit ints as well
- as 64
-
- * dbus/dbus-protocol.h (DBUS_TYPE_INT16, DBUS_TYPE_UINT16): add
- the 16-bit types so people don't have to stuff them in 32-bit or
- byte arrays.
-
-2005-01-27 Havoc Pennington <hp@redhat.com>
-
- * dbus/dbus-message.c: byteswap the message if you init an
- iterator to read/write from it
-
- * dbus/dbus-marshal-byteswap.c: new file implementing
- _dbus_marshal_byteswap()
-
- * dbus/dbus-marshal-basic.c: add _dbus_swap_array()
-
-2005-01-26 Havoc Pennington <hp@redhat.com>
-
- * dbus/dbus-marshal-validate-util.c: break this out (and fix
- build, apparently - nobody noticed?)
-
-2005-01-26 Havoc Pennington <hp@redhat.com>
-
- * dbus/dbus-marshal-recursive.h: remove todo comment
-
-2005-01-25 Joe Shaw <joeshaw@novell.com>
-
- * Land the mono binding changes to conform to the new APIs.
-
- * mono/Makefile.am: Remove Custom.cs, DBusType/Custom.cs,
- DBusType/Dict.cs, and DBusType/Nil.cs from the build.
-
- * mono/Arguments.cs (GetCodeAsString): Added. Returns the dbus
- type code as a string.
- (InitAppending): Rename dbus_message_append_iter_init() to
- dbus_message_iter_init_append().
-
- * mono/BusDriver.cs: Rename ServiceEventHandler to
- NameOwnerChangedHandler. Rename GetServiceOwner to GetOwner.
- Rename ServiceOwnerChanged to NameOwnerChanged.
-
- * mono/Connection.cs: Rename BaseService to UniqueName, and the
- underlying C call.
-
- * mono/Custom.cs: Removed. The CUSTOM type has been removed.
-
- * mono/Service.cs: Rename Exists to HasOwner, internally rename
- dbus_bus_acquire_service() to dbus_bus_request_name().
-
- * mono/DBusType/Array.cs (ctor): Use Type.GetElementType() instead
- of Type.UnderlyingSystemType to get the correct element type for
- the array.
- (ctor): Update code for new APIs: use dbus_message_iter_recurse(),
- dbus_message_get_{element|arg}_type() instead of
- dbus_message_iter_init_array_iterator().
- (Append): Replace dbus_message_iter_append_array() with
- dbus_message_iter_open_container() and
- dbus_message_iter_close_container().
-
- * mono/DBusType/Custom.cs, mono/DBusType/Nil.cs: Removed. These
- types have been removed.
-
- * mono/DBusType/*.cs: Replace calls of
- dbus_message_iter_get_[type]() to dbus_message_iter_get_basic(),
- but specify the type in the DllImport extern declaration. Ditto
- for dbus_message_iter_append_[type]() ->
- dbus_message_iter_append_basic().
-
- * mono/example/BusListener.cs: Update for ServiceEventHandler ->
- NameOwnerChangedHandler.
-
-2005-01-25 John (J5) Palmieri <johnp@redhat.com>
-
- * python/dbus_bindings.pyx.in: Rename of methods and bindings
- - get_base_service -> get_unique_name
- - bus_get_base_service -> bus_get_unique_name
- - dbus_bus_get_base_service -> dbus_bus_get_unique_name
- - ACTIVATION_REPLY_ACTIVATED -> DBUS_START_REPLY_SUCCESS
- - ACTIVATION_REPLY_ALREADY_ACTIVE -> DBUS_START_REPLY_ALREADY_RUNNING
- - bus_activate_service -> bus_start_service_by_name
- - dbus_bus_activate_service -> dbus_bus_start_service_by_name
- - bus_acquire_service -> bus_request_name
- - dbus_bus_acquire_service -> dbus_bus_request_name
- - bus_service_exists -> bus_name_has_owner
- - dbus_bus_service_exists -> dbus_bus_name_has_owner
-
- * python/dbus.py: Rename of methods
- - activate_service -> start_service_by_name
- - bus_acquire_service -> bus_request_name
- - ACTIVATION_REPLY_ACTIVATED -> START_REPLY_SUCCESS
- - ACTIVATION_REPLY_ALREADY_ACTIVE -> START_REPLY_ALREADY_RUNNING
-
-
-2005-01-24 Joe Shaw <joeshaw@novell.com>
-
- * dbus/dbus-connection.c (dbus_connection_dispatch): Print out the
- signature for the method that can't be found.
-
- * dbus/dbus-message.c (dbus_message_iter_init): To check to see if
- the message has any arguments, we need to call
- _dbus_type_reader_get_current_type(), not
- _dbus_type_reader_has_next().
-
-2005-01-24 Havoc Pennington <hp@redhat.com>
-
- * dbus/dbus-message-factory.c: more testing of message validation
-
- * dbus/dbus-protocol.h (DBUS_MINIMUM_HEADER_SIZE): move to this
- header
-
-2005-01-23 Havoc Pennington <hp@redhat.com>
-
- * dbus/dbus-message-factory.c, dbus/dbus-message-util.c:
- get this all working, not many tests in the framework yet though
-
-2005-01-22 Havoc Pennington <hp@redhat.com>
-
- * doc/dbus-faq.xml, doc/dbus-tutorial: add a FAQ and update
- tutorial, based on work from David Wheeler.
-
-2005-01-21 Havoc Pennington <hp@redhat.com>
-
- * dbus/dbus-bus.c: add more return_if_fail checks
-
- * dbus/dbus-message.c (load_message): have the "no validation"
- mode (have to edit the code to toggle the mode for now though)
-
- * dbus/dbus-marshal-header.c (_dbus_header_load): have a mode that
- skips all validation; I want to use this at least for benchmark
- baseline, I'm not sure if it should be a publicly-available switch.
-
-2005-01-21 Havoc Pennington <hp@redhat.com>
-
- * glib/dbus-gmain.c: don't put the GLib bindings in the same
- toplevel doxygen group as the low-level API stuff
-
- * dbus/dbus.h: note that libdbus is the low-level API
-
-2005-01-20 Havoc Pennington <hp@redhat.com>
-
- * update-dbus-docs.sh: script to update docs on the web site, only
- works for me though. neener.
-
-2005-01-20 Havoc Pennington <hp@redhat.com>
-
- * dbus/dbus-sysdeps.c (_dbus_poll): amazingly, trying to compile
- code can reveal bugs in it
-
-2005-01-20 Havoc Pennington <hp@redhat.com>
-
- * dbus/dbus-sysdeps.c (_dbus_poll): fix several bugs in the
- select() version, patches from Tor Lillqvist
-
-2005-01-20 Havoc Pennington <hp@redhat.com>
-
- * doc/dbus-tutorial.xml: replace > with &gt;
-
- * bus/services.c (bus_registry_acquire_service): validate the name
- and return a better error if it's no good.
-
- * doc/dbus-specification.xml: note NO_AUTO_START change
-
- * dbus/dbus-protocol.h (DBUS_HEADER_FLAG_NO_AUTO_START): change
- from AUTO_START, we're toggling the default
-
- * bus/dispatch.c: adapt the tests to change of auto-start default
-
-2005-01-18 Havoc Pennington <hp@redhat.com>
-
- * rename dbus-daemon-1 to dbus-daemon throughout
-
-2005-01-18 Havoc Pennington <hp@redhat.com>
-
- * Throughout, grand renaming to strip out the use of "service",
- just say "name" instead (or "bus name" when ambiguous). Did not
- change the internal code of the message bus itself, only the
- programmer-facing API and messages.
-
- * doc/dbus-specification.xml: further update the message bus section
-
- * bus/config-parser.c (all_are_equiv): fix bug using freed string
- in error case
-
-2005-01-17 Havoc Pennington <hp@redhat.com>
-
- * dbus/dbus-types.h: remove 16-bit types since we don't use them
- ever
-
- * dbus/dbus-marshal-validate.c (_dbus_validate_path): disallow any
- "invalid name character" not only non-ASCII
-
- * doc/dbus-specification.xml: further update spec, message bus
- parts are still out-of-date but the marshaling etc. stuff is now
- accurate-ish
-
-2005-01-17 Havoc Pennington <hp@redhat.com>
-
- * doc/dbus-specification.xml: partially update spec
-
-2005-01-17 Havoc Pennington <hp@redhat.com>
-
- * Throughout, align variant bodies according to the contained
- type, rather than always to 8. Should save a fair bit of space in
- message headers.
-
- * dbus/dbus-marshal-validate.c (_dbus_validate_body_with_reason):
- fix handling of case where p == end
-
- * doc/TODO: remove the dbus_bool_t item and variant alignment items
-
-2005-01-17 Havoc Pennington <hp@redhat.com>
-
- * dbus/dbus-types.h: hardcode dbus_bool_t to 32 bits
-
- * Throughout: modify DBUS_TYPE_BOOLEAN to be a 32-bit type instead
- of an 8-bit type. Now dbus_bool_t is the type to use whenever you
- are marshaling/unmarshaling a boolean.
-
-2005-01-16 Havoc Pennington <hp@redhat.com>
-
- This is about it on what can be disabled/deleted from libdbus
- easily, back below 150K anyhow. Deeper cuts are more work than
- just turning the code off as I've done here.
-
- * dbus/dbus-marshal-basic.c (_dbus_pack_int32): we don't need the
- signed int convenience funcs
-
- * dbus/dbus-internals.c (_dbus_verbose_real): omit when not in
- verbose mode
-
- * dbus/dbus-string-util.c, dbus/dbus-string.c: more breaking
- things out of libdbus
-
- * dbus/dbus-sysdeps.c, dbus/dbus-sysdeps-util.c: same
-
- * dbus/dbus-hash.c: purge the TWO_STRINGS crap (well, make it
- tests-enabled-only, though it should probably be deleted)
-
- * dbus/dbus-message-util.c: same stuff
-
- * dbus/dbus-auth-util.c: same stuff
-
-2005-01-16 Havoc Pennington <hp@redhat.com>
-
- * dbus/dbus-userdb-util.c: split out part of dbus-userdb.c
-
- * dbus/dbus-sysdeps.c (_dbus_uid_from_string): move here to pave
- way for stripping down dbus-userdb.c stuff included in libdbus.
- Rename _dbus_parse_uid for consistency.
-
-2005-01-16 Havoc Pennington <hp@redhat.com>
-
- * dbus/dbus-internals.c (_dbus_real_assert): print the function
- name the assertion failed in
-
- * dbus/dbus-internals.h (_dbus_return_if_fail)
- (_dbus_return_val_if_fail): assert that the name of the function
- containing the check doesn't start with '_', since we only want to
- use checks on public functions
-
- * dbus/dbus-connection.c (_dbus_connection_ref_unlocked): change
- checks to assertions
-
- * dbus/dbus-marshal-header.c (_dbus_header_set_field_basic):
- change checks to asserts for private function
-
- * dbus/dbus-message.c (_dbus_message_set_serial): checks
- to asserts for private function
-
- * dbus/dbus-marshal-recursive.c (skip_one_complete_type): remove
- broken assertion that was breaking make check
- (_dbus_type_reader_array_is_empty): remove this rather than fix
- it, was only used in assertions
-
-2005-01-16 Havoc Pennington <hp@redhat.com>
-
- * test/unused-code-gc.py: hacky script to find code that's used
- only by the bus (not libdbus) or used only by tests or not used at
- all. It has some false alarms, but looks like we can clean up a
- lot of size from libdbus.
-
- * dbus/dbus-sysdeps.c, dbus/dbus-sysdeps-utils.c,
- dbus/Makefile.am: initially move 10K of binary size out of libdbus
-
-2005-01-16 Havoc Pennington <hp@redhat.com>
-
- * Add and fix docs according to Doxygen warnings throughout
- source.
-
- * dbus/dbus-marshal-recursive.c
- (_dbus_type_reader_array_is_empty): change this to just call
- array_reader_get_array_len() and make it static
-
- * dbus/dbus-message.c (dbus_message_iter_get_element_type): rename
- from get_array_type
- (dbus_message_iter_init_append): rename from append_iter_init
-
- * dbus/dbus-marshal-recursive.c
- (_dbus_type_reader_get_element_type): rename from
- _dbus_type_reader_get_array_type
-
-2005-01-15 Havoc Pennington <hp@redhat.com>
-
- * test/glib/test-profile.c (with_bus_server_filter): fix crash
-
- * dbus/dbus-marshal-basic.c (_dbus_unpack_uint32): inline as macro
- when DBUS_DISABLE_ASSERT
- (_dbus_marshal_set_basic): be sure we align for the string length
-
- * dbus/dbus-marshal-recursive.c (skip_one_complete_type): make
- this look faster
-
- * dbus/dbus-string.c (_dbus_string_get_const_data_len): add an
- inline macro version
- (_dbus_string_set_byte): provide inline macro version
-
-2005-01-15 Havoc Pennington <hp@redhat.com>
-
- * Land the new message args API and type system.
-
- This patch is huge, but the public API change is not
- really large. The set of D-BUS types has changed somewhat,
- and the arg "getters" are more geared toward language bindings;
- they don't make a copy, etc.
-
- There are also some known issues. See these emails for details
- on this huge patch:
- http://lists.freedesktop.org/archives/dbus/2004-December/001836.html
- http://lists.freedesktop.org/archives/dbus/2005-January/001922.html
-
- * dbus/dbus-marshal-*: all the new stuff
-
- * dbus/dbus-message.c: basically rewritten
-
- * dbus/dbus-memory.c (check_guards): with "guards" enabled, init
- freed blocks to be all non-nul bytes so using freed memory is less
- likely to work right
-
- * dbus/dbus-internals.c (_dbus_test_oom_handling): add
- DBUS_FAIL_MALLOC=N environment variable, so you can do
- DBUS_FAIL_MALLOC=0 to skip the out-of-memory checking, or
- DBUS_FAIL_MALLOC=10 to make it really, really, really slow and
- thorough.
-
- * qt/message.cpp: port to the new message args API
- (operator<<): use str.utf8() rather than str.unicode()
- (pretty sure this is right from the Qt docs?)
-
- * glib/dbus-gvalue.c: port to the new message args API
-
- * bus/dispatch.c, bus/driver.c: port to the new message args API
-
- * dbus/dbus-string.c (_dbus_string_init_const_len): initialize the
- "locked" flag to TRUE and align_offset to 0; I guess we never
- looked at these anyhow, but seems cleaner.
-
- * dbus/dbus-string.h (_DBUS_STRING_ALLOCATION_PADDING):
- move allocation padding macro to this header; use it to implement
- (_DBUS_STRING_STATIC): ability to declare a static string.
-
- * dbus/dbus-message.c (_dbus_message_has_type_interface_member):
- change to return TRUE if the interface is not set.
-
- * dbus/dbus-string.[hc]: move the D-BUS specific validation stuff
- to dbus-marshal-validate.[hc]
-
- * dbus/dbus-marshal-basic.c (_dbus_type_to_string): move here from
- dbus-internals.c
-
- * dbus/Makefile.am: cut over from dbus-marshal.[hc]
- to dbus-marshal-*.[hc]
-
- * dbus/dbus-object-tree.c (_dbus_decompose_path): move this
- function here from dbus-marshal.c
-
2005-01-12 Joe Shaw <joeshaw@novell.com>
* NEWS: Update for 0.23.
diff --git a/NEWS b/NEWS
index a6c25ea3..d54108c9 100644
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,11 @@
+D-BUS 0.23.1 (11 Feb 2005)
+===
+- fix a bug in which the bus daemon wouldn't recognize that a service
+ owner quit
+- fix a bug in the mono bindings that would cause unmanaged code to
+ call back into a delegate that had been garbage collected and
+ crashed.
+
D-BUS 0.23 (11 Jan 2005)
===
diff --git a/configure.in b/configure.in
index 87f214b1..ad646062 100644
--- a/configure.in
+++ b/configure.in
@@ -3,7 +3,7 @@ AC_PREREQ(2.52)
AC_INIT(dbus/dbus.h)
-AM_INIT_AUTOMAKE(dbus, 0.30)
+AM_INIT_AUTOMAKE(dbus, 0.23.1)
AM_CONFIG_HEADER(config.h)
@@ -369,53 +369,6 @@ AC_SUBST(DBUS_INT64_CONSTANT)
AC_SUBST(DBUS_UINT64_CONSTANT)
AC_SUBST(DBUS_HAVE_INT64)
-### see what 32-bit int is called
-AC_MSG_CHECKING([32-bit integer type])
-
-case 4 in
-$ac_cv_sizeof_short)
- dbusint32=int
- ;;
-$ac_cv_sizeof_int)
- dbusint32=int
- ;;
-$ac_cv_sizeof_long)
- dbusint32=long
- ;;
-esac
-
-if test -z "$dbusint32" ; then
- DBUS_INT32_TYPE="no_int32_type_detected"
- AC_MSG_ERROR([No 32-bit integer type found])
-else
- DBUS_INT32_TYPE="$dbusint32"
- AC_MSG_RESULT($DBUS_INT32_TYPE)
-fi
-
-AC_SUBST(DBUS_INT32_TYPE)
-
-### see what 16-bit int is called
-AC_MSG_CHECKING([16-bit integer type])
-
-case 2 in
-$ac_cv_sizeof_short)
- dbusint16=short
- ;;
-$ac_cv_sizeof_int)
- dbusint16=int
- ;;
-esac
-
-if test -z "$dbusint16" ; then
- DBUS_INT16_TYPE="no_int16_type_detected"
- AC_MSG_ERROR([No 16-bit integer type found])
-else
- DBUS_INT16_TYPE="$dbusint16"
- AC_MSG_RESULT($DBUS_INT16_TYPE)
-fi
-
-AC_SUBST(DBUS_INT16_TYPE)
-
## byte order
AC_C_BIGENDIAN
@@ -819,13 +772,6 @@ fi
AM_CONDITIONAL(HAVE_GLIB, test x$have_glib = xyes)
AM_CONDITIONAL(HAVE_GLIB_THREADS, test x$have_glib_threads = xyes)
-if test x$have_glib = xyes; then
- GLIB_GENMARSHAL=`$PKG_CONFIG --variable=glib_genmarshal glib-2.0`
-else
- GLIB_GENMARSHAL=glib-not-enabled-so-there-is-no-genmarshal
-fi
-AC_SUBST(GLIB_GENMARSHAL)
-
dnl GLib flags
AC_SUBST(DBUS_GLIB_CFLAGS)
AC_SUBST(DBUS_GLIB_LIBS)
@@ -1118,7 +1064,7 @@ AC_SUBST(TEST_$1)
TEST_PATH(SERVICE_DIR, data/valid-service-files)
TEST_PATH(SERVICE_BINARY, test-service)
-TEST_PATH(GLIB_SERVICE_BINARY, glib/test-service-glib)
+TEST_PATH(GLIB_SERVICE_BINARY, test-service-glib)
TEST_PATH(EXIT_BINARY, test-exit)
TEST_PATH(SEGFAULT_BINARY, test-segfault)
TEST_PATH(SLEEP_FOREVER_BINARY, test-sleep-forever)
@@ -1195,7 +1141,7 @@ bus/system.conf
bus/session.conf
bus/messagebus
bus/rc.messagebus
-bus/dbus-daemon.1
+bus/dbus-daemon-1.1
Makefile
dbus/Makefile
glib/Makefile
@@ -1223,7 +1169,6 @@ test/data/valid-config-files/debug-allow-all.conf
test/data/valid-config-files/debug-allow-all-sha1.conf
test/data/valid-service-files/debug-echo.service
test/data/valid-service-files/debug-segfault.service
-test/data/valid-service-files/debug-glib.service
])
### FIXME it's bizarre that have_qt and have_glib are used
@@ -1249,8 +1194,6 @@ echo "
cppflags: ${CPPFLAGS}
cxxflags: ${CXXFLAGS}
64-bit int: ${DBUS_INT64_TYPE}
- 32-bit int: ${DBUS_INT32_TYPE}
- 16-bit int: ${DBUS_INT16_TYPE}
Doxygen: ${DOXYGEN}
xmlto: ${XMLTO}"
diff --git a/dbus/dbus-connection.c b/dbus/dbus-connection.c
index dfc5d44b..80fdf1f6 100644
--- a/dbus/dbus-connection.c
+++ b/dbus/dbus-connection.c
@@ -38,6 +38,7 @@
#include "dbus-string.h"
#include "dbus-pending-call.h"
#include "dbus-object-tree.h"
+#include "dbus-marshal.h"
#if 0
#define CONNECTION_LOCK(connection) do { \
@@ -357,7 +358,7 @@ _dbus_connection_queue_received_message_link (DBusConnection *connection,
_dbus_connection_wakeup_mainloop (connection);
- _dbus_verbose ("Message %p (%d %s %s %s '%s' reply to %u) added to incoming queue %p, %d incoming\n",
+ _dbus_verbose ("Message %p (%d %s %s %s '%s') added to incoming queue %p, %d incoming\n",
message,
dbus_message_get_type (message),
dbus_message_get_path (message),
@@ -368,7 +369,6 @@ _dbus_connection_queue_received_message_link (DBusConnection *connection,
dbus_message_get_member (message) :
"no member",
dbus_message_get_signature (message),
- dbus_message_get_reply_serial (message),
connection,
connection->n_incoming);
}
@@ -1007,8 +1007,8 @@ _dbus_connection_new_for_transport (DBusTransport *transport)
DBusConnection *
_dbus_connection_ref_unlocked (DBusConnection *connection)
{
- _dbus_assert (connection != NULL);
- _dbus_assert (connection->generation == _dbus_current_generation);
+ _dbus_return_val_if_fail (connection != NULL, NULL);
+ _dbus_return_val_if_fail (connection->generation == _dbus_current_generation, NULL);
#ifdef DBUS_HAVE_ATOMIC_INT
_dbus_atomic_inc (&connection->refcount);
@@ -1445,7 +1445,7 @@ _dbus_connection_preallocate_send_unlocked (DBusConnection *connection)
{
DBusPreallocatedSend *preallocated;
- _dbus_assert (connection != NULL);
+ _dbus_return_val_if_fail (connection != NULL, NULL);
preallocated = dbus_new (DBusPreallocatedSend, 1);
if (preallocated == NULL)
@@ -1540,12 +1540,11 @@ dbus_connection_free_preallocated_send (DBusConnection *connection,
dbus_free (preallocated);
}
-/* Called with lock held, does not update dispatch status */
static void
-_dbus_connection_send_preallocated_unlocked_no_update (DBusConnection *connection,
- DBusPreallocatedSend *preallocated,
- DBusMessage *message,
- dbus_uint32_t *client_serial)
+_dbus_connection_send_preallocated_unlocked (DBusConnection *connection,
+ DBusPreallocatedSend *preallocated,
+ DBusMessage *message,
+ dbus_uint32_t *client_serial)
{
dbus_uint32_t serial;
const char *sig;
@@ -1565,8 +1564,17 @@ _dbus_connection_send_preallocated_unlocked_no_update (DBusConnection *con
connection->n_outgoing += 1;
sig = dbus_message_get_signature (message);
+#ifndef DBUS_DISABLE_ASSERT
+ {
+ DBusString foo;
+ _dbus_verbose (" validating signature '%s'\n", sig);
+ _dbus_string_init_const (&foo, sig);
+ _dbus_assert (_dbus_string_validate_signature (&foo, 0,
+ _dbus_string_get_length (&foo)));
+ }
+#endif
- _dbus_verbose ("Message %p (%d %s %s %s '%s') for %s added to outgoing queue %p, %d pending to send\n",
+ _dbus_verbose ("Message %p (%d %s %s %s '%s') added to outgoing queue %p, %d pending to send\n",
message,
dbus_message_get_type (message),
dbus_message_get_path (message),
@@ -1577,9 +1585,6 @@ _dbus_connection_send_preallocated_unlocked_no_update (DBusConnection *con
dbus_message_get_member (message) :
"no member",
sig,
- dbus_message_get_destination (message) ?
- dbus_message_get_destination (message) :
- "null",
connection,
connection->n_outgoing);
@@ -1595,9 +1600,6 @@ _dbus_connection_send_preallocated_unlocked_no_update (DBusConnection *con
if (client_serial)
*client_serial = dbus_message_get_serial (message);
}
-
- _dbus_verbose ("Message %p serial is %u\n",
- message, dbus_message_get_serial (message));
_dbus_message_lock (message);
@@ -1621,9 +1623,9 @@ _dbus_connection_send_preallocated_and_unlock (DBusConnection *connection,
{
DBusDispatchStatus status;
- _dbus_connection_send_preallocated_unlocked_no_update (connection,
- preallocated,
- message, client_serial);
+ _dbus_connection_send_preallocated_unlocked (connection,
+ preallocated,
+ message, client_serial);
status = _dbus_connection_get_dispatch_status_unlocked (connection);
@@ -1667,9 +1669,9 @@ dbus_connection_send_preallocated (DBusConnection *connection,
}
static dbus_bool_t
-_dbus_connection_send_unlocked_no_update (DBusConnection *connection,
- DBusMessage *message,
- dbus_uint32_t *client_serial)
+_dbus_connection_send_unlocked (DBusConnection *connection,
+ DBusMessage *message,
+ dbus_uint32_t *client_serial)
{
DBusPreallocatedSend *preallocated;
@@ -1680,14 +1682,15 @@ _dbus_connection_send_unlocked_no_update (DBusConnection *connection,
if (preallocated == NULL)
return FALSE;
- _dbus_connection_send_preallocated_unlocked_no_update (connection,
- preallocated,
- message,
- client_serial);
+
+ _dbus_connection_send_preallocated_unlocked (connection,
+ preallocated,
+ message,
+ client_serial);
return TRUE;
}
-dbus_bool_t
+static dbus_bool_t
_dbus_connection_send_and_unlock (DBusConnection *connection,
DBusMessage *message,
dbus_uint32_t *client_serial)
@@ -1867,7 +1870,7 @@ dbus_connection_send_with_reply (DBusConnection *connection,
pending))
goto error;
- if (!_dbus_connection_send_unlocked_no_update (connection, message, NULL))
+ if (!_dbus_connection_send_unlocked (connection, message, NULL))
{
_dbus_connection_detach_pending_call_and_unlock (connection,
pending);
@@ -1944,9 +1947,9 @@ _dbus_connection_block_for_reply (DBusConnection *connection,
long tv_sec, tv_usec;
DBusDispatchStatus status;
- _dbus_assert (connection != NULL);
- _dbus_assert (client_serial != 0);
- _dbus_assert (timeout_milliseconds >= 0 || timeout_milliseconds == -1);
+ _dbus_return_val_if_fail (connection != NULL, NULL);
+ _dbus_return_val_if_fail (client_serial != 0, NULL);
+ _dbus_return_val_if_fail (timeout_milliseconds >= 0 || timeout_milliseconds == -1, FALSE);
if (timeout_milliseconds == -1)
timeout_milliseconds = _DBUS_DEFAULT_TIMEOUT_VALUE;
@@ -2788,9 +2791,8 @@ dbus_connection_dispatch (DBusConnection *connection)
}
if (!_dbus_string_append_printf (&str,
- "Method \"%s\" with signature \"%s\" on interface \"%s\" doesn't exist\n",
+ "Method \"%s\" on interface \"%s\" doesn't exist\n",
dbus_message_get_member (message),
- dbus_message_get_signature (message),
dbus_message_get_interface (message)))
{
_dbus_string_free (&str);
@@ -2821,8 +2823,8 @@ dbus_connection_dispatch (DBusConnection *connection)
goto out;
}
- _dbus_connection_send_preallocated_unlocked_no_update (connection, preallocated,
- reply, NULL);
+ _dbus_connection_send_preallocated_unlocked (connection, preallocated,
+ reply, NULL);
dbus_message_unref (reply);
diff --git a/mono/Service.cs b/mono/Service.cs
index b5547961..55091cd8 100644
--- a/mono/Service.cs
+++ b/mono/Service.cs
@@ -41,7 +41,7 @@ namespace DBus
// This isn't used for now
uint flags = 0;
- if (dbus_bus_request_name (connection.RawConnection, name, flags, ref error) == -1) {
+ if (dbus_bus_acquire_service(connection.RawConnection, name, flags, ref error) == -1) {
throw new DBusException(error);
}
@@ -56,12 +56,12 @@ namespace DBus
RemoveFilter ();
}
- public static bool HasOwner(Connection connection, string name)
+ public static bool Exists(Connection connection, string name)
{
Error error = new Error();
error.Init();
- if (dbus_bus_name_has_owner(connection.RawConnection,
+ if (dbus_bus_service_exists(connection.RawConnection,
name,
ref error)) {
return true;
@@ -75,10 +75,10 @@ namespace DBus
public static Service Get(Connection connection, string name)
{
- if (HasOwner(connection, name)) {
+ if (Exists(connection, name)) {
return new Service(name, connection);
} else {
- throw new ApplicationException("Name '" + name + "' does not exist.");
+ throw new ApplicationException("Service '" + name + "' does not exist.");
}
}
@@ -125,11 +125,11 @@ namespace DBus
dbus_bus_add_match(connection.RawConnection, MatchRule, IntPtr.Zero);
}
- private void RemoveFilter()
+ private void RemoveFilter()
{
dbus_connection_remove_filter (Connection.RawConnection,
- this.filterCalled,
- IntPtr.Zero);
+ this.filterCalled,
+ IntPtr.Zero);
this.filterCalled = null;
dbus_bus_remove_match (connection.RawConnection, MatchRule, IntPtr.Zero);
@@ -201,12 +201,12 @@ namespace DBus
}
[DllImport("dbus-1")]
- private extern static int dbus_bus_request_name(IntPtr rawConnection,
- string serviceName,
- uint flags, ref Error error);
+ private extern static int dbus_bus_acquire_service(IntPtr rawConnection,
+ string serviceName,
+ uint flags, ref Error error);
[DllImport("dbus-1")]
- private extern static bool dbus_bus_name_has_owner(IntPtr rawConnection,
+ private extern static bool dbus_bus_service_exists(IntPtr rawConnection,
string serviceName,
ref Error error);