dbecdeabb20e0ce11121819c63373f0afba57c58 |
|
19-Mar-2010 |
Marcus Brinkmann <marcus.brinkmann@ruhr-uni-bochum.de> |
Consistently include <config.h> in all C source files and never in header files.
/external/dbus/bus/signals.c
|
0411f9d6327987a0f9aea332effd37c01aafbab2 |
|
03-Sep-2009 |
Will Thompson <will.thompson@collabora.co.uk> |
Rename DBusConnection *disconnected param to connection
/external/dbus/bus/signals.c
|
b4264cb0e66aea2e56b414a529024c35f6a0d90f |
|
30-Jul-2009 |
Will Thompson <will.thompson@collabora.co.uk> |
Group match rules by their interface. In my informal studies of "normal" sets of match rules, only checking match rules with the appropriate interface for the message reduces the number that need to be checked by almost 100x on average (ranging from halving for messages from the bus daemon, to a >200x reduction in many cases). This reduces the overhead added to dispatching each message by having lots of irrelevant match rules.
/external/dbus/bus/signals.c
|
86d0d2baf58fefab79d4de9508e1fd86fcbb155e |
|
29-Jul-2009 |
Will Thompson <will.thompson@collabora.co.uk> |
Extract rule_list_remove_by_connection
/external/dbus/bus/signals.c
|
a2c4eca52a4de27daa022b346e8eba2c0abf5ac8 |
|
29-Jul-2009 |
Will Thompson <will.thompson@collabora.co.uk> |
Extract freeing a DBusList<BusMatchRule>
/external/dbus/bus/signals.c
|
38ead76613ec9d920baca976b371140189219be0 |
|
29-Jul-2009 |
Will Thompson <will.thompson@collabora.co.uk> |
Don't bother re-matching features we've checked. This is currently not a big deal, but will make more of a difference once the set of match rules is partitioned by more features than just the message type.
/external/dbus/bus/signals.c
|
647912b81ff2a9132f81c725b9c64b42e2588292 |
|
29-Jul-2009 |
Will Thompson <will.thompson@collabora.co.uk> |
Index match rules by message type This avoids scanning all the signal matches while dispatching method calls and returns, which are rarely matched against.
/external/dbus/bus/signals.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/bus/signals.c
|
f6ec4a80abbfd4e4f4969747c39e625b2689df08 |
|
20-Sep-2007 |
Ryan Lortie <desrt@desrt.ca> |
Add argument path matching support. Bug #11066. 2007-09-20 Ryan Lortie <desrt@desrt.ca> * dbus/signals.c (struct DBusMatchRule, bus_match_rule_new, bus_match_rule_set_arg, bus_match_rule_parse_arg_match, match_rule_matches): Add support for parsing and matching on arg0path='/some/path' type rules. * dbus/signals.h (bus_match_rule_set_arg): change to take const DBusString instead of const char * for the string to match against. * dbus/dbus-bus.c: add a quick note to dbus_bus_add_match documentation about the path matching. * doc/dbus-specification.xml: add a more detailed description of the changes here.
/external/dbus/bus/signals.c
|
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/bus/signals.c
|
1a90c0193042bfc03d56d0f2454e46ec35667f3f |
|
12-Dec-2006 |
John (J5) Palmieri <johnp@redhat.com> |
* bus/signal.c: Fix match_rule_equal errata (CVE-2006-6107 - Patch from Kimmo Hämäläinen <kimmo.hamalainen@nokia.com>)
/external/dbus/bus/signals.c
|
1a163e765c0d6a86d2aa2ffb18a1d7e29a052e7a |
|
22-Nov-2005 |
John (J5) Palmieri <johnp@redhat.com> |
* configure.in: Add test/name-test/Makefile to the generated Makefile list * dbus/dbus-shared.h (#define DBUS_NAME_FLAG_ALLOW_REPLACEMENT): New flag which replaces DBUS_NAME_FLAG_PROHIBIT_REPLACEMENT (#define DBUS_NAME_FLAG_DO_NOT_QUEUE): New flag for specifying not to queue an ower if it can't be the primary owner * bus/bus.h: Add new internal BusOwner struct * bus/driver.c (bus_driver_handle_hello): Send flags (0 for default) to bus_registry_ensure and don't set the prohibit_replacement flag since they are now set per BusOwner and not per name. (bus_driver_handle_list_queued_owners): bus method (ListQueuedOwners) that returns the list of connections in a name's connection queue * bus/services.c (struct BusService): remove prohibit_replacement field (struct BusOwner): new struct for keeping track of queued connections and their associated flags for the queue (struct BusRegistry): add a BusOwner memory pool (bus_registry_new): initialize the BusOwner memory pool (bus_registry_unref): free the BusOwner memory pool (_bus_service_find_owner_link): new internal method for searching the queue for a specific connection (bus_owner_set_flags): new method for adding setting the flags on a bus owner (bus_owner_new): new method that creates a BusOwner object from the pool and sets its flags (bus_owner_ref, bus_owner_unref): ref counting for BusOwner objects (bus_registry_ensure): Add the flags parameter (bus_registry_acquire_service): Switch from using raw connections to using the BusOwner struct Add new state machine for dealing with the new set of flags (bus_registry_set_service_context_table, struct OwnershipCancelData, cancel_ownership, free_ownership_cancel_data, add_cancel_ownership_to_transaction, struct OwnershipRestoreData, restore_ownership, free_ownership_restore_data, add_restore_ownership_to_transaction): Switch to using BusOwner instead of raw connections (bus_service_add_owner): Add flags parameter Switch to using BusOwner instead of raw connections Add state machine for dealing with the new set of flags (bus_service_swap_owner): Swaps the first and second owners in the queue. Used to make sure proper signals are sent when a service looses or gains primary ownership. We never insert an owner at the top of the queue. Instead we insert it in the second position and then swap. (bus_service_remove_owner): Remove the owner from the queue sending out the NameLost and NameOwnerChanged signals if the we were the primary owner (bus_service_get_primary_owners_connection): New method that extracts the connection from the primary owner (bus_service_get_primary_owner): Returns the BusOwner instead of the connection (bus_service_get_allow_replacement): Changed from the old bus_service_get_prohibit_replacement method. Checks the flags of the primary owner and returns if it can be replaced or not (bus_service_set_prohibit_replacement): removed (bus_service_has_owner): returns TRUE if and owner with the specified connection exists in the queue * dbus/dbus-bus.c (dbus_bus_connection_get_unique_name): New helper method that only compiles if tests are enabled. Allows us to get the unique name of a connection so we can check it against the queue when doing regression tests * bus/activation.c (bus_activation_send_pending_auto_activate), bus/dispatch.c (bus_dispatch), bus/driver.c (bus_driver_handle_get_service_owner, bus_driver_handle_get_connection_unix_user, bus_driver_handle_get_connection_unix_process_id, bus_driver_handle_get_connection_selinux_security_context), bus/signals.c (connection_is_primary_owner): use bus_service_get_primary_owners_connection instead of bus_service_get_primary_owner * dbus/dbus-sysdeps.c (_dbus_connect_unix_socket, _dbus_listen_unix_socket): Calculate the length of the socket path and use that instead of using a fixed length which was causing socket names to contain many trailing Nul bytes. * dbus/dbus-glib-lowlevel.h, glib/dbus-gobject.c (dbus_g_method_get_sender): New method for extracting the sender from a DBusGMethodInvocation (dbus_g_method_return_get_reply): changed name to dbus_g_method_get_reply (dbus_g_method_return_send_reply): changed name to dbus_g_method_send reply * doc/dbus-specification.xml: New docs that describe how the new queueing system works and talks about the changes to the how we specify socket names * glib/examples/example-service.c, glib/examples/example-signal-emitter.c, glib/examples/statemachine/statemachine-server.c: Changed the RequestName flags to the new system * test/name-test/ (test-names.c, run-test.sh, Makefile.am): New regression test suite for testing various states of the new queueing system
/external/dbus/bus/signals.c
|
51a4261d0ee74afbb95611e7474715a754db97bb |
|
29-Jul-2005 |
Havoc Pennington <hp@redhat.com> |
2005-07-29 Havoc Pennington <hp@redhat.com> * bus/signals.c (bus_signals_test): add match_rule_equal() tests (match_rule_matches): remove unused arg (test_matching): add tests for match_rule_matches() * bus/signals.c (bus_match_rule_parse_arg_match): add ability to do arg0='foo' arg5='bar' in the match rules (match_rule_matches): don't match if the arg0='foo' doesn't match. * dbus/dbus-protocol.h (DBUS_MAXIMUM_MATCH_RULE_ARG_NUMBER): add this
/external/dbus/bus/signals.c
|
248895207dc15914ac7970a6d1431308075dca1d |
|
17-Feb-2005 |
Colin Walters <walters@verbum.org> |
2005-02-17 Colin Walters <walters@verbum.org> * dbus/dbus-protocol.h (DBUS_SERVICE_ORG_FREEDESKTOP_DBUS): Rename to DBUS_SERVICE_DBUS. (DBUS_PATH_ORG_FREEDESKTOP_DBUS): Rename to DBUS_PATH_DBUS. (DBUS_PATH_ORG_FREEDESKTOP_LOCAL): Rename to DBUS_PATH_LOCAL. (DBUS_INTERFACE_ORG_FREEDESKTOP_DBUS): Rename to DBUS_INTERFACE_DBUS. (DBUS_INTERFACE_ORG_FREEDESKTOP_INTROSPECTABLE): Rename to DBUS_INTERFACE_INTROSPECTABLE. (DBUS_INTERFACE_ORG_FREEDESKTOP_PROPERTIES): Rename to DBUS_INTERFACE_PROPERTIES. (DBUS_INTERFACE_ORG_FREEDESKTOP_PEER): Rename to DBUS_INTERFACE_PEER. (DBUS_INTERFACE_ORG_FREEDESKTOP_LOCAL): DBUS_INTERFACE_LOCAL. All other users of those constants have been changed. * bus/driver.c (bus_driver_handle_introspect): Use constants. * glib/dbus-gobject.c (handle_introspect): Use constants. * doc/dbus-faq.xml, doc/dbus-specification.xml: Update for rename.
/external/dbus/bus/signals.c
|
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/bus/signals.c
|
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/bus/signals.c
|
73a69d496bb26356d684774cd1e98646a443c723 |
|
27-Sep-2004 |
Olivier Andrieu <oliv__a@users.sourceforge.net> |
* bus/signals.c (bus_match_rule_parse): validate the components of match rules (bug #1439). * dbus/dbus-bus.c (dbus_bus_add_match): add a missing OOM test.
/external/dbus/bus/signals.c
|
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/bus/signals.c
|
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/bus/signals.c
|
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/bus/signals.c
|
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/bus/signals.c
|
c1f0e189030ceb2bafea0bc30d6b72a0fa381ddc |
|
10-Oct-2003 |
Havoc Pennington <hp@redhat.com> |
2003-10-09 Havoc Pennington <hp@redhat.com> * 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
/external/dbus/bus/signals.c
|
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/bus/signals.c
|
52f275a7f43a78f981d0ccc85d5882ff4c356bdd |
|
24-Sep-2003 |
Havoc Pennington <hp@redhat.com> |
2003-09-23 Havoc Pennington <hp@redhat.com> * 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
/external/dbus/bus/signals.c
|
a683a80c409cc4f2e57ba6a3e60d52f91b8657d0 |
|
21-Sep-2003 |
Havoc Pennington <hp@redhat.com> |
2003-09-21 Havoc Pennington <hp@pobox.com> Get matching rules mostly working in the bus; only actually parsing the rule text remains. However, the client side of "signal connections" hasn't been started, this patch is only the bus side. * dbus/dispatch.c: fix for the matching rules changes * bus/driver.c (bus_driver_handle_remove_match) (bus_driver_handle_add_match): send an ack reply from these method calls * glib/dbus-gproxy.c (dbus_gproxy_begin_call): fix order of arguments, reported by Seth Nickell * bus/config-parser.c (append_rule_from_element): support eavesdrop=true|false attribute on policies so match rules can be prevented from snooping on the system bus. * bus/dbus-daemon-1.1.in: consistently use terminology "sender" and "destination" in attribute names; fix some docs bugs; add eavesdrop=true|false attribute * bus/driver.c (bus_driver_handle_add_match) (bus_driver_handle_remove_match): handle AddMatch, RemoveMatch messages * dbus/dbus-protocol.h (DBUS_SERVICE_ORG_FREEDESKTOP_BROADCAST): get rid of broadcast service concept, signals are just always broadcast * bus/signals.c, bus/dispatch.c, bus/connection.c, bus/bus.c: mostly implement matching rules stuff (currently only exposed as signal connections)
/external/dbus/bus/signals.c
|