summaryrefslogtreecommitdiff
path: root/zebra/rib.h
diff options
context:
space:
mode:
authorJosh Bailey <joshb@google.com>2012-03-22 01:09:21 -0700
committerAvneesh Sachdev <avneesh@opensourcerouting.org>2012-04-07 13:54:02 -0700
commit26e2ae362baf207d82e4c1ac76bc1c2b2df6ccaa (patch)
treee0d060875b5eab622244977e58b2445d55d6d240 /zebra/rib.h
parentd531050b7bf0f93d4d29a7a2f7b745641778b483 (diff)
zebra: read multipath routes and hw addr from netlink
* zebra/rt_netlink.c: - Pick up the hardware address of an interface when we receive a netlink link change message. Extract code for parsing the link-layer hardware address into a new function so we can reuse it. - netlink_routing_table(): Update to handle multipath routes. - netlink_route_change(): Update to handle multipath routes. Fix problem where the metric was not being read out. * zebra/zebra_rib.[ch]: Extern nexthop_ipv4_ifindex_add() -- it is now called from the netlink code. From: Josh Bailey <joshb@google.com> Signed-off-by: Avneesh Sachdev <avneesh@opensourcerouting.org> Signed-off-by: David Lamparter <equinox@diac24.net>
Diffstat (limited to 'zebra/rib.h')
-rw-r--r--zebra/rib.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/zebra/rib.h b/zebra/rib.h
index 887ed3c2..b5c9e052 100644
--- a/zebra/rib.h
+++ b/zebra/rib.h
@@ -225,6 +225,10 @@ extern struct nexthop *nexthop_ifname_add (struct rib *, char *);
extern struct nexthop *nexthop_blackhole_add (struct rib *);
extern struct nexthop *nexthop_ipv4_add (struct rib *, struct in_addr *,
struct in_addr *);
+extern struct nexthop *nexthop_ipv4_ifindex_add (struct rib *,
+ struct in_addr *,
+ struct in_addr *,
+ unsigned int);
extern void rib_lookup_and_dump (struct prefix_ipv4 *);
extern void rib_lookup_and_pushup (struct prefix_ipv4 *);
extern void rib_dump (const char *, const struct prefix_ipv4 *, const struct rib *);