summaryrefslogtreecommitdiffstats
path: root/avahi-client/client.c
diff options
context:
space:
mode:
authorTrent Lloyd <lathiat@bur.st>2005-08-11 14:04:13 +0000
committerTrent Lloyd <lathiat@bur.st>2005-08-11 14:04:13 +0000
commitfde1c3d1a0156f0e06a819cc0958ec077a88c8c6 (patch)
treec91048a04a4f4fe30c214f318a7d03b1cd447b84 /avahi-client/client.c
parent7231641e5c53a9d1c255e06a7a134fa60a919f88 (diff)
* Add DomainBrowser support to C client API
git-svn-id: file:///home/lennart/svn/public/avahi/trunk@289 941a03a8-eaeb-0310-b9a0-b1bbd8fe43fe
Diffstat (limited to 'avahi-client/client.c')
-rw-r--r--avahi-client/client.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/avahi-client/client.c b/avahi-client/client.c
index 43b9fc1..485444c 100644
--- a/avahi-client/client.c
+++ b/avahi-client/client.c
@@ -158,28 +158,27 @@ filter_func (DBusConnection *bus, DBusMessage *message, void *data)
break;
}
}
-
+
if (group == NULL)
{
fprintf (stderr, "Received state change for unknown EntryGroup object (%s)\n", path);
} else {
int state;
DBusError error;
-
dbus_error_init (&error);
-
dbus_message_get_args (message, &error, DBUS_TYPE_INT32, &state, DBUS_TYPE_INVALID);
-
if (dbus_error_is_set (&error))
{
fprintf (stderr, "internal error parsing entrygroup statechange for %s\n", group->path);
goto out;
}
-
printf ("statechange (%s) to %d\n", group->path, state);
-
avahi_entry_group_state_change (group, state);
}
+ } else if (dbus_message_is_signal (message, AVAHI_DBUS_INTERFACE_DOMAIN_BROWSER, "ItemNew")) {
+ return avahi_entry_group_event (client, AVAHI_BROWSER_NEW, message);
+ } else if (dbus_message_is_signal (message, AVAHI_DBUS_INTERFACE_DOMAIN_BROWSER, "ItemRemove")) {
+ return avahi_entry_group_event (client, AVAHI_BROWSER_REMOVE, message);
}
return DBUS_HANDLER_RESULT_HANDLED;
@@ -200,6 +199,7 @@ avahi_client_new (AvahiClientCallback callback, void *user_data)
goto fail;
AVAHI_LLIST_HEAD_INIT(AvahiEntryGroup, tmp->groups);
+ AVAHI_LLIST_HEAD_INIT(AvahiDomainBrowser, tmp->domain_browsers);
dbus_error_init (&error);