diff options
author | Ryan Lortie <desrt@desrt.ca> | 2007-09-20 13:04:38 -0400 |
---|---|---|
committer | Ryan Lortie <desrt@desrt.ca> | 2007-09-20 13:04:38 -0400 |
commit | f6ec4a80abbfd4e4f4969747c39e625b2689df08 (patch) | |
tree | 1500ff660a14b0ffd1d5f797d42e8fc322e1933c /bus/signals.h | |
parent | 8c6b0ab3f7e437362112eeaf83a566475b85d27c (diff) |
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.
Diffstat (limited to 'bus/signals.h')
-rw-r--r-- | bus/signals.h | 31 |
1 files changed, 16 insertions, 15 deletions
diff --git a/bus/signals.h b/bus/signals.h index ca74dc99..ab3c33aa 100644 --- a/bus/signals.h +++ b/bus/signals.h @@ -44,21 +44,22 @@ BusMatchRule* bus_match_rule_new (DBusConnection *matches_go_to); BusMatchRule* bus_match_rule_ref (BusMatchRule *rule); void bus_match_rule_unref (BusMatchRule *rule); -dbus_bool_t bus_match_rule_set_message_type (BusMatchRule *rule, - int type); -dbus_bool_t bus_match_rule_set_interface (BusMatchRule *rule, - const char *interface); -dbus_bool_t bus_match_rule_set_member (BusMatchRule *rule, - const char *member); -dbus_bool_t bus_match_rule_set_sender (BusMatchRule *rule, - const char *sender); -dbus_bool_t bus_match_rule_set_destination (BusMatchRule *rule, - const char *destination); -dbus_bool_t bus_match_rule_set_path (BusMatchRule *rule, - const char *path); -dbus_bool_t bus_match_rule_set_arg (BusMatchRule *rule, - int arg, - const char *value); +dbus_bool_t bus_match_rule_set_message_type (BusMatchRule *rule, + int type); +dbus_bool_t bus_match_rule_set_interface (BusMatchRule *rule, + const char *interface); +dbus_bool_t bus_match_rule_set_member (BusMatchRule *rule, + const char *member); +dbus_bool_t bus_match_rule_set_sender (BusMatchRule *rule, + const char *sender); +dbus_bool_t bus_match_rule_set_destination (BusMatchRule *rule, + const char *destination); +dbus_bool_t bus_match_rule_set_path (BusMatchRule *rule, + const char *path); +dbus_bool_t bus_match_rule_set_arg (BusMatchRule *rule, + int arg, + const DBusString *value, + dbus_bool_t is_path); BusMatchRule* bus_match_rule_parse (DBusConnection *matches_go_to, const DBusString *rule_text, |