summaryrefslogtreecommitdiffstats
path: root/ffd/ffd.h
diff options
context:
space:
mode:
authorMatthias Schiffer <mschiffer@universe-factory.net>2012-10-21 00:13:59 +0200
committerMatthias Schiffer <mschiffer@universe-factory.net>2012-10-21 00:13:59 +0200
commita4986182dcad508c17a6eb8fd3e556f18cfaa349 (patch)
treea22547d59353d36edfc4e473c4032ed9f11b3603 /ffd/ffd.h
parentc3a0c36d3c935097ccc72d92581f0f2b7bc794a9 (diff)
downloadffd-a4986182dcad508c17a6eb8fd3e556f18cfaa349.tar
ffd-a4986182dcad508c17a6eb8fd3e556f18cfaa349.zip
Implement retransmits of important updates
Diffstat (limited to 'ffd/ffd.h')
-rw-r--r--ffd/ffd.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/ffd/ffd.h b/ffd/ffd.h
index edba710..748082f 100644
--- a/ffd/ffd.h
+++ b/ffd/ffd.h
@@ -51,6 +51,8 @@
#define FFD_MAINTENANCE_INTERVAL FFD_HELLO_INTERVAL
+#define FFD_DELAY (FFD_HELLO_INTERVAL/2)
+#define FFD_URGENT_DELAY 20
#define FFD_UPDATE_WITH_DATA 0x01
@@ -203,7 +205,11 @@ ffd_announce_t* ffd_announce_get(const ffd_node_id_t *node, uint16_t type, uint1
ffd_nexthop_t* ffd_announce_nexthop_find(const ffd_announce_t *announce, ffd_neigh_t *neigh);
ffd_nexthop_t* ffd_announce_nexthop_new(ffd_announce_t *announce, ffd_neigh_t *neigh);
bool ffd_announce_seqno_request(ffd_announce_t *announce, ffd_neigh_t *neigh, uint16_t seqno);
-void ffd_announce_seqno_request_free_list(ffd_announce_t *announce);
+void ffd_announce_free(ffd_announce_t *announce);
+
+void ffd_update_enqueue(const ffd_node_id_t *node, uint16_t type, uint16_t key, ffd_neigh_t *neigh, bool urgent);
+int ffd_update_timeout(void);
+void ffd_update_run(void);
void ffd_send_ack(ffd_neigh_t *neigh, uint16_t nonce);
void ffd_send_hellos(void);