]> git.meshlink.io Git - catta/blobdiff - avahi-core/iface.h
* Implement DNSServiceConstructFullName()
[catta] / avahi-core / iface.h
index 627e13dbbc2ba8a7f6b9fe82e13ffd4e83651e9e..25eb3247515483e6bba0b4f5dcf0993425df5baf 100644 (file)
@@ -38,6 +38,8 @@ typedef struct AvahiHwInterface AvahiHwInterface;
 #include "probe-sched.h"
 #include "dns.h"
 #include "announce.h"
+#include "browse.h"
+#include "querier.h"
 
 #define AVAHI_MAX_MAC_ADDRESS 32
 
@@ -70,7 +72,7 @@ struct AvahiHwInterface {
     uint8_t mac_address[AVAHI_MAX_MAC_ADDRESS];
     size_t mac_address_size;
 
-    AvahiEntryGroup *entry_group;
+    AvahiSEntryGroup *entry_group;
 
     AVAHI_LLIST_HEAD(AvahiInterface, interfaces);
 };
@@ -85,12 +87,16 @@ struct AvahiInterface {
     int announcing;
 
     AvahiCache *cache;
+
     AvahiQueryScheduler *query_scheduler;
     AvahiResponseScheduler * response_scheduler;
     AvahiProbeScheduler *probe_scheduler;
 
     AVAHI_LLIST_HEAD(AvahiInterfaceAddress, addresses);
     AVAHI_LLIST_HEAD(AvahiAnnouncement, announcements);
+
+    AvahiHashmap *queriers_by_key;
+    AVAHI_LLIST_HEAD(AvahiQuerier, queriers);
 };
 
 struct AvahiInterfaceAddress {
@@ -102,7 +108,7 @@ struct AvahiInterfaceAddress {
     unsigned char prefix_len;
     AvahiAddress address;
     
-    AvahiEntryGroup *entry_group;
+    AvahiSEntryGroup *entry_group;
     AvahiInterface *interface;
 };
 
@@ -138,4 +144,6 @@ int avahi_address_is_local(AvahiInterfaceMonitor *m, const AvahiAddress *a);
 
 int avahi_interface_address_on_link(AvahiInterface *i, const AvahiAddress *a);
 
+int avahi_interface_has_address(AvahiInterfaceMonitor *m, AvahiIfIndex iface, const AvahiAddress *a);
+
 #endif