History log of /external/dbus/dbus/dbus-message.h
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
acbc751e28446696fee92c236cfef176786409d5 04-Mar-2010 Ralf Habacker <ralf.habacker@freenet.de> Decorated public exported functions with DBUS_EXPORT macro, reviewed by Colin Walters.
/external/dbus/dbus/dbus-message.h
37019e9d271390fa8c62c1aae62d30bb9068adaa 16-Jul-2009 Thiago Macieira <thiago@kde.org> Merge branch 'fd-passing'

Conflicts:
dbus/dbus-connection.c
dbus/dbus-message-util.c
dbus/dbus-sysdeps-unix.c
5baf2f856a9c6625993234855b07680da1c8916f 11-Jul-2009 Tobias Mueller <fdo-bugs@cryptobitch.de> Bug 21161 - Update the FSF address

No comment.

Signed-off-by: Colin Walters <walters@verbum.org>
/external/dbus/dbus/dbus-message.h
e57a368c440aec39caf6c3b491cf76ef615dc2e8 09-Jul-2009 Scott James Remnant <scott@ubuntu.com> bfo22316 - add dbus_message_iter_abandon_container()

It's not currently possible to abandon creation of a container without
either hitting asserts or leaking memory. This new function allows
that.

Signed-off-by: Scott James Remnant <scott@ubuntu.com>
/external/dbus/dbus/dbus-message.h
89f70b19495e9c3dadbbb7b51ce1629fa22ea3af 21-May-2009 Lennart Poettering <lennart@poettering.net> bus: don't forward messages with unix fds on connections that don't support it

This simply verifies that we forward unix fds only on connection that
support it. We willr eturn an error if a client attempts to send a
message with unix fds to another client that cannot do it.
/external/dbus/dbus/dbus-message.h
16a947eedb7f7f2951fff4ebbf301af7776aa8df 21-Apr-2009 William Lachance <wrlach@gmail.com> Bug 19567 - Make marshaling code usable without DBusConnection

Some projects want to reuse the DBus message format, without
actually going through a DBusConnection. This set of changes
makes a few functions from DBusMessage public, and adds a new
function to determine the number of bytes needed to demarshal
a message.

Signed-off-by: Colin Walters <walters@verbum.org>
/external/dbus/dbus/dbus-message.h
d012387afef0ba02185ebe27bc6bb15551912e92 14-Jul-2007 Havoc Pennington <hp@redhat.com> 2007-07-13 Havoc Pennington <hp@redhat.com>

* Add indent-tabs-mode: nil to all file headers.
/external/dbus/dbus/dbus-message.h
fb93e1faa875d6b1ca48b0e792a9b79aa7cbc517 17-Jun-2007 Ralf Habacker <ralf.habacker@freenet.de> * dbus/dbus-macros.h, dbus/dbus-message.c, dbus/dbus-message.h: renamed DBUS_GNUC_DEPRECATED to DBUS_DEPRECATED and extended to msvc compiler
/external/dbus/dbus/dbus-message.h
c4a5da3e597e5ff782b52e48bc8ed2996ea90fa0 06-Apr-2007 Simon McVittie <simon.mcvittie@collabora.co.uk> dbus/dbus-message-util.c, dbus/dbus-message.c, dbus/dbus-message.h:
Add API to convert a DBusMessage to/from a byte array.
Patch from Dafydd Harries <dafydd.harries@collabora.co.uk>, approved by
Havoc Pennington.
/external/dbus/dbus/dbus-message.h
fed8880c6f718b9f06e589d1769494a47b395c0d 21-Oct-2006 Havoc Pennington <hp@redhat.com> 2006-10-21 Havoc Pennington <hp@redhat.com>

* Document a bunch of undocumented stuff
/external/dbus/dbus/dbus-message.h
e19ebac55d671ecd92877af182300311afa7641a 21-Oct-2006 Havoc Pennington <hp@redhat.com> 2006-10-21 Havoc Pennington <hp@redhat.com>

* Clean up Doxygen group markers for public API so Doxygen finds
everything (not comprehensively fixed for private API).
Means all remaining Doxygen warnings are just about missing docs
and thus pretty simple to resolve.
/external/dbus/dbus/dbus-message.h
716059087dcf7caeb12313520eee8fc4b554ef54 21-Oct-2006 Havoc Pennington <hp@redhat.com> 2006-10-21 Havoc Pennington <hp@redhat.com>

* dbus/dbus-macros.h: add DBUS_GNUC_DEPRECATED macro

* dbus/dbus-message.h: mark dbus_message_iter_get_array_len()
as DBUS_GNUC_DEPRECATED
/external/dbus/dbus/dbus-message.h
afa4ffbd852686633086569cd34942917c5c49af 21-Oct-2006 Havoc Pennington <hp@redhat.com> 2006-10-21 Havoc Pennington <hp@redhat.com>

* dbus/dbus-message.h: put #ifndef DBUS_DISABLE_DEPRECATED around
dbus_message_iter_get_array_len().

* throughout: documentation improvements.
/external/dbus/dbus/dbus-message.h
a93f9c04acedc37277ef60dc7225464b8b62f0ee 15-Jun-2005 John (J5) Palmieri <johnp@redhat.com> * dbus/dbus-message.c:
(dbus_message_has_path): New method
(dbus_message_has_interface): New method
(dbus_message_has_member): New method

* dbus/dbus/dbus-sysdeps.c (_dbus_check_dir_is_private_to_user):
New method

* dbus/dbus-keyring.c (_dbus_keyring_reload): Check to see that
the keyring directory is private to the user

* doc/TODO:
- The convenience functions in dbus-bus.h should perhaps have
the signatures that they would have if they were autogenerated
stubs. e.g. the acquire service function. We should also evaluate
which of these functions to include, in light of the fact that
GLib/Qt native stubs will probably also exist.: Punted

- add dbus_message_has_path(), maybe has_member/interface:
fixed in this patch

- in dbus-keyring.c, enforce that the keyring dir is not
world readable/writable: Fixed in this patch
/external/dbus/dbus/dbus-message.h
61411a061c09def43687153e6c734ff27b7fd556 11-May-2005 Colin Walters <walters@verbum.org> 2005-05-11 Colin Walters <walters@verbum.org>

* dbus/dbus-signature.c (dbus_signature_iter_get_signature):
New function, returns signature string for signature iter.
* dbus/dbus-signature.h: Prototype it.
* dbus/dbus-message.c (dbus_message_iter_get_signature):
New function, returns signature string for message iter.
(dbus_message_iter_get_array_len): New function, returns
length of array.
(dbus_message_iter_get_fixed_array): Fix assertion; this
function should be used when the iter is pointing to the
contents of an array
* dbus/dbus-message.h: Prototypes.
* dbus/dbus-marshal-recursive.c (_dbus_type_reader_get_array_length):
New function; returns length of an array.
* dbus/dbus-marshal-recursive.h: Prototype it.
/external/dbus/dbus/dbus-message.h
8873c90f99303f9cc308f15f8d03e637911f5b9e 18-Jan-2005 Havoc Pennington <hp@redhat.com> 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
/external/dbus/dbus/dbus-message.h
31988af4089f3793940417535f8eabaae1ac26c8 16-Jan-2005 Havoc Pennington <hp@redhat.com> 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
/external/dbus/dbus/dbus-message.h
9c3d566e95c9080f6040c64531b0ccae22bd5d74 15-Jan-2005 Havoc Pennington <hp@redhat.com> 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
/external/dbus/dbus/dbus-message.h
935a41a04c3f638134fa905503fc41ddbd18902f 09-Nov-2004 Colin Walters <walters@verbum.org> 2004-11-09 Colin Walters <walters@verbum.org>

* dbus/dbus-string.c (_dbus_string_get_length): New
function, writes DBusString to C buffer.

* dbus/dbus-string.h: Prototype it.

* dbus/dbus-message.c (dbus_message_type_to_string): New
function, converts message type into C string.

* dbus/dbus-message.h: Prototype it.

* bus/selinux.c (bus_selinux_check): Take source pid,
target pid, and audit data. Pass audit data to
avc_has_perm.
(log_audit_callback): New function, appends extra
audit information.
(bus_selinux_allows_acquire_service): Also take
service name, add it to audit data.
(bus_selinux_allows_send): Also take message
type, interface, method member, error name,
and destination, and add them to audit data.
(log_cb): Initialize func_audit.

* bus/selinux.h (bus_selinux_allows_acquire_service)
(bus_selinux_allows_send): Update prototypes

* bus/services.c (bus_registry_acquire_service): Pass
service name to bus_selinux_allows_acquire_service.

* bus/bus.c (bus_context_check_security_policy): Pass
additional audit data. Move assignment of dest
to its own line.
/external/dbus/dbus/dbus-message.h
a9ff341aa66588c12275529ee2d16843b493cb4f 09-Sep-2004 Olivier Andrieu <oliv__a@users.sourceforge.net> remove the ; after DBUS_(BEGIN|END)_DECLS (bug #974)
/external/dbus/dbus/dbus-message.h
43605a6f4e78a8c28afb4b1e924dff0301e0e95c 10-Aug-2004 Havoc Pennington <hp@redhat.com> 2004-08-09 Havoc Pennington <hp@redhat.com>

* COPYING: switch to Academic Free License version 2.1 instead of
2.0, to resolve complaints about patent termination clause.
/external/dbus/dbus/dbus-message.h
004b37eca4ed9a33269d4850525a0e1c2f5deaff 29-Mar-2004 Michael Meeks <michael@ximian.com> 2004-03-29 Michael Meeks <michael@ximian.com>

* dbus/dbus-message.c
(dbus_message_new_error_printf): impl.

* dbus/dbus-connection.c
(dbus_connection_unregister_object_path): fix warning.

* configure.in: fix no-mono-installed situation.
/external/dbus/dbus/dbus-message.h
632d54e0dbf5e405258be7afffbaa48942c06cbc 23-Mar-2004 Owen Fraser-Green <owen@discobabe.net> Added InterfaceProxy to Mono bindings to avoid having to generate a proxy for every registered object. Also added object_path functions to dbus-message.
/external/dbus/dbus/dbus-message.h
eacb2afdc2903874f5dfde80b4ee338ea333c75e 21-Mar-2004 Olivier Andrieu <oliv__a@users.sourceforge.net> * dbus/dbus-marshal.c (_dbus_marshal_validate_arg): accept empty
arrays

* dbus/dbus-message.h, bus/dbus-message.c (dbus_message_iter_init)
(dbus_message_iter_init_array_iterator)
(dbus_message_iter_init_dict_iterator): return a dbus_bool_t to
indicate whether the iterator is empty

* dbus/dbus-pending-call.c, dbus/dbus-server.c: silence compiler
warnings
/external/dbus/dbus/dbus-message.h
93f433a17a0aabff91a0384bf9c4f99c9cf30ae1 16-Mar-2004 Richard Hult <richard@imendio.com> 2004-03-16 Richard Hult <richard@imendio.com>

* bus/activation.c: (bus_activation_service_created),
(bus_activation_send_pending_auto_activation_messages),
(bus_activation_activate_service):
* bus/activation.h:
* bus/dispatch.c: (bus_dispatch),
(check_nonexistent_service_auto_activation),
(check_service_auto_activated),
(check_segfault_service_auto_activation),
(check_existent_service_auto_activation), (bus_dispatch_test):
* bus/driver.c: (bus_driver_handle_activate_service):
* bus/services.c: (bus_registry_acquire_service):
* dbus/dbus-message.c: (dbus_message_set_auto_activation),
(dbus_message_get_auto_activation):
* dbus/dbus-message.h:
* dbus/dbus-protocol.h: Implement auto-activation.
/external/dbus/dbus/dbus-message.h
a1df3040f29223eddaa3ace0fe018fcb28cddcd9 02-Dec-2003 Richard Hult <richard@imendio.com> 2003-12-02 Richard Hult <richard@imendio.com>

* Update AFL version to 2.0 throughout the source files to reflect
the update that was done a while ago.
/external/dbus/dbus/dbus-message.h
9f1a60dbba69844c0a04b3dd86280352736187ce 27-Nov-2003 Mikael Hallendal <micke@imendio.com> 2003-11-26 Mikael Hallendal <micke@imendio.com>

* bus/*.[ch]:
* dbus/*.[ch]:
* glib/*.[ch]: Made ref functions return the pointer
/external/dbus/dbus/dbus-message.h
75742242000e782719bc1656f0a7da72b059e88e 21-Oct-2003 Havoc Pennington <hp@redhat.com> 2003-10-20 Havoc Pennington <hp@redhat.com>

hmm, make check is currently not passing.

* doc/dbus-specification.xml: add requirement that custom type
names follow the same rules as interface names.

* dbus/dbus-protocol.h: change some of the byte codes, to avoid
duplication and allow 'c' to be 'custom'; dict is now 'm' for
'map'

* doc/dbus-specification.xml: update type codes to match
dbus-protocol.h, using the ASCII byte values. Rename type NAMED to
CUSTOM. Add type OBJECT_PATH to the spec.

2003-10-17 Havoc Pennington <hp@redhat.com>

* bus/driver.c (create_unique_client_name): use "." as separator
in base service names instead of '-'

* dbus/dbus-string.c (_dbus_string_get_byte): allow getting nul
byte at the end of the string

* dbus/dbus-internals.h (_DBUS_LIKELY, _DBUS_UNLIKELY): add
optimization macros since string validation seems to be a slow
point.

* doc/dbus-specification.xml: restrict valid
service/interface/member/error names. Add test suite code for the
name validation.

* dbus/dbus-string.c: limit service/interface/member/error names
to [0-9][A-Z][a-z]_

* dbus/dbus-connection.c (dbus_connection_dispatch): add missing
format arg to verbose spew

* glib/dbus-gproxy.c (dbus_gproxy_call_no_reply): if not out of
memory, return instead of g_error

* test/test-service.c (path_message_func): support emitting a
signal on request

* dbus/dbus-bus.c (init_connections_unlocked): only fill in
activation bus type if DBUS_BUS_ACTIVATION was set; default to
assuming the activation bus was the session bus so that services
started manually will still register.
(init_connections_unlocked): fix so that in OOM situation we get
the same semantics when retrying the function

* test/test-service.c (main): change to use path registration, to
test those codepaths; register with DBUS_BUS_ACTIVATION rather
than DBUS_BUS_SESSION
/external/dbus/dbus/dbus-message.h
d6e1b2adb3d8e51ce1bb47295cef12d9fe1a15a8 16-Oct-2003 Havoc Pennington <hp@redhat.com> 2003-10-16 Havoc Pennington <hp@redhat.com>

* bus/connection.c (bus_pending_reply_expired): either cancel or
execute, not both
(bus_connections_check_reply): use unlink, not remove_link, as we
don't want to free the link; fixes double free mess

* dbus/dbus-pending-call.c (dbus_pending_call_block): fix in case
where no reply was received

* dbus/dbus-connection.c (_dbus_pending_call_complete_and_unlock):
fix a refcount leak

* bus/signals.c (match_rule_matches): add special cases for the
bus driver, so you can match on sender/destination for it.

* dbus/dbus-sysdeps.c (_dbus_abort): print backtrace if
DBUS_PRINT_BACKTRACE is set

* dbus/dbus-internals.c: add pid to assertion failure messages

* dbus/dbus-connection.c: add message type code to the debug spew

* glib/dbus-gproxy.c (gproxy_get_match_rule): match rules want
sender=foo not service=foo

* dbus/dbus-bus.c (dbus_bus_get): if the activation bus is the
session bus but DBUS_SESSION_BUS_ADDRESS isn't set, use
DBUS_ACTIVATION_ADDRESS instead

* bus/activation.c: set DBUS_SESSION_BUS_ADDRESS,
DBUS_SYSTEM_BUS_ADDRESS if appropriate

* bus/bus.c (bus_context_new): handle OOM copying bus type into
context struct

* dbus/dbus-message.c (dbus_message_iter_get_object_path): new function
(dbus_message_iter_get_object_path_array): new function (half
finished, disabled for the moment)

* glib/dbus-gproxy.c (dbus_gproxy_end_call): properly handle
DBUS_MESSAGE_TYPE_ERROR

* tools/dbus-launch.c (babysit): support DBUS_DEBUG_OUTPUT to
avoid redirecting stderr to /dev/null
(babysit): close stdin if not doing the "exit_with_session" thing

* dbus/dbus-sysdeps.c (_dbus_become_daemon): delete some leftover
debug code; change DBUS_DEBUG_OUTPUT to only enable stderr, not
stdout/stdin, so things don't get confused

* bus/system.conf.in: fix to allow replies, I modified .conf
instead of .conf.in again.
/external/dbus/dbus/dbus-message.h
56cc4ae1a241d36b64dbe26de89714f7771f6e78 12-Oct-2003 Havoc Pennington <hp@redhat.com> 2003-10-11 Havoc Pennington <hp@pobox.com>

* test/decode-gcov.c (function_solve_graph): make broken block
graph a nonfatal error since it seems to be broken. Need to debug
this.

* dbus/dbus-marshal.c (_dbus_type_is_valid): new function since we
can't just check type > INVALID < LAST anymore

* dbus/dbus-message.c (dbus_message_get_signature): new function
(dbus_message_has_signature): new function
(struct DBusMessage): add signature field (right now it isn't sent
over the wire, just generated on the fly)
(dbus_message_copy): copy the signature, and init strings to
proper length to avoid some reallocs
(dbus_message_iter_init_array_iterator): return void, since it
can't fail
(dbus_message_iter_init_dict_iterator): return void since it can't fail
(_dbus_message_loader_queue_messages): add silly temporary hack to
fill in message->signature on load

* dbus/dbus-protocol.h: change DBUS_TYPE_* values to be ASCII
characters, so they are relatively human-readable.
/external/dbus/dbus/dbus-message.h
6a65f4802e95ba442c520f8e225da837e0a9f73b 10-Oct-2003 Havoc Pennington <hp@redhat.com> 2003-10-09 Havoc Pennington <hp@redhat.com>

Make matching rules theoretically work (add parser).

* bus/bus.c (bus_context_check_security_policy): fix up to handle
the case where destination is explicitly specified as bus driver
and someone else is eavesdropping.

* bus/policy.c (bus_client_policy_check_can_receive): fix up
definition of eavesdropping and assertion

* tools/dbus-send.c (main): use dbus_message_type_from_string

* bus/signals.c (bus_match_rule_parse): implement

* dbus/dbus-message.c (dbus_message_type_from_string): new

* dbus/dbus-errors.h (DBUS_ERROR_MATCH_RULE_INVALID): add
/external/dbus/dbus/dbus-message.h
85ab0327d82e4945ad16630e583d8cc68df25a90 08-Sep-2003 Havoc Pennington <hp@redhat.com> 2003-09-07 Havoc Pennington <hp@pobox.com>

* Make Doxygen contented.
/external/dbus/dbus/dbus-message.h
5fd1e389e1c1c12ad4a55c2af6abdc8e7a2f6d41 31-Aug-2003 Havoc Pennington <hp@redhat.com> 2003-08-30 Havoc Pennington <hp@pobox.com>

* test/data/valid-config-files/system.d/test.conf: change to
root for the user so warnings don't get printed

* dbus/dbus-message.c: add dbus_message_get_path,
dbus_message_set_path

* dbus/dbus-object-tree.c (do_test_dispatch): add test of
dispatching to a path

* dbus/dbus-string.c (_dbus_string_validate_path): add

* dbus/dbus-marshal.c (_dbus_demarshal_object_path): implement
(_dbus_marshal_object_path): implement

* dbus/dbus-protocol.h (DBUS_HEADER_FIELD_PATH): new header field
to contain the path to the target object
(DBUS_HEADER_FIELD_SENDER_SERVICE): rename
DBUS_HEADER_FIELD_SENDER to explicitly say it's the sender service
/external/dbus/dbus/dbus-message.h
68a3c593b9e77b33614726363c7b6fd85d113021 19-Aug-2003 Havoc Pennington <hp@redhat.com> 2003-08-18 Havoc Pennington <hp@redhat.com>

* dbus/dbus-hash.c (_dbus_hash_table_insert_two_strings): fix

* dbus/dbus-message.c (_dbus_message_loader_queue_messages): fix
dumb bug created earlier (wrong order of args to
decode_header_data())

* tools/dbus-send.c: port

* tools/dbus-print-message.c (print_message): port

* test/data/*messages: port all messages over

* dbus/dbus-message-builder.c: support including
message type

* bus/driver.c: port over

* bus/dispatch.c: port over to new stuff

* dbus/dbus-connection.c (_dbus_connection_new_for_transport):
rename disconnect signal to "Disconnected"
/external/dbus/dbus/dbus-message.h
95717a938b237d12211935f6a7467ef610288fe5 18-Aug-2003 Havoc Pennington <hp@redhat.com> 2003-08-17 Havoc Pennington <hp@pobox.com>

This doesn't compile yet, but syncing up so I can hack on it from
work. What are branches for if not broken code? ;-)

* dbus/dbus-protocol.h: remove DBUS_HEADER_FIELD_NAME, add
DBUS_HEADER_FIELD_INTERFACE, DBUS_HEADER_FIELD_MEMBER,
DBUS_HEADER_FIELD_ERROR_NAME

* dbus/dbus-hash.c: Introduce DBUS_HASH_TWO_STRINGS as hack to use
for the interface+member pairs
(string_hash): change to use g_str_hash algorithm
(find_direct_function, find_string_function): refactor these to
share most code.

* dbus/dbus-message.c: port all of this over to support
interface/member fields instead of name field

* dbus/dbus-object-registry.c: port over

* dbus/dbus-string.c (_dbus_string_validate_interface): rename
from _dbus_string_validate_name

* bus/dbus-daemon-1.1: change file format for the
<deny>/<allow> stuff to match new message naming scheme

* bus/policy.c: port over

* bus/config-parser.c: parse new format
/external/dbus/dbus/dbus-message.h
b29ea9115ea3277354b7ccbe442026279220f4ac 11-Aug-2003 Havoc Pennington <hp@redhat.com> 2003-08-10 Havoc Pennington <hp@pobox.com>

* tools/dbus-send.c (main): add --type argument, for now
supporting only method_call and signal types.

* tools/dbus-print-message.c: print message type

* dbus/dbus-connection.c (_dbus_connection_new_for_transport):
init connection->objects

* doc/dbus-specification.sgml: fix sgml

* bus/*.c: port over to object-instance API changes

* test/test-service.c: ditto

* dbus/dbus-message.c (dbus_message_create_header): allow #NULL
name, we will have to fix up the rest of the code to also handle
this
(dbus_message_new): generic message-creation call
(set_string_field): allow appending name field
/external/dbus/dbus/dbus-message.h
ff8908f1e98eda82b0a77abb449ecff36abf14aa 02-Aug-2003 Havoc Pennington <hp@redhat.com> 2003-08-02 Havoc Pennington <hp@pobox.com>

* dbus/dbus-message.c (dbus_message_get_no_reply)
(dbus_message_set_no_reply): add these and remove
set_is_error/get_is_error

* dbus/dbus-protocol.h, doc/dbus-specification.sgml:
remove the ERROR flag, since there's now an ERROR type
/external/dbus/dbus/dbus-message.h
9c5d01f0fe1ba855c0f7518c4f27d75a609b8faa 02-Aug-2003 Havoc Pennington <hp@redhat.com> 2003-08-01 Havoc Pennington <hp@pobox.com>

* dbus/dbus-object-registry.c (_dbus_object_registry_handle_and_unlock):
implement

* dbus/dbus-message.c (dbus_message_get_type): new function

* doc/dbus-specification.sgml: add "type" byte to messages
/external/dbus/dbus/dbus-message.h
824d4a5edfe1fa7222ab5cb49928bf78a675b563 09-Jul-2003 Havoc Pennington <hp@redhat.com> 2003-07-08 Havoc Pennington <hp@pobox.com>

* dbus/dbus-object.c: implement some of this

* dbus/dbus-object-registry.c
(_dbus_object_registry_add_and_unlock): fill in the object_id out
param
(_dbus_object_registry_new): handle OOM
/external/dbus/dbus/dbus-message.h
958805418359aca169cd363a4a3279f0fdab753c 22-Jun-2003 Havoc Pennington <hp@redhat.com> 2003-06-22 Havoc Pennington <hp@pobox.com>

* mono/Message.cs: implement Message.Wrap() that ensures we only
have a single C# wrapper per DBusMessage, assuming it works which
it probably doesn't.

* dbus/dbus-message.c (dbus_message_allocate_data_slot): new
(dbus_message_free_data_slot): new
(dbus_message_set_data): new
(dbus_message_get_data): new
/external/dbus/dbus/dbus-message.h
e8bf15b23a2a9c5b19ef25fb553006a41379bf7c 24-Apr-2003 Havoc Pennington <hp@redhat.com> 2003-04-24 Havoc Pennington <hp@redhat.com>

* dbus/dbus-message.c (dbus_message_name_is): rename
(dbus_message_service_is): rename
(dbus_message_sender_is): rename
(dbus_message_get_service): rename
/external/dbus/dbus/dbus-message.h
b29d0c534a631b211f1f94168e7672c604c8f815 23-Apr-2003 Havoc Pennington <hp@redhat.com> 2003-04-22 Havoc Pennington <hp@redhat.com>

* dbus/dbus-message.c, dbus/dbus-marshal.c: add 64-bit integer
support, and do some code cleanups to share more code and
speed up array marshal/demarshal.

* dbus-1.0.pc.in (Cflags): put libdir include file in cflags

* configure.in: generate dbus-arch-deps.h

* dbus/dbus-protocol.h (DBUS_TYPE_INT64, DBUS_TYPE_UINT64): add
64-bit typecodes
/external/dbus/dbus/dbus-message.h
dac0a1f8933889fd94fed7fecdcc4ec6fb3a3fb0 17-Apr-2003 Havoc Pennington <hp@redhat.com> 2003-04-16 Havoc Pennington <hp@pobox.com>

* doc/dbus-specification.sgml: make spec say serials are unsigned

* dbus/dbus-message.h: change message serials to unsigned

* dbus/dbus-connection.c: adapt to message serials being unsigned
/external/dbus/dbus/dbus-message.h
e11e4ca82b1e4efb71a18c9c8bf191f902082174 10-Apr-2003 Alexander Larsson <alexl@redhat.com> 2003-04-10 Alexander Larsson <alexl@redhat.com>

* bus/.cvsignore:
* glib/.cvsignore:
* test/.cvsignore:
Added files to cvsignore

* dbus/dbus-message.h:
* dbus/dbus-message.c: (dbus_message_iter_get_named):
Make get_named() take two out argument and return a boolean.
(dbus_message_iter_get_args_valist):
Update usage of get_named().
(dbus_message_iter_append_byte):
Fix typo
(dbus_message_iter_append_named)
Fix typo
(message_iter_test), (check_message_handling_type), (_dbus_message_test):
More tests.
/external/dbus/dbus/dbus-message.h
e84c3a03b3be9cfc351ca8e0b9b935cca455e672 10-Apr-2003 Alexander Larsson <alexl@redhat.com> 2003-04-10 Alexander Larsson <alexl@redhat.com>

* dbus/dbus-marshal.[ch]:
Add array_type_pos argument to _dbus_marshal_validate_arg.
Let you pass a NULL end_pos to _dbus_marshal_validate_type.

* dbus/dbus-message.[ch]:
Multi-dimensional arrays have full type specification in the
outermost array. Iter code re-arranged to handle this.
Added some more iter tests.

* doc/dbus-specification.sgml:
Add me to authors.
Remove old FIXME.
Update new array encoding description.
Correct DBUS_SERVICE_FLAGS_REPLACE_EXISTING description.

* test/data/invalid-messages/array-with-mixed-types.message:
* test/data/valid-messages/array-of-array-of-uint32.message:
Change to the new array format.

* test/data/invalid-messages/too-short-dict.message:
Fix bug in test.

* test/data/valid-messages/recursive-types.message:
Fix up and extend test.
/external/dbus/dbus/dbus-message.h
6c241c1035a74f9ad4a526424a0be5c816bc61cb 08-Apr-2003 Havoc Pennington <hp@redhat.com> 2003-04-08 Havoc Pennington <hp@redhat.com>

* bus/driver.c (bus_driver_handle_acquire_service): init
retval/reply before checking name

* dbus/dbus-marshal.c (_dbus_marshal_validate_arg): add a
recursion depth argument

* dbus/dbus-message.h (struct DBusMessageIter): put some padding
in the public struct for future extension

* dbus/dbus-message-builder.c (_dbus_message_data_load): fix
typo

* dbus/dbus-marshal.c (_dbus_marshal_validate_arg): fix a verbose
message

* doc/dbus-specification.sgml: fix typo
/external/dbus/dbus/dbus-message.h
c5020ac870c5990a36c3576453cc23431213e8bf 08-Apr-2003 Alexander Larsson <alexl@redhat.com> 2003-04-08 Alexander Larsson <alexl@redhat.com>

Implemented recursive types, named types and new-style iters

* bus/driver.c:
* glib/test-thread-client.c: (thread_func):
* glib/test-thread-server.c: (handle_test_message):
* test/test-service.c: (handle_echo):
Update to new api

* dbus/Makefile.am:
* dbus/dbus-dict.c:
* dbus/dbus-dict.h:
* dbus/dbus.h
Remove DBusDict

* dbus/dbus-internals.c: (_dbus_type_to_string):
Update for new types.

* dbus/dbus-marshal.[ch]:
Implement recursive types and the new marshalling format.
Remove hardcoded dict marshalling.
Marshal named types.

* dbus/dbus-message-builder.c:
Add BYTE_ARRAY.
Remove references to old types

* dbus/dbus-message.[ch]:
New non-refcounted iter API that supports recursive iters.
Use iters for appending, including support for recursive
iters.
Add byte and named type support.
Update everything to new marshalling formats.
Add tests for new API.

* dbus/dbus-protocol.h:
Remove old array types.
Add types: BYTE, ARRAY, DICT, NAMED

* dbus/dbus-string.c:
* dbus/dbus-sysdeps.c:
Make parse_double locale safe.

* dbus/dbus-test-main.c:
Call setlocale.

* dbus/dbus-test.c:
Kill dict test

* doc/dbus-specification.sgml:
Update spec

* test/data/incomplete-messages/missing-body.message:
* test/data/invalid-messages/bad-boolean.message:
* test/data/invalid-messages/bad-boolean-array.message:
* test/data/invalid-messages/boolean-array-length-too-long.message-raw:
* test/data/invalid-messages/boolean-has-no-value.message-raw:
* test/data/invalid-messages/too-short-dict.message:
* test/data/valid-messages/dict-simple.message:
* test/data/valid-messages/dict.message:
* test/data/valid-messages/emptiness.message:
* test/data/valid-messages/lots-of-arguments.message:
* test/data/valid-messages/no-padding.message:
* test/data/valid-messages/recursive-types.message:
Add missing NAME fields
Fix up dicts & arrays

* test/data/invalid-messages/dict-with-nil-value.message:
Removed, this is not invalid anymore.

* test/data/valid-messages/recursive-types.message:
Add new test for deeply recursive types.
/external/dbus/dbus/dbus-message.h
f216e81432ddf04889202c33a6e68113f94d7611 03-Apr-2003 Havoc Pennington <hp@redhat.com> 2003-04-03 Havoc Pennington <hp@redhat.com>

* bus/activation.c (load_directory): fix up memleaks
(bus_activation_entry_free): free the entry

* dbus/dbus-bus.c (dbus_bus_acquire_service): return an error if
we get one from the message bus; fix memleaks.

* dbus/dbus-message.c (dbus_set_error_from_message): new function
/external/dbus/dbus/dbus-message.h
056d76d809dc341b0dce160d3f79062604565c77 20-Mar-2003 Havoc Pennington <hp@redhat.com> 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
/external/dbus/dbus/dbus-message.h
4c95a9782c65f88e2904c44abeb734a1b00f6353 15-Mar-2003 Havoc Pennington <hp@redhat.com> 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
/external/dbus/dbus/dbus-message.h
29560adcc79a259a0be3511c056ee7453aa26c04 13-Mar-2003 Havoc Pennington <hp@redhat.com> 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
/external/dbus/dbus/dbus-message.h
799a3ff443f5357ae7857ebe989a7f92f7bd84df 10-Mar-2003 Anders Carlsson <andersca@codefactory.se> 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.
/external/dbus/dbus/dbus-message.h
3781f063a6dfbdeafea6d1c6c8ac10c8b22f8586 24-Feb-2003 Anders Carlsson <andersca@codefactory.se> 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.
/external/dbus/dbus/dbus-message.h
c8769e0b1dde3f1c4ad40cd10dd89c284ecc672b 24-Feb-2003 Anders Carlsson <andersca@codefactory.se> 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.
/external/dbus/dbus/dbus-message.h
babdabd40c98a1a5db93e5315bf0b2609e73f426 21-Feb-2003 Anders Carlsson <andersca@codefactory.se> 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.
/external/dbus/dbus/dbus-message.h
6cf6f82faae928a9142d4aa465b5add381960e29 16-Feb-2003 Anders Carlsson <andersca@codefactory.se> 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.
/external/dbus/dbus/dbus-message.h
f116b1282f8482dff6dc797f64270d95f79b53a3 16-Feb-2003 Anders Carlsson <andersca@codefactory.se> 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.
/external/dbus/dbus/dbus-message.h
aa4b4ef5955606659557a40a2220090ee9c108d4 13-Feb-2003 Anders Carlsson <andersca@codefactory.se> 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.
/external/dbus/dbus/dbus-message.h
34e6c6ff31e0bd27bf18c0e3c68b3a1ea9f0448d 13-Feb-2003 Anders Carlsson <andersca@codefactory.se> 2003-02-13 Anders Carlsson <andersca@codefactory.se>

* bus/driver.c: (bus_driver_send_welcome_message),
(bus_driver_handle_list_services),
(bus_driver_handle_acquire_service),
(bus_driver_handle_service_exists), (bus_driver_handle_message):
Update for API changes in libdbus.

* dbus/dbus-message.c: (dbus_message_new_reply):
* dbus/dbus-message.h:
Remove the name argument. The spec states that replies shouldn't
have a name.
/external/dbus/dbus/dbus-message.h
f023895590208ea70ff7ac7444cc5e0729a3a815 01-Feb-2003 Alexander Larsson <alexl@redhat.com> 2003-02-02 Alexander Larsson <alexl@redhat.com>

* dbus/dbus-watch.c (dbus_watch_get_flags):
Add note in the docs that ERROR or HANGUP won't be returned
and are assumed always on.

* glib/dbus-gmain.c (add_watch):
Always add IO_ERR | IO_HUP

* dbus/dbus-message.h:
Add semicolon after dbus_message_iter_get_string_array().
Makes qt code build again
/external/dbus/dbus/dbus-message.h
0ff552a2c5c542a1be9a1c73597c298e6ece358f 01-Feb-2003 Havoc Pennington <hp@redhat.com> 2003-01-31 Havoc Pennington <hp@pobox.com>

* dbus/dbus-message.c (dbus_message_set_is_error_reply): rename
just set_is_error/get_is_error as this is a commonly-used
function, and write docs.
/external/dbus/dbus/dbus-message.h
8ab042b9571dda44a5afcfe50e0d29dc9b58ecae 31-Jan-2003 Anders Carlsson <andersca@codefactory.se> 2003-01-31 Anders Carlsson <andersca@codefactory.se>

* dbus/dbus-address.c: (dbus_address_entry_free):
Free key and value lists.

* dbus/dbus-internals.c: (_dbus_type_to_string):
Add the types we didn't have.

* dbus/dbus-marshal.c: (_dbus_marshal_get_arg_end_pos),
(_dbus_marshal_validate_arg):
Add NIL types.

* dbus/dbus-message.c: (dbus_message_set_sender):
Remove todo about being able to set sender to NULL.

(dbus_message_set_is_error_reply),
(dbus_message_get_is_error_reply):
* dbus/dbus-message.h:
New functions.

* dbus/dbus-protocol.h:
Add error reply flag.

* test/data/valid-messages/opposite-endian.message:
Add NIL type to test.
/external/dbus/dbus/dbus-message.h
35aec362a7ceb3674641ab56c15011184cdd09ac 28-Jan-2003 Anders Carlsson <andersca@codefactory.se> Forgot this.
/external/dbus/dbus/dbus-message.h
50c25505f62786756519ef1e194883360eda82e0 26-Jan-2003 Havoc Pennington <hp@redhat.com> 2003-01-26 Havoc Pennington <hp@pobox.com>

The unit tests pass, but otherwise untested. If it breaks, the
tests should have been better. ;-)

* bus/driver.c (bus_driver_handle_hello): return if we disconnect
the connection.

* dbus/dbus-message.c: redo everything so we maintain
message->header as the only copy of the various fields.
This avoids the possibility of out-of-memory in some cases,
for example dbus_message_lock() can't run out of memory anymore,
and avoids extra copying. Figured I may as well go ahead and do
this since it was busted for dbus_message_lock to not return
failure on OOM, and dbus_message_write_header was totally
unchecked for OOM. Also fixed some random other bugs.

* dbus/dbus-marshal.c (_dbus_marshal_get_field_end_pos): verify
that strings are nul-terminated. Also, end_pos can be equal
to string length just not greater than, I think.
(_dbus_marshal_set_int32): new function
(_dbus_marshal_set_uint32): new function
(_dbus_marshal_set_string): new function

* dbus/dbus-connection.c (_dbus_connection_new_for_transport): fix
a warning, init timeout_list to NULL
(dbus_connection_send_message): don't use uninitialized variable
"serial"

* dbus/dbus-string.c (_dbus_string_replace_len): new function
/external/dbus/dbus/dbus-message.h
fdddf7246da9ea6ce841146e2befe843aede0466 25-Jan-2003 Anders Carlsson <andersca@codefactory.se> 2003-01-25 Anders Carlsson <andersca@codefactory.se>

* dbus/dbus-internals.h:
Add _DBUS_HANDLE_OOM macro, it doesn't do anything currently.

* dbus/dbus-message.c: (dbus_message_get_sender):
* dbus/dbus-message.h:
Implement dbus_message_get_sender.

* dbus/dbus-protocol.h:
Add message and service defines.
/external/dbus/dbus/dbus-message.h
dc6a61a15b2d9cdc6504753fa9eb0a718f99d6d8 25-Jan-2003 Anders Carlsson <andersca@codefactory.se> 2003-01-25 Anders Carlsson <andersca@codefactory.se>

* dbus/dbus-connection.c: (dbus_connection_send_message):
Unlock the message in case it was sent earlier.

(dbus_connection_send_message_with_reply_and_block):
Remove the reply message from the list.

* dbus/dbus-marshal.c: (_dbus_demarshal_string_array):
Set array_len and new_pos correctly.

(_dbus_marshal_test):
Remove debug output.

* dbus/dbus-message-internal.h:
* dbus/dbus-message.c: (_dbus_message_get_reply_serial):
New function that returns the reply serial.

(_dbus_message_unlock):
New function that unlocks a message and resets its header.

(dbus_message_append_string_array),
(dbus_message_get_fields_valist),
(dbus_message_iter_get_field_type),
(dbus_message_iter_get_string_array),
(dbus_message_get_fields),
(dbus_message_append_fields_valist):
Handle string arrays.

(dbus_message_set_sender):
Make this function public since the bus daemon needs it.

(decode_header_data):
Set the reply serial to -1 initially.

* dbus/dbus-message.h:
Add dbus_message_set_sender.
/external/dbus/dbus/dbus-message.h
4a85d321b4516c6a663e8bdd530ba59018c974df 21-Jan-2003 Anders Carlsson <andersca@codefactory.se> 2003-01-21 Anders Carlsson <andersca@codefactory.se>

* dbus/dbus-connection.c: (dbus_connection_send_message):
Add a new client_serial parameter.

(dbus_connection_send_message_with_reply):
Remove a @todo since we've implemented the blocking function.

(dbus_connection_send_message_with_reply_and_block):
New function that sends a message and waits for a reply and
then returns the reply.

* dbus/dbus-connection.h:
Add new functions.

* dbus/dbus-errors.c: (dbus_result_to_string):
* dbus/dbus-errors.h:
Add new DBUS_RESULT.

* dbus/dbus-message-internal.h:
* dbus/dbus-message.c: (_dbus_message_get_reply_serial),
(_dbus_message_set_sender), (dbus_message_write_header),
(dbus_message_new_reply), (decode_header_data),
(_dbus_message_loader_return_buffer), (_dbus_message_test):
* dbus/dbus-message.h:
Add new functions that set the reply serial and sender.
Also marshal and demarshal them correctly and add test.

* dbus/dbus-protocol.h:
Add new DBUS_MESSAGE_TYPE_SENDER.

* glib/dbus-glib.h:
* glib/dbus-gmain.c: (watch_callback), (free_callback_data),
(add_watch), (remove_watch), (add_timeout), (remove_timeout),
(dbus_connection_hookup_with_g_main):
* glib/test-dbus-glib.c: (main):
Rewrite to use GIOChannel and remove the GSource crack.

* test/echo-client.c: (main):
* test/watch.c: (check_messages):
Update for changed APIs
/external/dbus/dbus/dbus-message.h
f0dbc1bdd06e1cb4f32b7fe05ee1287ae5f9df85 19-Jan-2003 Anders Carlsson <andersca@codefactory.se> 2003-01-19 Anders Carlsson <andersca@codefactory.se>

* dbus/Makefile.am: Add dbus-timeout.[cħ]

* dbus/dbus-connection.c: (_dbus_connection_new_for_transport):
Create a DBusTimeoutList.
(dbus_connection_set_timeout_functions): Add new function to
set timeout callbacks

* dbus/dbus-connection.h: Add public DBusTimeout API.

* dbus/dbus-message.c: (dbus_message_get_service):
* dbus/dbus-message.h: New function.

* dbus/dbus-server.c: Fix small doc typo.

* dbus/dbus-timeout.[ch]: New files for mainloop timeouts.
/external/dbus/dbus/dbus-message.h
1b9a4589f6836641ded324b7b5d003c5cbfb0b78 14-Jan-2003 Anders Carlsson <andersca@codefactory.se> 2003-01-14 Anders Carlsson <andersca@codefactory.se>

* bus/connection.c: (connection_error_handler),
(bus_connection_setup):
* bus/main.c: (main):
Make sure that the DBusConnectionData struct is NULLed
out to prevent a segfault.

* dbus/dbus-errors.c: (dbus_result_to_string):
* dbus/dbus-errors.h:
* dbus/dbus-message.c: (dbus_message_get_fields),
(dbus_message_get_fields_valist), (_dbus_message_test):
* dbus/dbus-message.h:
Make dbus_message_get_fields return a result code so we can
track invalid fields as well as oom.
/external/dbus/dbus/dbus-message.h
993be1059afcb0e9a5b67f5287fb1122d6c48ce6 09-Jan-2003 Havoc Pennington <hp@redhat.com> 2003-01-08 Havoc Pennington <hp@pobox.com>

* dbus/dbus-string.c (_dbus_string_align_length): new function

* dbus/dbus-test-main.c: move main() for test app here
* dbus/dbus-test.c
(dbus_internal_symbol_do_not_use_run_tests): we have to export a
symbol to run tests, because dbus-test isn't in the main
library

Code review nitpicks.

* dbus/dbus-message.c (dbus_message_write_header): add newlines
for people with narrow emacs ;-). Assert client_serial was filled
in. Assert message->name != NULL.
(dbus_message_append_fields): have "first_field_type" arg separate
from va list, needed for C++ binding that also uses varargs IIRC
and helps with type safety
(dbus_message_new): add @todo about using DBusString to store
service/name internally
(dbus_message_new): don't leak ->service and ->name on OOM later
in the function
(dbus_message_unref): free the service name
(dbus_message_get_fields): same change to varargs
i.e. first_field_type
(_dbus_message_loader_return_buffer): assert that the message data
is aligned (if not it's a bug in our code). Put in verbose griping
about why we set corrupted = TRUE.
(decode_header_data): add FIXME that char* is evil. Was going to
add FIXME about evil locale-specific string.h strncmp, but just
switched to wacky string-as-uint32 optimization. Move check for
"no room for field name" above get_const_data_len() to avoid
assertion failure in get_const_data_len if we have trailing 2
bytes or the like. Check for service and name fields being
provided twice. Don't leak service/name on error. Require field
names to be aligned to 4 bytes.

* dbus/dbus-marshal.c: move byte swap stuff to header
(_dbus_pack_int32): uscore-prefix
(_dbus_unpack_int32): uscore-prefix
(_dbus_unpack_uint32): export
(_dbus_demarshal_string): add @todo complaining about use of
memcpy()
(_dbus_marshal_get_field_end_pos): add @todo about bad error
handling allowing corrupt data to go unchecked
/external/dbus/dbus/dbus-message.h
000d29a283b06517f0cfb599516a390e3afbf25c 08-Jan-2003 Anders Carlsson <andersca@codefactory.se> 2003-01-08 Anders Carlsson <andersca@codefactory.se>

* dbus/dbus-internals.c: (_dbus_type_to_string):
New function that returns a string describing a type.

* dbus/dbus-marshal.c: (_dbus_demarshal_byte_array):
* dbus/dbus-marshal.h:
* dbus/dbus-message.c: (dbus_message_get_fields_valist),
(dbus_message_iter_get_field_type), (dbus_message_iter_get_double),
(dbus_message_iter_get_byte_array):
* dbus/dbus-message.h:
Add new convenience functions for appending and getting message fields.
Also add demarshalling routines for byte arrays.
/external/dbus/dbus/dbus-message.h
1f23ea99b37bfc8197f1c6a376f9afe08037f0f6 07-Jan-2003 Anders Carlsson <andersca@codefactory.se> 2003-01-08 Anders Carlsson <andersca@codefactory.se>

reviewed by: <delete if not using a buddy>

* dbus/dbus-internals.c: (_dbus_type_to_string):
New function that returns a string describing a type.

* dbus/dbus-internals.h:
* dbus/dbus-message.c: (dbus_message_append_fields),
(dbus_message_append_fields_valist), (dbus_message_get_fields),
(dbus_message_get_fields_valist), (_dbus_message_test):
* dbus/dbus-message.h:
Add new convenience functions for appending and getting message fields.
Also add a test for those.
/external/dbus/dbus/dbus-message.h
1b53cbcce333381754b0568b740ece550a8f6ac9 07-Jan-2003 Anders Carlsson <andersca@codefactory.se> 2003-01-07 Anders Carlsson <andersca@codefactory.se>

* dbus/dbus-connection-internal.h:
* dbus/dbus-connection.c: (_dbus_connection_new_for_transport),
(_dbus_connection_get_next_client_serial),
(dbus_connection_send_message):
* dbus/dbus-internals.h:
* dbus/dbus-marshal.c: (unpack_uint32), (dbus_unpack_int32),
(dbus_pack_int32), (_dbus_marshal_double), (_dbus_marshal_int32),
(_dbus_marshal_uint32), (_dbus_demarshal_double),
(_dbus_demarshal_int32), (_dbus_demarshal_uint32),
(_dbus_demarshal_string), (_dbus_marshal_get_field_end_pos),
(_dbus_verbose_bytes), (_dbus_marshal_test):
* dbus/dbus-marshal.h:
* dbus/dbus-message-internal.h:
* dbus/dbus-message.c: (_dbus_message_set_client_serial),
(dbus_message_write_header), (_dbus_message_lock),
(dbus_message_new), (dbus_message_ref), (dbus_message_unref),
(dbus_message_get_name), (dbus_message_append_int32),
(dbus_message_append_uint32), (dbus_message_append_double),
(dbus_message_append_string), (dbus_message_append_byte_array),
(dbus_message_get_fields_iter), (dbus_message_iter_ref),
(dbus_message_iter_unref), (dbus_message_iter_has_next),
(dbus_message_iter_next), (dbus_message_iter_get_field_type),
(dbus_message_iter_get_string), (dbus_message_iter_get_int32),
(dbus_message_iter_get_uint32), (dbus_message_iter_get_double),
(decode_header_data), (_dbus_message_loader_return_buffer),
(message_iter_test), (_dbus_message_test):
* dbus/dbus-message.h:
* dbus/dbus-protocol.h:
* dbus/dbus-test.c: (main):
* dbus/dbus-test.h:
* glib/test-dbus-glib.c: (message_handler), (main):
* test/echo-client.c: (main):
* test/watch.c: (check_messages):
Make messages sendable and receivable for real.
/external/dbus/dbus/dbus-message.h
5175ad00e1d648a89efdf8d397b31bf84fd203c8 06-Jan-2003 Anders Carlsson <andersca@codefactory.se> 2003-01-07 Anders Carlsson <andersca@codefactory.se>

* dbus/dbus-marshal.c: (_dbus_marshal_string),
(_dbus_demarshal_string), (_dbus_marshal_test):
* dbus/dbus-marshal.h:
Document these functions.

* dbus/dbus-message.c: (dbus_message_get_name),
(dbus_message_append_int32), (dbus_message_append_uint32),
(dbus_message_append_double), (dbus_message_append_string),
(dbus_message_append_byte_array):
* dbus/dbus-message.h:
Add functions for adding message fields of different types.

* dbus/dbus-protocol.h:
Add the different types.
/external/dbus/dbus/dbus-message.h
17fbe2b702cdc880abd6cbe117e620b6432f42e0 24-Dec-2002 Havoc Pennington <hp@redhat.com> 2002-12-24 Havoc Pennington <hp@pobox.com>

* glib/dbus-gthread.c: fix include

* glib/dbus-glib.h: rename DBusMessageHandler for now.
I think glib API needs to change, though, as you don't
want to use DBusMessageFunction, you want to use the
DBusMessageHandler object. Probably
dbus_connection_open_with_g_main_loop()
and dbus_connection_setup_g_main_loop() or something like that
(but think of better names...) that just create a connection
that has watch/timeout functions etc. already set up.

* dbus/dbus-connection.c
(dbus_connection_send_message_with_reply): new function just to
show how the message handler helps us deal with replies.

* dbus/dbus-list.c (_dbus_list_remove_last): new function

* dbus/dbus-string.c (_dbus_string_test): free a string that
wasn't

* dbus/dbus-hash.c: use memory pools for the hash entries
(rebuild_table): be more paranoid about overflow, and
shrink table when we can
(_dbus_hash_test): reduce number of sprintfs and write
valid C89. Add tests for case where we grow and then
shrink the hash table.

* dbus/dbus-mempool.h, dbus/dbus-mempool.c: memory pools

* dbus/dbus-connection.c (dbus_connection_register_handler)
(dbus_connection_unregister_handler): new functions

* dbus/dbus-message.c (dbus_message_get_name): new

* dbus/dbus-list.c: fix docs typo

* dbus/dbus-message-handler.h, dbus/dbus-message-handler.c:
an object representing a handler for messages.
/external/dbus/dbus/dbus-message.h
041b0767b284034aee09e9a0de2a3844b8cc546a 25-Nov-2002 Havoc Pennington <hp@redhat.com> 2002-11-24 Havoc Pennington <hp@pobox.com>

* test/echo-client.c, test/echo-server.c: cheesy test
clients.

* configure.in (AC_CHECK_FUNCS): check for writev

* dbus/dbus-message.c (_dbus_message_get_network_data): new
function

* dbus/dbus-list.c (_dbus_list_foreach): new function

* dbus/dbus-internals.c (_dbus_verbose): new function

* dbus/dbus-server.c, dbus/dbus-server.h: public object
representing a server that listens for connections.

* dbus/.cvsignore: create

* dbus/dbus-errors.h, dbus/dbus-errors.c:
public API for reporting errors

* dbus/dbus-connection.h, dbus/dbus-connection.c:
public object representing a connection that
sends/receives messages. (Same object used for
both client and server.)

* dbus/dbus-transport.h, dbus/dbus-transport.c:
Basic abstraction for different kinds of stream
that we might read/write messages from.
/external/dbus/dbus/dbus-message.h
f09921965c769ff6411ae2f684f6b855d4c8f38d 23-Nov-2002 Havoc Pennington <hp@redhat.com> 2002-11-23 Havoc Pennington <hp@pobox.com>

* Doxyfile.in (INCLUDE_FILE_PATTERNS): expand DBUS_BEGIN_DECLS/
DBUS_END_DECLS to nothing, that should fix this once and for all

* Doxyfile.in (JAVADOC_AUTOBRIEF): set to YES

* dbus/dbus-message.c, dbus/dbus-hash.c:
add some missing @brief
/external/dbus/dbus/dbus-message.h
55de3878c42f8254bac653b7c1998e79a1658ae2 23-Nov-2002 Havoc Pennington <hp@redhat.com> 2002-11-23 Havoc Pennington <hp@pobox.com>

* dbus/dbus-message.h: put semicolons after DEBUG_BEGIN_DECLS
to avoid confusing Doxygen

* dbus/dbus-hash.c: @} not }@

* dbus/dbus-message.c (struct DBusMessage): split out
internals docs
/external/dbus/dbus/dbus-message.h
93f222c1d8ed748994f74662671d003495b16d43 22-Nov-2002 Havoc Pennington <hp@redhat.com> 2002-11-22 Havoc Pennington <hp@redhat.com>

* dbus/dbus-message.c: move inline docs into .c file

* Doxyfile (OUTPUT_DIRECTORY): move output to doc/api
so all docs are under doc/
(MAN_EXTENSION): generate man pages. Use extension
".3dbus" which matches ".3qt" on my system,
I guess this is OK, I don't know really.
(FILE_PATTERNS): look for .c files not .h, makes sense
for plain C I think
/external/dbus/dbus/dbus-message.h
c68320376bc93cb744e0a0930eb241eefd764076 22-Nov-2002 Zack Rusin <zack@kde.org> Adding documentation (Doxygen) support.
/external/dbus/dbus/dbus-message.h
5a6adeee6e20252f8f2b01349b7e95ee6e99e4ff 21-Nov-2002 Havoc Pennington <hp@redhat.com> 2002-11-21 Havoc Pennington <hp@redhat.com>

* dbus/Makefile.am (INCLUDES): define DBUS_COMPILATION
so we can allow ourselves to include files directly,
instead of having to use dbus.h

* dbus/dbus.h: fill in

* dbus/dbus-message.h: sketch out a sample header file.
Include griping if you include it directly instead of
via dbus.h

* dbus/dbus-macros.h: new file with macros for extern "C",
TRUE/FALSE, NULL, etc.

* doc/file-boilerplate.c: put include guards in here
/external/dbus/dbus/dbus-message.h