summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoakim Tjernlund <Joakim.Tjernlund@transmode.se>2012-07-07 17:06:13 +0200
committerDavid Lamparter <equinox@opensourcerouting.org>2012-07-25 18:07:44 +0200
commitc963c20346c0e3cd75735b88beded98389607cd5 (patch)
tree24973f9f7859e03fafdbaec0921d5c279597a1f2
parent57c639f01ec6be70ac858f412d32b638a9756bed (diff)
zebra: Add support for ZEBRA_NEXTHOP_IPV4_IFINDEX
Actually implement the IPV4_IFINDEX nexthop type that has been drifting around as a definition forever (without any warning about it being a placeholder). Signed-off-by: Joakim Tjernlund <Joakim.Tjernlund@transmode.se> Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
-rw-r--r--zebra/zserv.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/zebra/zserv.c b/zebra/zserv.c
index 09152170..9e47f23f 100644
--- a/zebra/zserv.c
+++ b/zebra/zserv.c
@@ -775,6 +775,11 @@ zread_ipv4_add (struct zserv *client, u_short length)
nexthop.s_addr = stream_get_ipv4 (s);
nexthop_ipv4_add (rib, &nexthop, NULL);
break;
+ case ZEBRA_NEXTHOP_IPV4_IFINDEX:
+ nexthop.s_addr = stream_get_ipv4 (s);
+ ifindex = stream_getl (s);
+ nexthop_ipv4_ifindex_add (rib, &nexthop, NULL, ifindex);
+ break;
case ZEBRA_NEXTHOP_IPV6:
stream_forward_getp (s, IPV6_MAX_BYTELEN);
break;
@@ -852,6 +857,10 @@ zread_ipv4_delete (struct zserv *client, u_short length)
nexthop.s_addr = stream_get_ipv4 (s);
nexthop_p = &nexthop;
break;
+ case ZEBRA_NEXTHOP_IPV4_IFINDEX:
+ nexthop.s_addr = stream_get_ipv4 (s);
+ ifindex = stream_getl (s);
+ break;
case ZEBRA_NEXTHOP_IPV6:
stream_forward_getp (s, IPV6_MAX_BYTELEN);
break;