]> git.meshlink.io Git - catta/blobdiff - avahi-client/client.c
update python programs to new DBUS API
[catta] / avahi-client / client.c
index 93d768a85bef970558ccc8959fa57a1110f1991a..6df3e03446c68c4854532bb1550ddf52f8919646 100644 (file)
@@ -174,32 +174,67 @@ static DBusHandlerResult filter_func(DBusConnection *bus, DBusMessage *message,
         return avahi_domain_browser_event(client, AVAHI_BROWSER_NEW, message);
     else if (dbus_message_is_signal (message, AVAHI_DBUS_INTERFACE_DOMAIN_BROWSER, "ItemRemove")) 
         return avahi_domain_browser_event(client, AVAHI_BROWSER_REMOVE, message);
+    else if (dbus_message_is_signal (message, AVAHI_DBUS_INTERFACE_DOMAIN_BROWSER, "CacheExhausted")) 
+        return avahi_domain_browser_event(client, AVAHI_BROWSER_CACHE_EXHAUSTED, message);
+    else if (dbus_message_is_signal (message, AVAHI_DBUS_INTERFACE_DOMAIN_BROWSER, "AllForNow")) 
+        return avahi_domain_browser_event(client, AVAHI_BROWSER_ALL_FOR_NOW, message);
+    else if (dbus_message_is_signal (message, AVAHI_DBUS_INTERFACE_DOMAIN_BROWSER, "NotFound")) 
+        return avahi_domain_browser_event(client, AVAHI_BROWSER_NOT_FOUND, message);
+    else if (dbus_message_is_signal (message, AVAHI_DBUS_INTERFACE_DOMAIN_BROWSER, "Failure")) 
+        return avahi_domain_browser_event(client, AVAHI_BROWSER_FAILURE, message);
 
     else if (dbus_message_is_signal(message, AVAHI_DBUS_INTERFACE_SERVICE_TYPE_BROWSER, "ItemNew")) 
         return avahi_service_type_browser_event (client, AVAHI_BROWSER_NEW, message);
     else if (dbus_message_is_signal(message, AVAHI_DBUS_INTERFACE_SERVICE_TYPE_BROWSER, "ItemRemove")) 
         return avahi_service_type_browser_event (client, AVAHI_BROWSER_REMOVE, message);
+    else if (dbus_message_is_signal(message, AVAHI_DBUS_INTERFACE_SERVICE_TYPE_BROWSER, "CacheExhausted")) 
+        return avahi_service_type_browser_event (client, AVAHI_BROWSER_CACHE_EXHAUSTED, message);
+    else if (dbus_message_is_signal(message, AVAHI_DBUS_INTERFACE_SERVICE_TYPE_BROWSER, "AllForNow")) 
+        return avahi_service_type_browser_event (client, AVAHI_BROWSER_ALL_FOR_NOW, message);
+    else if (dbus_message_is_signal(message, AVAHI_DBUS_INTERFACE_SERVICE_TYPE_BROWSER, "NotFound")) 
+        return avahi_service_type_browser_event (client, AVAHI_BROWSER_NOT_FOUND, message);
+    else if (dbus_message_is_signal(message, AVAHI_DBUS_INTERFACE_SERVICE_TYPE_BROWSER, "Failure")) 
+        return avahi_service_type_browser_event (client, AVAHI_BROWSER_FAILURE, message);
 
     else if (dbus_message_is_signal(message, AVAHI_DBUS_INTERFACE_SERVICE_BROWSER, "ItemNew")) 
         return avahi_service_browser_event (client, AVAHI_BROWSER_NEW, message);
     else if (dbus_message_is_signal(message, AVAHI_DBUS_INTERFACE_SERVICE_BROWSER, "ItemRemove")) 
         return avahi_service_browser_event (client, AVAHI_BROWSER_REMOVE, message);
+    else if (dbus_message_is_signal(message, AVAHI_DBUS_INTERFACE_SERVICE_BROWSER, "CacheExhausted")) 
+        return avahi_service_browser_event (client, AVAHI_BROWSER_CACHE_EXHAUSTED, message);
+    else if (dbus_message_is_signal(message, AVAHI_DBUS_INTERFACE_SERVICE_BROWSER, "AllForNow")) 
+        return avahi_service_browser_event (client, AVAHI_BROWSER_ALL_FOR_NOW, message);
+    else if (dbus_message_is_signal(message, AVAHI_DBUS_INTERFACE_SERVICE_BROWSER, "NotFound")) 
+        return avahi_service_browser_event (client, AVAHI_BROWSER_NOT_FOUND, message);
+    else if (dbus_message_is_signal(message, AVAHI_DBUS_INTERFACE_SERVICE_BROWSER, "Failure")) 
+        return avahi_service_browser_event (client, AVAHI_BROWSER_FAILURE, message);
 
     else if (dbus_message_is_signal(message, AVAHI_DBUS_INTERFACE_SERVICE_RESOLVER, "Found")) 
         return avahi_service_resolver_event (client, AVAHI_RESOLVER_FOUND, message);
     else if (dbus_message_is_signal(message, AVAHI_DBUS_INTERFACE_SERVICE_RESOLVER, "Timeout")) 
         return avahi_service_resolver_event (client, AVAHI_RESOLVER_TIMEOUT, message);
+    else if (dbus_message_is_signal(message, AVAHI_DBUS_INTERFACE_SERVICE_RESOLVER, "NotFound")) 
+        return avahi_service_resolver_event (client, AVAHI_RESOLVER_NOT_FOUND, message);
+    else if (dbus_message_is_signal(message, AVAHI_DBUS_INTERFACE_SERVICE_RESOLVER, "Failure")) 
+        return avahi_service_resolver_event (client, AVAHI_RESOLVER_FAILURE, message);
 
     else if (dbus_message_is_signal(message, AVAHI_DBUS_INTERFACE_HOST_NAME_RESOLVER, "Found")) 
         return avahi_host_name_resolver_event (client, AVAHI_RESOLVER_FOUND, message);
     else if (dbus_message_is_signal(message, AVAHI_DBUS_INTERFACE_HOST_NAME_RESOLVER, "Timeout")) 
         return avahi_host_name_resolver_event (client, AVAHI_RESOLVER_TIMEOUT, message);
+    else if (dbus_message_is_signal(message, AVAHI_DBUS_INTERFACE_HOST_NAME_RESOLVER, "NotFound")) 
+        return avahi_host_name_resolver_event (client, AVAHI_RESOLVER_NOT_FOUND, message);
+    else if (dbus_message_is_signal(message, AVAHI_DBUS_INTERFACE_HOST_NAME_RESOLVER, "Failure")) 
+        return avahi_host_name_resolver_event (client, AVAHI_RESOLVER_FAILURE, message);
 
     else if (dbus_message_is_signal(message, AVAHI_DBUS_INTERFACE_ADDRESS_RESOLVER, "Found")) 
         return avahi_address_resolver_event (client, AVAHI_RESOLVER_FOUND, message);
     else if (dbus_message_is_signal(message, AVAHI_DBUS_INTERFACE_ADDRESS_RESOLVER, "Timeout")) 
         return avahi_address_resolver_event (client, AVAHI_RESOLVER_TIMEOUT, message);
-    
+    else if (dbus_message_is_signal(message, AVAHI_DBUS_INTERFACE_ADDRESS_RESOLVER, "NotFound")) 
+        return avahi_address_resolver_event (client, AVAHI_RESOLVER_NOT_FOUND, message);
+    else if (dbus_message_is_signal(message, AVAHI_DBUS_INTERFACE_ADDRESS_RESOLVER, "Failure")) 
+        return avahi_address_resolver_event (client, AVAHI_RESOLVER_FAILURE, message);
     
     return DBUS_HANDLER_RESULT_HANDLED;
 
@@ -363,6 +398,10 @@ AvahiClient *avahi_client_new(const AvahiPoll *poll_api, AvahiClientCallback cal
     if (!(dbus_bus_name_has_owner(client->bus, AVAHI_DBUS_NAME, &error)) ||
         dbus_error_is_set(&error)) {
 
+        /* We free the error so its not set, that way the fail target
+         * will return the NO_DAEMON error rather than a DBUS error */
+        dbus_error_free (&error);
+
         if (ret_error)
             *ret_error = AVAHI_ERR_NO_DAEMON;