]> git.meshlink.io Git - catta/blobdiff - avahi-client/internal.h
Fix compilation with -pthread
[catta] / avahi-client / internal.h
index c9c9dc7497f0642cba064c691dca765c9b61d767..7a79dd7337628c34bdc73f2c5ceca21cfffb7ec8 100644 (file)
@@ -33,6 +33,7 @@ struct AvahiClient {
     DBusConnection *bus;
     int error;
     AvahiClientState state;
+    AvahiClientFlags flags;
 
     /* Cache for some seldom changing server data */
     char *version_string, *host_name, *host_name_fqdn, *domain_name;
@@ -49,6 +50,7 @@ struct AvahiClient {
     AVAHI_LLIST_HEAD(AvahiServiceResolver, service_resolvers);
     AVAHI_LLIST_HEAD(AvahiHostNameResolver, host_name_resolvers);
     AVAHI_LLIST_HEAD(AvahiAddressResolver, address_resolvers);
+    AVAHI_LLIST_HEAD(AvahiRecordBrowser, record_browsers);
 };
 
 struct AvahiEntryGroup {
@@ -61,6 +63,8 @@ struct AvahiEntryGroup {
 };
 
 struct AvahiDomainBrowser {
+    int ref;
+    
     char *path;
     AvahiClient *client;
     AvahiDomainBrowserCallback callback;
@@ -69,6 +73,10 @@ struct AvahiDomainBrowser {
 
     AvahiIfIndex interface;
     AvahiProtocol protocol;
+
+    AvahiTimeout *defer_timeout;
+
+    AvahiStringList *static_browse_domains;
 };
 
 struct AvahiServiceBrowser {
@@ -131,6 +139,19 @@ struct AvahiAddressResolver {
     AvahiProtocol protocol;
 };
 
+struct AvahiRecordBrowser {
+    char *path;
+    AvahiClient *client;
+    AvahiRecordBrowserCallback callback;
+    void *userdata;
+    AVAHI_LLIST_FIELDS(AvahiRecordBrowser, record_browsers);
+
+    char *name;
+    uint16_t clazz, type;
+    AvahiIfIndex interface;
+    AvahiProtocol protocol;
+};
+
 int avahi_client_set_errno (AvahiClient *client, int error);
 int avahi_client_set_dbus_error(AvahiClient *client, DBusError *error);
 
@@ -139,6 +160,7 @@ void avahi_entry_group_set_state(AvahiEntryGroup *group, AvahiEntryGroupState st
 DBusHandlerResult avahi_domain_browser_event (AvahiClient *client, AvahiBrowserEvent event, DBusMessage *message);
 DBusHandlerResult avahi_service_type_browser_event (AvahiClient *client, AvahiBrowserEvent event, DBusMessage *message);
 DBusHandlerResult avahi_service_browser_event (AvahiClient *client, AvahiBrowserEvent event, DBusMessage *message);
+DBusHandlerResult avahi_record_browser_event(AvahiClient *client, AvahiBrowserEvent event, DBusMessage *message);
 
 DBusHandlerResult avahi_service_resolver_event (AvahiClient *client, AvahiResolverEvent event, DBusMessage *message);
 DBusHandlerResult avahi_host_name_resolver_event (AvahiClient *client, AvahiResolverEvent event, DBusMessage *message);
@@ -146,4 +168,6 @@ DBusHandlerResult avahi_address_resolver_event (AvahiClient *client, AvahiResolv
 
 int avahi_client_simple_method_call(AvahiClient *client, const char *path, const char *interface, const char *method);
 
+int avahi_client_is_connected(AvahiClient *client);
+
 #endif