summaryrefslogtreecommitdiffstats
path: root/ffd/ffd.h
diff options
context:
space:
mode:
Diffstat (limited to 'ffd/ffd.h')
-rw-r--r--ffd/ffd.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/ffd/ffd.h b/ffd/ffd.h
index 42d679c..b78f7af 100644
--- a/ffd/ffd.h
+++ b/ffd/ffd.h
@@ -53,6 +53,7 @@
#define FFD_DELAY (FFD_HELLO_INTERVAL/2)
#define FFD_URGENT_DELAY 20
+#define FFD_ACK_INTERVAL FFD_URGENT_DELAY
#define FFD_UPDATE_WITH_DATA 0x01
@@ -207,6 +208,11 @@ ffd_nexthop_t* ffd_announce_nexthop_new(ffd_announce_t *announce, ffd_neigh_t *n
bool ffd_announce_seqno_request(ffd_announce_t *announce, ffd_neigh_t *neigh, uint16_t seqno);
void ffd_announce_free(ffd_announce_t *announce);
+void ffd_ack_handle(uint16_t n);
+void ffd_ack_request(void (*cb)(uint16_t nonce, void *arg), unsigned interval, unsigned retries, void *arg);
+int ffd_ack_timeout(void);
+void ffd_ack_run(void);
+
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);