summaryrefslogtreecommitdiff
path: root/ldpd/lde.h
diff options
context:
space:
mode:
authorDonald Sharp <sharpd@cumulusnetworks.com>2017-01-13 14:48:16 -0500
committerGitHub <noreply@github.com>2017-01-13 14:48:16 -0500
commit9aa7f43f7e7310c285f39a38ff36e1546c00058c (patch)
treecdcfdc0f188027cd77937c790895fc5926bb85dd /ldpd/lde.h
parent386ea4d526de953f3648dfa286f77e5b0a8eef12 (diff)
parentb6f1faf04596242329d8ecd95b732f1d396e7823 (diff)
Merge branch 'master' into cleanup
Diffstat (limited to 'ldpd/lde.h')
-rw-r--r--ldpd/lde.h9
1 files changed, 6 insertions, 3 deletions
diff --git a/ldpd/lde.h b/ldpd/lde.h
index 5f5d37defb..fe90b2c852 100644
--- a/ldpd/lde.h
+++ b/ldpd/lde.h
@@ -62,10 +62,13 @@ struct lde_req {
/* mapping entries */
struct lde_map {
struct fec fec;
- LIST_ENTRY(lde_map) entry;
+ struct lde_map_head *head; /* fec_node's upstream/downstream */
+ RB_ENTRY(lde_map) entry;
struct lde_nbr *nexthop;
struct map map;
};
+RB_HEAD(lde_map_head, lde_map);
+RB_PROTOTYPE(lde_map_head, lde_map, entry, lde_map_cmp);
/* withdraw entries */
struct lde_wdraw {
@@ -112,8 +115,8 @@ struct fec_node {
struct fec fec;
LIST_HEAD(, fec_nh) nexthops; /* fib nexthops */
- LIST_HEAD(, lde_map) downstream; /* recv mappings */
- LIST_HEAD(, lde_map) upstream; /* sent mappings */
+ struct lde_map_head downstream; /* recv mappings */
+ struct lde_map_head upstream; /* sent mappings */
uint32_t local_label;
void *data; /* fec specific data */