summaryrefslogtreecommitdiff
path: root/nest
diff options
context:
space:
mode:
authorJan Moskyto Matejka <mq@ucw.cz>2016-06-07 11:46:07 +0200
committerJan Moskyto Matejka <mq@ucw.cz>2016-12-22 13:09:59 +0100
commit5b208e296fed0beddce16188478c5119df610d89 (patch)
treeee3fd6f6da6e0f4a469177408352f9d5762f572f /nest
parent4e276a8920ed0496836f002f144943ab42f120f6 (diff)
Removing (struct rta)->cast. Never used.
Diffstat (limited to 'nest')
-rw-r--r--nest/config.Y1
-rw-r--r--nest/route.h11
-rw-r--r--nest/rt-attr.c13
-rw-r--r--nest/rt-dev.c1
4 files changed, 10 insertions, 16 deletions
diff --git a/nest/config.Y b/nest/config.Y
index 95ce59cd..511936ef 100644
--- a/nest/config.Y
+++ b/nest/config.Y
@@ -78,7 +78,6 @@ CF_KEYWORDS(GRACEFUL, RESTART, WAIT, MAX, FLUSH, AS)
CF_ENUM(T_ENUM_RTS, RTS_, DUMMY, STATIC, INHERIT, DEVICE, STATIC_DEVICE, REDIRECT,
RIP, OSPF, OSPF_IA, OSPF_EXT1, OSPF_EXT2, BGP, PIPE, BABEL)
CF_ENUM(T_ENUM_SCOPE, SCOPE_, HOST, LINK, SITE, ORGANIZATION, UNIVERSE, UNDEFINED)
-CF_ENUM(T_ENUM_RTC, RTC_, UNICAST, BROADCAST, MULTICAST, ANYCAST)
CF_ENUM(T_ENUM_RTD, RTD_, UNICAST, BLACKHOLE, UNREACHABLE, PROHIBIT)
CF_ENUM(T_ENUM_ROA, ROA_, UNKNOWN, VALID, INVALID)
diff --git a/nest/route.h b/nest/route.h
index 37c9abfb..154e027e 100644
--- a/nest/route.h
+++ b/nest/route.h
@@ -358,13 +358,10 @@ typedef struct rta {
struct hostentry *hostentry; /* Hostentry for recursive next-hops */
ip_addr from; /* Advertising router */
u32 igp_metric; /* IGP metric to next hop (for iBGP routes) */
- u32 bf[0];
- u32 source:6; /* Route source (RTS_...) */
- u32 scope:6; /* Route scope (SCOPE_... -- see ip.h) */
- u32 cast:6; /* Casting type (RTC_...) */
- u32 dest:6; /* Route destination type (RTD_...) */
-// u32 eflags:8; /* Flags (RTAF_...) */
- u32 aflags:8;
+ u8 source; /* Route source (RTS_...) */
+ u8 scope; /* Route scope (SCOPE_... -- see ip.h) */
+ u8 dest; /* Route destination type (RTD_...) */
+ u8 aflags;
struct nexthop nh; /* Next hop */
} rta;
diff --git a/nest/rt-attr.c b/nest/rt-attr.c
index 0eacfe3f..e575ba4a 100644
--- a/nest/rt-attr.c
+++ b/nest/rt-attr.c
@@ -1008,7 +1008,9 @@ rta_hash(rta *a)
MIX(hostentry);
MIX(from);
MIX(igp_metric);
- mem_hash_mix(&h, a->bf, sizeof(u32));
+ MIX(source);
+ MIX(scope);
+ MIX(dest);
#undef MIX
return mem_hash_value(&h) ^ nexthop_hash(&(a->nh)) ^ ea_hash(a->eattrs);
@@ -1020,7 +1022,6 @@ rta_same(rta *x, rta *y)
return (x->src == y->src &&
x->source == y->source &&
x->scope == y->scope &&
- x->cast == y->cast &&
x->dest == y->dest &&
x->igp_metric == y->igp_metric &&
ipa_equal(x->nh.gw, y->nh.gw) &&
@@ -1163,11 +1164,10 @@ rta_dump(rta *a)
"RTS_STAT_DEV", "RTS_REDIR", "RTS_RIP",
"RTS_OSPF", "RTS_OSPF_IA", "RTS_OSPF_EXT1",
"RTS_OSPF_EXT2", "RTS_BGP", "RTS_PIPE", "RTS_BABEL" };
- static char *rtc[] = { "", " BC", " MC", " AC" };
static char *rtd[] = { "", " DEV", " HOLE", " UNREACH", " PROHIBIT" };
- debug("p=%s uc=%d %s %s%s%s h=%04x",
- a->src->proto->name, a->uc, rts[a->source], ip_scope_text(a->scope), rtc[a->cast],
+ debug("p=%s uc=%d %s %s%s h=%04x",
+ a->src->proto->name, a->uc, rts[a->source], ip_scope_text(a->scope),
rtd[a->dest], a->hash_key);
if (!(a->aflags & RTAF_CACHED))
debug(" !CACHED");
@@ -1213,10 +1213,9 @@ rta_show(struct cli *c, rta *a, ea_list *eal)
{
static char *src_names[] = { "dummy", "static", "inherit", "device", "static-device", "redirect",
"RIP", "OSPF", "OSPF-IA", "OSPF-E1", "OSPF-E2", "BGP", "pipe" };
- static char *cast_names[] = { "unicast", "broadcast", "multicast", "anycast" };
int i;
- cli_printf(c, -1008, "\tType: %s %s %s", src_names[a->source], cast_names[a->cast], ip_scope_text(a->scope));
+ cli_printf(c, -1008, "\tType: %s %s", src_names[a->source], ip_scope_text(a->scope));
if (!eal)
eal = a->eattrs;
for(; eal; eal=eal->next)
diff --git a/nest/rt-dev.c b/nest/rt-dev.c
index 43628af8..5edd1c5d 100644
--- a/nest/rt-dev.c
+++ b/nest/rt-dev.c
@@ -78,7 +78,6 @@ dev_ifa_notify(struct proto *P, uint flags, struct ifa *ad)
.src = src,
.source = RTS_DEVICE,
.scope = SCOPE_UNIVERSE,
- .cast = RTC_UNICAST,
.dest = RTD_UNICAST,
.nh = {
.iface = ad->iface