summaryrefslogtreecommitdiffstats
path: root/ospfd/ospf_bfd.h
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-09 13:16:35 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-09 13:16:35 +0000
commite2bbf175a2184bd76f6c54ccf8456babeb1a46fc (patch)
treef0b76550d6e6f500ada964a3a4ee933a45e5a6f1 /ospfd/ospf_bfd.h
parentInitial commit. (diff)
downloadfrr-e2bbf175a2184bd76f6c54ccf8456babeb1a46fc.tar.xz
frr-e2bbf175a2184bd76f6c54ccf8456babeb1a46fc.zip
Adding upstream version 9.1.upstream/9.1
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'ospfd/ospf_bfd.h')
-rw-r--r--ospfd/ospf_bfd.h41
1 files changed, 41 insertions, 0 deletions
diff --git a/ospfd/ospf_bfd.h b/ospfd/ospf_bfd.h
new file mode 100644
index 0000000..d454f9c
--- /dev/null
+++ b/ospfd/ospf_bfd.h
@@ -0,0 +1,41 @@
+// SPDX-License-Identifier: GPL-2.0-or-later
+/**
+ * ospf_bfd.h: OSPF BFD definitions and structures
+ *
+ * @copyright Copyright (C) 2015 Cumulus Networks, Inc.
+ */
+
+#ifndef _ZEBRA_OSPF_BFD_H
+#define _ZEBRA_OSPF_BFD_H
+
+#include "ospfd/ospf_interface.h"
+#include "json.h"
+
+extern void ospf_bfd_init(struct event_loop *tm);
+
+extern void ospf_bfd_write_config(struct vty *vty,
+ const struct ospf_if_params *params);
+
+extern void ospf_bfd_trigger_event(struct ospf_neighbor *nbr, int old_state,
+ int state);
+
+/**
+ * Legacy information: it is the peers who actually have this information
+ * and the protocol should not need to know about timers.
+ */
+extern void ospf_interface_bfd_show(struct vty *vty,
+ const struct interface *ifp,
+ struct json_object *json);
+
+/**
+ * Disables interface BFD configuration and remove settings from all peers.
+ */
+extern void ospf_interface_disable_bfd(struct interface *ifp,
+ struct ospf_if_params *oip);
+
+/**
+ * Create/update BFD session for this OSPF neighbor.
+ */
+extern void ospf_neighbor_bfd_apply(struct ospf_neighbor *nbr);
+
+#endif /* _ZEBRA_OSPF_BFD_H */