summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorMaria Matejka <mq@ucw.cz>2022-05-30 17:27:03 +0200
committerMaria Matejka <mq@ucw.cz>2022-05-30 17:27:03 +0200
commit7b0c89a47fa1f63248ceaa1e9c1b3948dd29a68d (patch)
treea1be538eeac144479ba65e8f67d25e396abcc937 /lib
parent41508ceac3cdd74ca705d3bfc6a79464bf38e0b5 (diff)
parentf2e725a76882ba6b75c3ce4fb3c760bd83462410 (diff)
Merge commit 'f2e725a76882ba6b75c3ce4fb3c760bd83462410' into haugesund
Diffstat (limited to 'lib')
-rw-r--r--lib/ip.h4
-rw-r--r--lib/route.h5
2 files changed, 4 insertions, 5 deletions
diff --git a/lib/ip.h b/lib/ip.h
index 9eef2e16..8f975aba 100644
--- a/lib/ip.h
+++ b/lib/ip.h
@@ -363,10 +363,6 @@ static inline ip6_addr ip6_ntoh(ip6_addr a)
{ return _MI6(ntohl(_I0(a)), ntohl(_I1(a)), ntohl(_I2(a)), ntohl(_I3(a))); }
#define MPLS_MAX_LABEL_STACK 8
-typedef struct mpls_label_stack {
- uint len;
- u32 stack[MPLS_MAX_LABEL_STACK];
-} mpls_label_stack;
static inline int
mpls_get(const char *buf, int buflen, u32 *stack)
diff --git a/lib/route.h b/lib/route.h
index cfb08bbe..df648cf9 100644
--- a/lib/route.h
+++ b/lib/route.h
@@ -72,7 +72,6 @@ struct nexthop {
struct nexthop *next;
byte flags;
byte weight;
- byte labels_orig; /* Number of labels before hostentry was applied */
byte labels; /* Number of all labels */
u32 label[0];
};
@@ -316,6 +315,10 @@ extern struct ea_class ea_gen_source;
static inline u32 rt_get_source_attr(const rte *rt)
{ return ea_get_int(rt->attrs->eattrs, &ea_gen_source, 0); }
+/* MPLS labels: Use with a recursive nexthop specification
+ * to add additional labels to the resolved nexthop */
+extern struct ea_class ea_mpls_labels;
+
/* Next hop structures */
#define NEXTHOP_MAX_SIZE (sizeof(struct nexthop) + sizeof(u32)*MPLS_MAX_LABEL_STACK)