summaryrefslogtreecommitdiffstats
path: root/ospf6d/ospf6_neighbor.h
diff options
context:
space:
mode:
authorDavid Lamparter <equinox@opensourcerouting.org>2014-03-18 17:04:25 +0100
committerDavid Lamparter <equinox@opensourcerouting.org>2014-03-18 17:04:25 +0100
commite708ed69aa0b993527f48b1f31b645c00750927f (patch)
tree8f33d73b2a85b51c042318d58a1750eeb8019616 /ospf6d/ospf6_neighbor.h
parenta11e012e8661629d665e992e765741a5eaa7d017 (diff)
parent424cc3bd48da0f417c9056c5c2ade697a3386cd4 (diff)
downloadquagga-e708ed69aa0b993527f48b1f31b645c00750927f.tar.bz2
quagga-e708ed69aa0b993527f48b1f31b645c00750927f.tar.xz
Merge volatile/cumulus_ospf6d
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
Diffstat (limited to 'ospf6d/ospf6_neighbor.h')
-rw-r--r--ospf6d/ospf6_neighbor.h41
1 files changed, 41 insertions, 0 deletions
diff --git a/ospf6d/ospf6_neighbor.h b/ospf6d/ospf6_neighbor.h
index 5f46c6f3..88821898 100644
--- a/ospf6d/ospf6_neighbor.h
+++ b/ospf6d/ospf6_neighbor.h
@@ -86,6 +86,8 @@ struct ospf6_neighbor
struct ospf6_lsdb *lsupdate_list;
struct ospf6_lsdb *lsack_list;
+ struct ospf6_lsa *last_ls_req;
+
/* Inactivity timer */
struct thread *inactivity_timer;
@@ -106,6 +108,44 @@ struct ospf6_neighbor
#define OSPF6_NEIGHBOR_LOADING 7
#define OSPF6_NEIGHBOR_FULL 8
+/* Neighbor Events */
+#define OSPF6_NEIGHBOR_EVENT_NO_EVENT 0
+#define OSPF6_NEIGHBOR_EVENT_HELLO_RCVD 1
+#define OSPF6_NEIGHBOR_EVENT_TWOWAY_RCVD 2
+#define OSPF6_NEIGHBOR_EVENT_NEGOTIATION_DONE 3
+#define OSPF6_NEIGHBOR_EVENT_EXCHANGE_DONE 4
+#define OSPF6_NEIGHBOR_EVENT_LOADING_DONE 5
+#define OSPF6_NEIGHBOR_EVENT_ADJ_OK 6
+#define OSPF6_NEIGHBOR_EVENT_SEQNUMBER_MISMATCH 7
+#define OSPF6_NEIGHBOR_EVENT_BAD_LSREQ 8
+#define OSPF6_NEIGHBOR_EVENT_ONEWAY_RCVD 9
+#define OSPF6_NEIGHBOR_EVENT_INACTIVITY_TIMER 10
+#define OSPF6_NEIGHBOR_EVENT_MAX_EVENT 11
+
+static const char *ospf6_neighbor_event_str[] =
+ {
+ "NoEvent",
+ "HelloReceived",
+ "2-WayReceived",
+ "NegotiationDone",
+ "ExchangeDone",
+ "LoadingDone",
+ "AdjOK?",
+ "SeqNumberMismatch",
+ "BadLSReq",
+ "1-WayReceived",
+ "InactivityTimer",
+ };
+
+static const char *ospf6_neighbor_event_string (int event)
+{
+ #define OSPF6_NEIGHBOR_UNKNOWN_EVENT_STRING "UnknownEvent"
+
+ if (event < OSPF6_NEIGHBOR_EVENT_MAX_EVENT)
+ return ospf6_neighbor_event_str[event];
+ return OSPF6_NEIGHBOR_UNKNOWN_EVENT_STRING;
+}
+
extern const char *ospf6_neighbor_state_str[];
@@ -130,6 +170,7 @@ extern int seqnumber_mismatch (struct thread *);
extern int bad_lsreq (struct thread *);
extern int oneway_received (struct thread *);
extern int inactivity_timer (struct thread *);
+extern void ospf6_check_nbr_loading (struct ospf6_neighbor *);
extern void ospf6_neighbor_init (void);
extern int config_write_ospf6_debug_neighbor (struct vty *vty);