X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=ChangeLog;h=b7ecd85d0bcf934a79631755c99b7958e86f5f78;hb=8e1fc1d7795f8a7a23c4ab9568d5b787526c0cfa;hp=a094e98ad326a47d78d7c1c42b7570f74eaea765;hpb=4be7b14fce835a30b312bfed1492234bf1e0f316;p=platform%2Fupstream%2Fdbus.git diff --git a/ChangeLog b/ChangeLog index a094e98..b7ecd85 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,607 @@ +2003-12-02 Richard Hult + + * dbus/dbus-message.c (dbus_message_iter_append_dict): Set + wrote_dict_key to FALSE on the iter that the dict is appended to, + just like when appending other types. Fixes a bug where a dict + couldn't be put inside a dict. + (dbus_message_iter_append_dict_key): Fix typo in warning message. + (message_iter_test, _dbus_message_test): Add test case for dict + inside dict. + +2003-12-01 David Zeuthen + + * python/dbus.py: Add the actual message when calling the reciever + of a signal such that parameters can be inspected. Add the method + remove_signal_receiver + +2003-11-26 Mikael Hallendal + + * bus/*.[ch]: + * dbus/*.[ch]: + * glib/*.[ch]: Made ref functions return the pointer + +2003-11-25 Zack Rusin + + * qt/integrator.h, qt/integrator.cpp: Adding handling of DBusServer, + + * qt/server.h, qt/server.cpp, qt/Makefile.am: Adding DBusServer + wrappers, + + * qt/connection.h, qt/connection.cpp: Adjusting to changes in + the Integrator and to better fit with the server, + +2003-11-24 Zack Rusin + + * qt/connection.h, qt/connection.cpp: removing initDbus method since + the integrator handles it now + + * qt/integrator.h, qt/integrator.cpp: reworking handling of timeouts, + since QTimer wasn't really meant to be used the way DBusTimeout is + +2003-11-24 Zack Rusin + + * qt/integrator.h, qt/integrator.cpp, Makefile.am: Adding + Integrator class which integrates D-BUS with the Qt event loop, + + * qt/connection.h, qt/connection.cpp: Move all the code which + was dealing with D-BUS integration to the Integrator class, + and start using Integrator, + +2003-11-23 Zack Rusin + + * qt/connection.h, qt/connection.cpp: Adding the DBusConnection + wrapper + + * qt/message.h, qt/message.cpp: updating to the current D-BUS api, + switching namespaces to DBusQt, reworking the class, + + * Makefile.cvs: switching dependencies so that it matches KDE + schematics, + + * qt/Makefile.am: adding connection.{h,cpp} and message.{h,cpp} to + the library + +2003-11-19 Havoc Pennington + + * NEWS: update + + * configure.in: bump version to 0.20 + + * configure.in (have_qt): add yet another place to look for qt + (someone hand trolltech a .pc file...) + +2003-11-01 Havoc Pennington + + * doc/dbus-specification.xml: add state machine docs on the auth + protocol; just a first draft, I'm sure it's wrong. + +2003-10-28 David Zeuthen + + * python/dbus_bindings.pyx.in: add get_dict to handle dictionaries + return types. Fixup TYPE_* to reflect changes in dbus/dbus-protocol.h + +2003-10-28 Havoc Pennington + + * dbus/dbus-message.c (get_next_field): delete unused function + +2003-10-28 Havoc Pennington + + * bus/expirelist.c (do_expiration_with_current_time): detect + failure of the expire_func due to OOM + + * bus/connection.c (bus_pending_reply_expired): return FALSE on OOM + + * bus/dispatch.c (check_send_exit_to_service): fix to handle the + NoReply error that's now created by the bus when the service exits + +2003-10-28 Havoc Pennington + + * dbus/dbus-message.c (_dbus_message_test): enable and fix the + tests for set_path, set_interface, set_member, etc. + + * dbus/dbus-string.c (_dbus_string_insert_bytes): allow 0 bytes + + * dbus/dbus-message.c (set_string_field): always just delete and + re-append the field; accept NULL for deletion + (re_align_fields_recurse): reimplement + +2003-10-26 Havoc Pennington + + * dbus/dbus-connection.c: fix docs to properly describe the + disconnected message + (_dbus_connection_notify_disconnected): remove this function; + we can't synchronously add the disconnected message, we have to + do it after we've queued any remaining real messages + (_dbus_connection_get_dispatch_status_unlocked): queue the + disconnect message only if the transport has finished queueing all + its real messages and is disconnected. + (dbus_connection_disconnect): update the dispatch status here + +2003-10-22 Havoc Pennington + + * bus/bus.c (bus_context_check_security_policy): fix up assertion + + * bus/connection.c (bus_transaction_send_from_driver): set the + destination to the connection's base service + +2003-10-20 Havoc Pennington + + 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 + + * 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 + +2003-10-16 Havoc Pennington + + * glib/dbus-gtest-main.c: bracket with #ifdef DBUS_BUILD_TESTS + + * Makefile.am (GCOV_DIRS): remove "test", we don't care about test + coverage of the tests + (coverage-report.txt): don't move the .da and .bbg files around + +2003-10-16 Havoc Pennington + + * bus/bus.c (struct BusContext): remove struct field I didn't mean + to put there + +2003-10-16 Havoc Pennington + + * 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. + +2003-10-14 David Zeuthen + + * python/dbus_bindings.pyx.in (MessageIter.get): fixed typo in + argtype to arg_type when raising unknown arg type exception. + Changed type list to reflect the changes in dbus-protocol.h so + the bindings actually work. + +2003-10-14 Havoc Pennington + + * test/decode-gcov.c: support gcc 3.3 also, though gcc 3.3 seems + to have a bug keeping it from outputting the .da files sometimes + (string_get_string): don't append garbage nul bytes to the string. + +2003-10-15 Seth Nickell + + * python/Makefile.am: + + Include dbus_h_wrapper.h in the dist tarball. + +2003-10-14 Havoc Pennington + + * bus/bus.c (bus_context_check_security_policy): revamp this to + work more sanely with new policy-based requested reply setup + + * bus/connection.c (bus_transaction_send_from_driver): set bus + driver messages as no reply + + * bus/policy.c (bus_client_policy_check_can_receive): handle a + requested_reply attribute on allow/deny rules + + * bus/system.conf: add + + * bus/driver.c (bus_driver_handle_message): fix check for replies + sent to the bus driver, which was backward. How did this ever work + at all though? I think I'm missing something. + + * dbus/dbus-message.c (decode_header_data): require error and + method return messages to have a reply serial field to be valid + (_dbus_message_loader_queue_messages): break up this function; + validate that reply serial and plain serial are nonzero; + clean up the OOM/error handling. + (get_uint_field): don't return -1 from this + (dbus_message_create_header): fix signed/unsigned bug + + * bus/connection.c (bus_connections_expect_reply): save serial of + the incoming message, not reply serial + +2003-10-14 Havoc Pennington + + * bus/connection.c: implement pending reply tracking using + BusExpireList + + * bus/bus.c (bus_context_check_security_policy): verify that a + reply is pending in order to allow a reply to be sent. Deny + messages of unknown type. + + * bus/dbus-daemon-1.1.in: update to mention new resource limits + + * bus/bus.c (bus_context_get_max_replies_per_connection): new + (bus_context_get_reply_timeout): new + +2003-10-13 Seth Nickell + + * python/Makefile.am: + + Pass "make distcheck": remove a couple files from DIST_FILES + that weren't included in the final version. + +2003-10-12 Havoc Pennington + + Added test code that 1) starts an actual bus daemon and 2) uses + DBusGProxy; fixed bugs that were revealed by the test. Lots + more testing possible, but this is the basic framework. + + * glib/dbus-gproxy.c (dbus_gproxy_manager_unregister): remove + empty proxy lists from the proxy list hash + + * dbus/dbus-message.c (dbus_message_iter_get_args_valist): add a + couple of return_if_fail checks + + * dbus/dbus-pending-call.c (_dbus_pending_call_new): use dbus_new0 + to allocate, so everything is cleared to NULL as it should be. + + * glib/dbus-gmain.c (dbus_connection_setup_with_g_main): pass + source as data to dbus_connection_set_timeout_functions() as the + timeout functions expected + + * test/glib/run-test.sh: add a little script to start up a message + bus and run tests using it + + * tools/dbus-launch.1: updates + + * tools/dbus-launch.c (main): add --config-file option + + * tools/dbus-launch.c (main): remove confusing else if (runprog) + that could never be reached. + + * dbus/dbus-message.c (dbus_message_new_method_return) + (dbus_message_new_error, dbus_message_new_signal): set the + no-reply-expected flag on all these. Redundant, but may + as well be consistent. + +2003-10-11 Havoc Pennington + + * 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. + +2003-10-11 Havoc Pennington + + * dbus/dbus-message.c (_dbus_message_test): add more test + coverage, but #if 0 for now since they uncover a bug + not fixed yet; I think in re_align_field_recurse() + (re_align_field_recurse): add FIXME about broken assertion + + * dbus/dbus-sysdeps.c (_dbus_sysdeps_test): add more test coverage + + * bus/connection.c: share a couple code bits with expirelist.c + + * bus/expirelist.h, bus/expirelist.c: implement a generic + expire-items-after-N-seconds facility, was going to share between + expiring connections and replies, decided not to use for expiring + connections for now. + + * COPYING: include AFL 2.0 (still need to change all the file headers) + +2003-10-09 Havoc Pennington + + * configure.in: define DBUS_HAVE_GCC33_GCOV if we have + gcc 3.3. Not that we do anything about it yet. + + * bus/signals.c (bus_match_rule_parse): impose max length on the + match rule text + + * dbus/dbus-protocol.h: add DBUS_MAXIMUM_MATCH_RULE_LENGTH + +2003-10-09 Havoc Pennington + + 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 + +2003-10-02 Havoc Pennington + + * glib/dbus-gproxy.c (dbus_gproxy_call_no_reply): rename from + dbus_gproxy_oneway_call + + * glib/dbus-gmain.c (dbus_connection_setup_with_g_main) + (dbus_server_setup_with_g_main): fix to allow calling them more + than once on the same args + (dbus_bus_get_with_g_main): new function + +2003-10-02 Havoc Pennington + + * doc/dbus-tutorial.xml: write some stuff + +2003-09-29 Havoc Pennington + + * configure.in: split checks for Doxygen from XML docs, check for + xmlto + + * doc/Makefile.am: XML-ify all the docs, and add a blank + dbus-tutorial.xml + +2003-09-29 Havoc Pennington + + * Merge dbus-object-names branch. To see the entire patch + do cvs diff -r DBUS_OBJECT_NAMES_BRANCHPOINT -r dbus-object-names, + it's huuuuge though. + To revert, I tagged DBUS_BEFORE_OBJECT_NAMES_MERGE. + +2003-09-28 Havoc Pennington + + * HACKING: update to reflect new server + +2003-09-26 Seth Nickell + + * python/dbus.py: + * python/examples/example-signals.py: + + Start implementing some notions of signals. The API + is really terrible, but they sort of work (with the + exception of being able to filter by service, and to + transmit signals *as* a particular service). Need to + figure out how to make messages come from the service + we registered :-( + + * python/dbus_bindings.pyx.in: + + Removed duplicate message_handler callbacks. + +2003-09-25 Havoc Pennington + + * bus/session.conf.in: fix my mess + +2003-09-25 Havoc Pennington + + * bus/session.conf.in: fix security policy, reported by Seth Nickell + +2003-09-25 Seth Nickell + + * python/examples/example-service.py: + + Johan notices complete wrong code in example-service, but + completely wrong in a way that works exactly the same (!). + Johan is confused, how could this possibly work? Example + code fails to serve purpose of making things clear. + Seth fixes. + +2003-09-25 Mark McLoughlin + + * doc/dbus-specification.sgml: don't require header fields + to be 4-byte aligned and specify that fields should be + distinguished from padding by the fact that zero is not + a valid field name. + + * doc/TODO: remove re-alignment item and add item to doc + the OBJECT_PATH type. + + * dbus/dbus-message.c: + (HeaderField): rename the original member to value_offset + and introduce a name_offset member to keep track of where + the field actually begins. + (adjust_field_offsets): remove. + (append_int_field), (append_uint_field), + (append_string_field): don't align the start of the header + field to a 4-byte boundary. + (get_next_field): impl finding the next marhsalled field + after a given field. + (re_align_field_recurse): impl re-aligning a number of + already marshalled fields. + (delete_field): impl deleting a field of any type and + re-aligning any following fields. + (delete_int_or_uint_field), (delete_string_field): remove. + (set_int_field), (set_uint_field): no need to re-check + that we have the correct type for the field. + (set_string_field): ditto and impl re-aligning any + following fields. + (decode_header_data): update to take into account that + the fields aren't 4-byte aligned any more and the new + way to distinguish padding from header fields. Also, + don't exit when there is too much header padding. + (process_test_subdir): print the directory. + (_dbus_message_test): add test to make sure a following + field is re-aligned correctly after field deletion. + + * dbus/dbus-string.[ch]: + (_dbus_string_insert_bytes): rename from insert_byte and + allow the insert of multiple bytes. + (_dbus_string_test): test inserting multiple bytes. + + * dbus/dbus-marshal.c: (_dbus_marshal_set_string): add + warning note to docs about having to re-align any + marshalled values following the string. + + * dbus/dbus-message-builder.c: + (append_string_field), (_dbus_message_data_load): + don't align the header field. + + * dbus/dbus-auth.c: (process_test_subdir): print the + directory. + + * test/break-loader.c: (randomly_add_one_byte): upd. for + insert_byte change. + + * test/data/invalid-messages/bad-header-field-alignment.message: + new test case. + + * test/data/valid-messages/unknown-header-field.message: shove + a dict in the unknown field. + +2003-09-25 Seth Nickell + + * python/dbus.py: + * python/dbus_bindings.pyx.in: + + Handle return values. + + * python/examples/example-client.py: + * python/examples/example-service.py: + + Pass back return values from the service to the client. + +2003-09-24 Seth Nickell + + * python/dbus.py: + + Connect Object methods (when you are sharing an object) up... pass + in a list of methods to be shared. Sharing all the methods just + worked out too weird. You can now create nice Services over the + DBus in Python. :-) + + * python/dbus_bindings.pyx.in: + + Keep references to user_data tuples passed into C functions so + Python doesn't garbage collect on us. + + Implement MethodReturn and Error subclasses of Message for creating + DBusMessage's of those types. + + * python/examples/example-client.py: + * python/examples/example-service.py: + + Simple example code showing both how create DBus services and objects, + and how to use them. + +2003-09-23 Havoc Pennington + + * glib/dbus-gproxy.c (dbus_gproxy_manager_filter): implement + +2003-09-23 Havoc Pennington + + * glib/dbus-gproxy.c (dbus_gproxy_connect_signal): implement + (dbus_gproxy_disconnect_signal): implement + (dbus_gproxy_manager_remove_signal_match): implement + (dbus_gproxy_manager_add_signal_match): implement + (dbus_gproxy_oneway_call): implement + +2003-09-23 Havoc Pennington + + * glib/dbus-gproxy.c (struct DBusGProxy): convert to a GObject + subclass. This means dropping the transparent thread safety of the + proxy; you now need a separate proxy per-thread, or your own + locking on the proxy. Probably right anyway. + (dbus_gproxy_ref, dbus_gproxy_unref): nuke, just use g_object_ref + 2003-09-22 Havoc Pennington * glib/dbus-gproxy.c (dbus_gproxy_manager_get): implement @@ -578,6 +1182,88 @@ * dbus/dbus-protocol.h: add DBUS_TYPE_OBJECT_ID +2003-09-28 Havoc Pennington + + * real 0.13 release + +2003-09-28 Havoc Pennington + + * doc/Makefile.am (dbus-specification.html): testing a funky hack + to work with Debian db2html + +2003-09-28 Havoc Pennington + + * configure.in: 0.13 + + * doc/Makefile.am (dbus-test-plan.html): accept nonexistence of + stylesheet-images for benefit of Debian + + Change back to using filesystem-linked sockets for the system + bus, so only root can create the default system bus address. + + * bus/system.conf.in: change to use + DBUS_SYSTEM_BUS_DEFAULT_ADDRESS + + * dbus/Makefile.am (INCLUDES): remove DBUS_SYSTEM_BUS_PATH define + from here. + + * configure.in: define DBUS_SYSTEM_BUS_DEFAULT_ADDRESS + here, and AC_DEFINE DBUS_SYSTEM_PATH + +2003-08-09 Anders Carlsson + + * doc/TODO: + * doc/busconfig.dtd: + Add busconfig DTD. + +2003-08-09 Anders Carlsson + + * doc/dbus-specification.sgml: + Add activation reply values. + +2003-08-05 Havoc Pennington + + * configure.in: 0.12 + +2003-08-05 Anders Carlsson + + * glib/dbus-gmain.c: (watch_fd_new), (watch_fd_ref), + (watch_fd_unref), (dbus_gsource_check), (dbus_gsource_dispatch), + (add_watch), (remove_watch), (create_source): + Refcount fds, fixes some reentrancy issues. + +2003-07-30 Havoc Pennington + + * dbus/dbus-bus.c (init_connections_unlocked): fix default system + bus address to be abstract if we have abstract sockets + + * NEWS: update + +2003-07-28 Havoc Pennington + + * bus/messagebus.in: fix to avoid processname/servicename + confusion, from Michael Kearey + https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=100965 + +2003-07-23 Havoc Pennington + + * dbus/dbus-message.c (dbus_message_iter_get_named): + fix from Andy Hanton to remove broken "+1" + +2003-07-16 Havoc Pennington + + * tools/dbus-launch.c (babysit): close stdout/stderr in the + babysitter process, as suggested by Thomas Leonard, so + an "eval `dbus-launch --exit-with-session`" will actually + return + +2003-07-16 Havoc Pennington + + * configure.in: print out EXPANDED_* variables in the summary at + the end; clean up the code that computes EXPANDED_ variables and + get the ones using exec_prefix right. Should make things work + when you build without --prefix + 2003-06-29 Havoc Pennington * mono/Test.cs (class Test): fire up a main loop and run it