]> git.meshlink.io Git - catta/blobdiff - avahi-core/announce.h
Make the poof algorithm only positive if 4 unanswered queries each
[catta] / avahi-core / announce.h
index 71b2f034a32451ac1abf11f1591349d53c039525..3a8bcf351cbc3421009b733c4a168fff15ee5f82 100644 (file)
   USA.
 ***/
 
-#include <glib.h>
+typedef struct AvahiAnnouncer AvahiAnnouncer;
 
-typedef struct _AvahiAnnouncement AvahiAnnouncement;
-
-#include "llist.h"
+#include <avahi-common/llist.h>
 #include "iface.h"
-#include "server.h"
+#include "internal.h"
 #include "timeeventq.h"
+#include "publish.h"
 
 typedef enum {
-    AVAHI_PROBING,
+    AVAHI_PROBING,         /* probing phase */
     AVAHI_WAITING,         /* wait for other records in group */
-    AVAHI_ANNOUNCING,
-    AVAHI_ESTABLISHED
-} AvahiAnnouncementState;
+    AVAHI_ANNOUNCING,      /* announcing phase */
+    AVAHI_ESTABLISHED      /* we'e established */
+} AvahiAnnouncerState;
 
-struct _AvahiAnnouncement {
+struct AvahiAnnouncer {
     AvahiServer *server;
     AvahiInterface *interface;
     AvahiEntry *entry;
 
     AvahiTimeEvent *time_event;
 
-    AvahiAnnouncementState state;
-    guint n_iteration;
-    guint sec_delay;
+    AvahiAnnouncerState state;
+    unsigned n_iteration;
+    unsigned sec_delay;
 
-    AVAHI_LLIST_FIELDS(AvahiAnnouncement, by_interface);
-    AVAHI_LLIST_FIELDS(AvahiAnnouncement, by_entry);
+    AVAHI_LLIST_FIELDS(AvahiAnnouncer, by_interface);
+    AVAHI_LLIST_FIELDS(AvahiAnnouncer, by_entry);
 };
 
 void avahi_announce_interface(AvahiServer *s, AvahiInterface *i);
 void avahi_announce_entry(AvahiServer *s, AvahiEntry *e);
-void avahi_announce_group(AvahiServer *s, AvahiEntryGroup *g);
+void avahi_announce_group(AvahiServer *s, AvahiSEntryGroup *g);
 
-void avahi_entry_group_check_probed(AvahiEntryGroup *g, gboolean immediately);
+void avahi_entry_return_to_initial_state(AvahiServer *s, AvahiEntry *e, AvahiInterface *i);
 
-gboolean avahi_entry_registered(AvahiServer *s, AvahiEntry *e, AvahiInterface *i);
-gboolean avahi_entry_registering(AvahiServer *s, AvahiEntry *e, AvahiInterface *i);
+void avahi_s_entry_group_check_probed(AvahiSEntryGroup *g, int immediately);
 
-void avahi_goodbye_interface(AvahiServer *s, AvahiInterface *i, gboolean send);
-void avahi_goodbye_entry(AvahiServer *s, AvahiEntry *e, gboolean send);
+int avahi_entry_is_registered(AvahiServer *s, AvahiEntry *e, AvahiInterface *i);
+int avahi_entry_is_probing(AvahiServer *s, AvahiEntry *e, AvahiInterface *i);
 
-void avahi_goodbye_all(AvahiServer *s, gboolean send);
+void avahi_goodbye_interface(AvahiServer *s, AvahiInterface *i, int send_goodbye, int rem);
+void avahi_goodbye_entry(AvahiServer *s, AvahiEntry *e, int send_goodbye, int rem);
 
-AvahiAnnouncement *avahi_get_announcement(AvahiServer *s, AvahiEntry *e, AvahiInterface *i);
+void avahi_reannounce_entry(AvahiServer *s, AvahiEntry *e);
 
 #endif