summaryrefslogtreecommitdiff
path: root/isisd/isis_spf.h
diff options
context:
space:
mode:
authorChristian Franke <chris@opensourcerouting.org>2017-04-27 12:54:21 +0200
committerChristian Franke <chris@opensourcerouting.org>2017-04-28 12:03:23 +0200
commit1b49e4f0ba4073821701cb339bde94055d3b5786 (patch)
tree026c9386b0c51b7f4d5baaf5875a7048406859b4 /isisd/isis_spf.h
parent795c08fc9e07a316731e1a78123c67378458a661 (diff)
isisd: do some cleanup on the spf implementation
Signed-off-by: Christian Franke <chris@opensourcerouting.org>
Diffstat (limited to 'isisd/isis_spf.h')
-rw-r--r--isisd/isis_spf.h9
1 files changed, 7 insertions, 2 deletions
diff --git a/isisd/isis_spf.h b/isisd/isis_spf.h
index fb534542d0..64582c62c9 100644
--- a/isisd/isis_spf.h
+++ b/isisd/isis_spf.h
@@ -38,6 +38,10 @@ enum vertextype
VTYPE_IP6REACH_EXTERNAL
};
+#define VTYPE_IS(t) ((t) >= VTYPE_PSEUDO_IS && (t) <= VTYPE_NONPSEUDO_TE_IS)
+#define VTYPE_ES(t) ((t) == VTYPE_ES)
+#define VTYPE_IP(t) ((t) >= VTYPE_IPREACH_INTERNAL && (t) <= VTYPE_IP6REACH_EXTERNAL)
+
/*
* Triple <N, d(N), {Adj(N)}>
*/
@@ -66,12 +70,13 @@ struct isis_spftree
unsigned int runcount; /* number of runs since uptime */
time_t last_run_timestamp; /* last run timestamp for scheduling */
time_t last_run_duration; /* last run duration in msec */
+
+ int family;
+ int level;
};
struct isis_spftree * isis_spftree_new (struct isis_area *area);
void isis_spftree_del (struct isis_spftree *spftree);
-void isis_spftree_adj_del (struct isis_spftree *spftree,
- struct isis_adjacency *adj);
void spftree_area_init (struct isis_area *area);
void spftree_area_del (struct isis_area *area);
void spftree_area_adj_del (struct isis_area *area,