summaryrefslogtreecommitdiff
path: root/ospf6d/ospf6_interface.h
diff options
context:
space:
mode:
Diffstat (limited to 'ospf6d/ospf6_interface.h')
-rw-r--r--ospf6d/ospf6_interface.h19
1 files changed, 17 insertions, 2 deletions
diff --git a/ospf6d/ospf6_interface.h b/ospf6d/ospf6_interface.h
index 48b2cbff74..b5efca743e 100644
--- a/ospf6d/ospf6_interface.h
+++ b/ospf6d/ospf6_interface.h
@@ -39,6 +39,9 @@ struct ospf6_interface {
/* back pointer */
struct ospf6_area *area;
+ uint32_t area_id;
+ int area_id_format;
+
/* list of ospf6 neighbor */
struct list *neighbor_list;
@@ -53,6 +56,9 @@ struct ospf6_interface {
/* I/F transmission delay */
uint32_t transdelay;
+ /* Packet send buffer. */
+ struct ospf6_fifo *obuf; /* Output queue */
+
/* Network Type */
uint8_t type;
bool type_cfg;
@@ -115,6 +121,9 @@ struct ospf6_interface {
struct ospf6_route_table *route_connected;
+ /* last hello sent */
+ struct timeval last_hello;
+
/* prefix-list name to filter connected prefix */
char *plist_name;
@@ -127,6 +136,8 @@ struct ospf6_interface {
char *profile;
} bfd_config;
+ int on_write_q;
+
/* Statistics Fields */
uint32_t hello_in;
uint32_t hello_out;
@@ -177,6 +188,9 @@ extern const char *const ospf6_interface_state_str[];
/* Function Prototypes */
+extern void ospf6_interface_start(struct ospf6_interface *oi);
+extern void ospf6_interface_stop(struct ospf6_interface *oi);
+
extern struct ospf6_interface *
ospf6_interface_lookup_by_ifindex(ifindex_t, vrf_id_t vrf_id);
extern struct ospf6_interface *ospf6_interface_create(struct interface *);
@@ -185,10 +199,10 @@ extern void ospf6_interface_delete(struct ospf6_interface *);
extern void ospf6_interface_enable(struct ospf6_interface *);
extern void ospf6_interface_disable(struct ospf6_interface *);
-extern void ospf6_interface_if_add(struct interface *);
extern void ospf6_interface_state_update(struct interface *);
extern void ospf6_interface_connected_route_update(struct interface *);
-extern void ospf6_interface_connected_route_add(struct connected *);
+extern struct in6_addr *
+ospf6_interface_get_global_address(struct interface *ifp);
/* interface event */
extern int interface_up(struct thread *);
@@ -198,6 +212,7 @@ extern int backup_seen(struct thread *);
extern int neighbor_change(struct thread *);
extern void ospf6_interface_init(void);
+extern void ospf6_interface_clear(struct interface *ifp);
extern void install_element_ospf6_clear_interface(void);