summaryrefslogtreecommitdiffstats
path: root/avahi-common/defs.h
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2005-09-25 20:12:40 +0000
committerLennart Poettering <lennart@poettering.net>2005-09-25 20:12:40 +0000
commit1ffedb586bd2fb6daa3970304fac7c5b415cd38f (patch)
treef084dcd2594490b7e95ab026ad2efeaeab3f998a /avahi-common/defs.h
parent5867849876e19996fd05a0d4917cb739904519c1 (diff)
* split off lookup.h and publish.h from core.h
* implement wide-area DNS-SD * if multiple clients query the same records, only start the query packet sequence once * implement recursive CNAME queries * add support for resolving services without TXT or A/AAAA records * enlarge resolving timeouts to 5s * implement new browse/resolving events CACHE_EXHAUSTED/ALL_FOR_NOW * add support for resolving services without name. (i.e. for normal SRV records) git-svn-id: file:///home/lennart/svn/public/avahi/trunk@608 941a03a8-eaeb-0310-b9a0-b1bbd8fe43fe
Diffstat (limited to 'avahi-common/defs.h')
-rw-r--r--avahi-common/defs.h31
1 files changed, 27 insertions, 4 deletions
diff --git a/avahi-common/defs.h b/avahi-common/defs.h
index b973b0c..6578e2c 100644
--- a/avahi-common/defs.h
+++ b/avahi-common/defs.h
@@ -152,16 +152,39 @@ typedef enum {
AVAHI_DOMAIN_BROWSER_MAX
} AvahiDomainBrowserType;
+/** Some flags for lookup functions */
+typedef enum {
+ AVAHI_LOOKUP_NULL = 0,
+ AVAHI_LOOKUP_USE_WIDE_AREA = 1, /**< Force lookup via wide area DNS */
+ AVAHI_LOOKUP_USE_MULTICAST = 2, /**< Force lookup via multicast DNS */
+ AVAHI_LOOKUP_NO_TXT = 4, /**< When doing service resolving, don't lookup TXT record */
+ AVAHI_LOOKUP_NO_ADDRESS = 8 /**< When doing service resolving, don't lookup A/AAAA record */
+} AvahiLookupFlags;
+
+/** Some flags for lookup callback functions */
+typedef enum {
+ AVAHI_LOOKUP_CALLBACK_NULL = 0,
+ AVAHI_LOOKUP_CALLBACK_CACHED = 1, /**< This response originates from the cache */
+ AVAHI_LOOKUP_CALLBACK_WIDE_AREA = 2, /**< This response originates from wide area DNS */
+ AVAHI_LOOKUP_CALLBACK_MULTICAST = 4, /**< This response originates from multicast DNS */
+} AvahiLookupResultFlags;
+
/** Type of callback event when browsing */
typedef enum {
- AVAHI_BROWSER_NEW, /**< The object is new on the network */
- AVAHI_BROWSER_REMOVE /**< The object has been removed from the network */
+ AVAHI_BROWSER_NEW, /**< The object is new on the network */
+ AVAHI_BROWSER_REMOVE, /**< The object has been removed from the network */
+ AVAHI_BROWSER_CACHE_EXHAUSTED, /**< One-time event, to notify the user that all entries from the caches have been send */
+ AVAHI_BROWSER_ALL_FOR_NOW, /**< One-time event, to notify the user that more records will probably not show up in the near future, i.e. all cache entries have been read and all static servers been queried */
+ AVAHI_BROWSER_NOT_FOUND, /**< Issued when using wide area DNS-SD to inform that a record is not existing */
+ AVAHI_BROWSER_FAILURE /**< Issued when using wide area DNS-SD to inform about server failures */
} AvahiBrowserEvent;
/** Type of callback event when resolving */
typedef enum {
- AVAHI_RESOLVER_FOUND, /**< RR found, resolving successful */
- AVAHI_RESOLVER_TIMEOUT /**< Noone responded within the timeout, resolving failed */
+ AVAHI_RESOLVER_FOUND, /**< RR found, resolving successful */
+ AVAHI_RESOLVER_TIMEOUT, /**< Noone responded within the timeout, resolving failed */
+ AVAHI_RESOLVER_NOT_FOUND, /**< Query was done using wide area DNS-SD and the server told us that the entry is nto available */
+ AVAHI_RESOLVER_FAILURE, /**< Query was done using wide area DNS-SD and the server failed */
} AvahiResolverEvent;
/** States of a server object */